Изменение правила прослушивания AWS ALB по умолчанию с помощью AWS CLI

#amazon-web-services #aws-cli #aws-application-load-balancer #web-traffic

#amazon-веб-сервисы #aws-cli #aws-application-load-balancer #веб-трафик

Вопрос:

Как упоминалось в названии, я хотел бы изменить правило прослушивателя по умолчанию для ALB с помощью AWS CLI. В частности, я хочу изменить, какая целевая группа используется. Желаемым результатом должно быть переключение целевого ARN внутри поля действия. Это можно сделать с помощью консоли AWS довольно легко, отредактировав поле действия. Консоль позволяет это, удаляя значение по умолчанию (то, которое было установлено во время создания), но AWS CLI по какой-то причине этого не делает. То, что я пробовал, — это использовать следующую команду:

 aws elbv2 modify-rule  --actions Type=forward,ForwardConfig={TargetGroups={TargetGroupArn=$TARGET_GROUP_ARN}}
--rule-arn $RULE_ARN
 

Который возвращает следующее:

Произошла ошибка (operationnot permitted) при вызове операции ModifyRule: правило по умолчанию ‘$RULE_ARN’ не может быть изменено

У кого-нибудь есть какие-нибудь идеи, что я делаю не так? Команда describe возвращает JSON, содержащий информацию, пропорциональную той, которую я пытаюсь изменить.

Ответ №1:

Мне удалось найти решение. Правило должно быть изменено путем редактирования соответствующего прослушивателя, а не самого правила по умолчанию. Команда выглядит следующим образом:

 aws elbv2 modify-listener --listener-arn $LISTENER_ARN --default-actions Type=forward,TargetGroupArn=$TARGET_GROUP_ARN,ForwardConfig={TargetGroups={TargetGroupArn=$TARGET_GROUP_ARN}}
 

Документация не очень помогла, но aws elbv2 modify-rule help команда действительно помогла. Я как-то пропустил это при первом чтении. В нем говорится следующее: To modify the actions for the default rule, use ModifyListener .