Разорваны ли живые соединения на лазурном при выполнении сине-зеленого развертывания?

Я развертываю свои java rest services в службах приложений Azure, я пытаюсь понять сине-зеленое развертывание на лазурном, я прочитал этот официальный блог на Azure Blue Green: https://%20https://azure.microsoft.com/en-in/blog/blue-green-deployments-using-azure-traffic-manager/

Первоначальная идея у меня возникла, но что, если на синем экземпляре много активных подключений, а на зеленом экземпляре развернут новый код, и после проверки работоспособности мы меняем местами синий на зеленый. Если есть какое-либо активное соединение на синем, оно умрет или будет удерживаться до тех пор, пока не будет служить значимый полный ответ от конечной службы

Из подкачки я имею в виду кнопку управления под названием Swap, доступную в службах приложений Azure. Меня больше всего беспокоит, будут ли какие-либо данные потеряны во время обмена, когда есть живое соединение


person focode    schedule 22.05.2019    source источник


Ответы (1)


Никакие существующие запросы не будут прекращены или затронуты каким-либо образом. В самой статье рассказывается о том, как постепенно переводить трафик с одного синего на зеленый. Он не прерывает запросы внезапно.

Я думаю, что эта часть вызывает некоторую путаницу:

мы меняем местами синий на зеленый

Обмен - это не деструктивная операция, когда вы убиваете один экземпляр и начинаете использовать другой. Свопинг просто указывает диспетчеру трафика указать на другой IP-адрес. Запросы, указывающие на старый IP-адрес, не затрагиваются.

Вы можете проверить это, создав конечную точку, которая удерживает соединение в течение длительного времени. Затем, пока соединение удерживается, нажмите «Обменять». Зайдите в журнал, чтобы увидеть, что произошло.

В частности, для службы приложений в документации говорится следующее:

Перенаправление трафика происходит без проблем, и запросы не сбрасываются из-за операций подкачки.

https://docs.microsoft.com/en-us/azure/app-service/deploy-staging-slots

person Erndob    schedule 22.05.2019
comment
Привет, Эрндоб, спасибо за ответ, я хотел подтвердить, является ли наша обязанность постепенно переводить трафик с синего на зеленый? - person focode; 22.05.2019
comment
И какие-нибудь предложения о том, когда нам следует удалить промежуточную среду? - person focode; 22.05.2019
comment
AppService Swap не перемещает трафик постепенно. Вы можете самостоятельно контролировать трафик: docs.microsoft.com/en-us/azure/app-service/ Здесь есть две разные вещи: одна - это диспетчер трафика как служба, а другая - встроенная подкачка в службах приложений. - person Erndob; 22.05.2019
comment
Как упоминал Эрндоб, если ваши требования подходят, вы можете направить определенный процент (0–100) трафика в определенные слоты. После сохранения настройки указанный процент клиентов случайным образом направляется в непроизводственный слот. Кроме того, весь рабочий процесс замены слотов развертывания можно автоматизировать, настроив автоматическую замену, когда предварительная проверка не требуется. Обратите внимание, что после замены слот с ранее поставленным приложением теперь имеет предыдущее производственное приложение. - person AjayKumar-MSFT; 22.05.2019