AWS CodeDeploy требует двух целевых групп, но почему? - PullRequest
1 голос
/ 14 марта 2020

AWS CodeDeploy требует двух целевых групп обязательно. Я работаю только с одной, и мне не нужна вторая целевая группа. Но когда я пытаюсь использовать только целевую группу, я получаю это сообщение

У пары целевых групп должны быть разные целевые группы.

Я плохо понимаю (я прочитал документация) почему CodeDeploy нужны две целевые группы, а не одна.

1 Ответ

0 голосов
/ 18 марта 2020

Поскольку вы выполняете развертывание Blue / Green и вам нужны два TG (синий и зеленый), чтобы CodeDeploy мог создать новый набор задач ECS, присоедините этот набор задач к зеленому TG и затем начните переносить трафики c с Blue TG на Green TG , Без двух целевых групп не будет большого количества синего / зеленого, все будет синим.

Вот поведение ECS CodeDeploy Blue / Green:

Application load balancer (ALB) -> ALB DNS URL
|
|-- Port 80 (Production Listener) -> website-tg-blue on port 80 at container
|-- Port 8080 (Test Listener)     -> website-tg-green on port 80 at container

В настоящее время сайт целевой группы- tg-blue указывает на рабочий трафик c через порт 80 прослушивателя, и теперь давайте предположим, что вы обновляете свой образ ECS, внося новую редакцию в определение задачи и обновляя службу ECS. Сначала Code deploy создает задачу замены ECS с новым определением задачи и получает прослушивание порта 8080 тестового прослушивателя из ALB, который будет перенаправлен в целевую группу website-tg-green, а затем выполняет ловушки развертывания кода на основе вашей логики. c вашей лямбда-функцией, если вы связались с соответствующими хуками. Если все тесты пройдены с помощью хуков или если у вас не настроены какие-либо хуки, то развертывание кода обновит правило прослушивателя ALB, переключив traffi слушателя порта 80 слушателя c на целевую группу замены, которая является website-tg-green и производственный трафик c будет обслуживаться с новыми изменениями.

Затем развертывание кода будет ожидать настроенное время ожидания и удалит исходный набор задач. Наконец, оба порта прослушивателя ALB 80 и тестовый порт 8080 будут указывать на целевую группу website-tg-green.

Если вы выполните дополнительное обновление для той же службы ECS, то целевая группа производственного прослушивателя website-tg-green переключится на website-tg-blue и продолжит наоборот при дальнейших обновлениях уровня обслуживания ECS.

Ссылки на документацию:

...