Я использую платформу инфраструктуры, состоящую из контейнеров докеров, работающих на хосте CentOS.
Каждый раз. мы обновляем нашу сборку, создаются новые контейнеры и удаляются старые контейнеры. Проблема в том, что контейнеры удаляются мгновенно, независимо от существующих запросов, обслуживаемых контейнерами. В идеале у меня должен быть сигнал, чтобы пометить контейнеры в режиме обслуживания или слива, чтобы существующие соединения можно было обслуживать, а затем изящно удалять сначала из haproxy, а затем физически.
Кто-нибудь сталкивался с этой проблемой раньше или выполнял аналогичный рабочий процесс автомасштабирования через контейнеры.
Насколько я понимаю, что вы спрашиваете, вы контролируете все этапы этого процесса и хотите создавать новые версии контейнерного приложения, которые работают за HAProxy, не прерывая подключения клиентов к старые приложения, но предотвращение новых подключений.
Похоже, это хорошее использование команды HAProxy disable server .
У вас должна быть возможность отключить устаревшие серверы, пометив их как отключенные для обслуживания в HAProxy, который должен изящно позволить клиентам завершить свой бизнес, тогда ваш консул / магия HAProxy сможет подключить новые серверы.