[ aws . autoscaling ]
put-lifecycle-hook
Описание
Создаёт или обновляет жизненный цикл хука для указанной группы Auto Scaling.
Жизненные циклы хуков позволяют создавать решения, которые осведомлены о событиях в жизненном цикле экземпляра Auto Scaling, а затем выполняют пользовательское действие над экземплярами, когда происходит соответствующее событие жизненного цикла.
Этот шаг является частью процедуры добавления хука жизненного цикла в группу Auto Scaling:
- (Необязательно) Создайте шаблон запуска или конфигурацию запуска с скриптом пользовательских данных, который выполняется, пока экземпляр находится в состоянии ожидания из-за хука жизненного цикла.
- (Необязательно) Создайте функцию Lambda и правило, которое позволяет Amazon EventBridge вызывать вашу функцию Lambda, когда экземпляр переводится в состояние ожидания из-за хука жизненного цикла.
- (Необязательно) Создайте целевой объект уведомления и роль IAM. Целевой объект может быть очередью Amazon SQS или темой Amazon SNS. Роль позволяет Amazon EC2 Auto Scaling публиковать уведомления о жизненном цикле в целевой объект.
- Создайте хук жизненного цикла. Укажите, используется ли хук при запуске или завершении экземпляров.
- Если вам нужно больше времени, запишите биение сердца действия жизненного цикла, чтобы сохранить экземпляр в состоянии ожидания, используя вызов API RecordLifecycleActionHeartbeat.
- Если вы закончите до истечения срока ожидания, отправьте обратный вызов, используя вызов API CompleteLifecycleAction.
Дополнительную информацию см. в разделе «Жизненные циклы хуков Amazon EC2 Auto Scaling» в справочнике пользователя Amazon EC2 Auto Scaling.
Если вы превысите максимальное ограничение хуков жизненного цикла, которое по умолчанию составляет 50 на группу Auto Scaling, вызов завершится ошибкой.
Вы можете просмотреть хуки жизненного цикла для группы Auto Scaling, используя вызов API DescribeLifecycleHooks. Если вы больше не используете хук жизненного цикла, вы можете удалить его, вызвав API DeleteLifecycleHook.
См. также: Документация API AWS
Синтаксис
put-lifecycle-hook
--lifecycle-hook-name <value>
--auto-scaling-group-name <value>
[--lifecycle-transition <value>]
[--role-arn <value>]
[--notification-target-arn <value>]
[--notification-metadata <value>]
[--heartbeat-timeout <value>]
[--default-result <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--debug]
[--endpoint-url <value>]
[--no-verify-ssl]
[--no-paginate]
[--output <value>]
[--query <value>]
[--profile <value>]
[--region <value>]
[--version <value>]
[--color <value>]
[--no-sign-request]
[--ca-bundle <value>]
[--cli-read-timeout <value>]
[--cli-connect-timeout <value>]
[--cli-binary-format <value>]
[--no-cli-pager]
[--cli-auto-prompt]
[--no-cli-auto-prompt]
Параметры
--lifecycle-hook-name (строка)
--auto-scaling-group-name (строка)
--lifecycle-transition (строка)
Переход жизненного цикла. Для групп Auto Scaling существуют два основных перехода жизненного цикла.
- Для создания хука жизненного цикла для событий масштабирования укажите
autoscaling:EC2_INSTANCE_LAUNCHING. - Для создания хука жизненного цикла для событий масштабирования укажите
autoscaling:EC2_INSTANCE_TERMINATING.
Требуется для новых хуков жизненного цикла, но необязательно при обновлении существующих хуков.
--role-arn (строка)
ARN роли IAM, которая позволяет группе Auto Scaling публиковать в указанный целевой объект уведомления.
Действителен только в том случае, если целевой объект уведомления — это тема Amazon SNS или очередь Amazon SQS. Требуется для новых хуков жизненного цикла, но необязательно при обновлении существующих хуков.
--notification-target-arn (строка)
Amazon Resource Name (ARN) целевого объекта уведомления, который Amazon EC2 Auto Scaling использует для уведомления вас о том, что экземпляр находится в состоянии ожидания для хука жизненного цикла. Вы можете указать либо тему Amazon SNS, либо очередь Amazon SQS.
Если вы укажете пустую строку, это перезапишет текущий ARN.
Этот оператор использует формат JSON при отправке уведомлений в очередь Amazon SQS и формат пары ключ-значение электронной почты при отправке уведомлений в тему Amazon SNS.
При указании целевого объекта уведомления Amazon EC2 Auto Scaling отправляет ему тестовое сообщение. Тестовые сообщения содержат следующую дополнительную пару ключ-значение: "Event": "autoscaling:TEST_NOTIFICATION" .
--notification-metadata (строка)
--heartbeat-timeout (целое число)
30 до 7200 секунд. Значение по умолчанию 3600 секунд (1 час).--default-result (строка)
Действие, которое группа Auto Scaling выполняет, когда истекает срок ожидания хука жизненного цикла или происходит непредвиденная ошибка. Значение по умолчанию ABANDON .
Допустимые значения: CONTINUE | ABANDON
--cli-input-json | --cli-input-yaml (строка) Считывает аргументы из предоставленной строки JSON. Строка JSON следует формату, указанному в --generate-cli-skeleton. Если на командной строке указаны другие аргументы, эти значения перезапишут значения из JSON. Передавать произвольные двоичные значения с помощью значения из JSON нельзя, так как строка будет взята буквально. Это не может быть указано вместе с --cli-input-yaml.
--generate-cli-skeleton (строка) Выводит JSON-скелет в стандартный вывод без отправки запроса к API. Если указано без значения или со значением input, выводит пример входного JSON, который можно использовать в качестве аргумента для --cli-input-json. Аналогично, если указано yaml-input, будет выведен пример входного YAML, который можно использовать с --cli-input-yaml. Если указано значение output, оно проверяет входные данные команды и возвращает пример выходного JSON для этой команды. Сгенерированный JSON-скелет нестабилен между версиями AWS CLI, и нет гарантий обратной совместимости в сгенерированном JSON-скелете.
Глобальные параметры
--debug (логическое значение)
Включить отладку.
--endpoint-url (строка)
Переопределить URL по умолчанию команды указанным URL.
--no-verify-ssl (логическое значение)
По умолчанию AWS CLI использует SSL при взаимодействии с сервисами AWS. Для каждого подключения SSL AWS CLI будет проверять сертификаты SSL. Этот параметр перезаписывает поведение по умолчанию, которое заключается в проверке сертификатов SSL.
--no-paginate (логическое значение)
Отключить автоматическую постраничную навигацию. Если автоматическая постраничная навигация отключена, AWS CLI выполнит только один вызов для первой страницы результатов.
--output (строка)
Стиль форматирования для вывода команд.
- json
- текст
- таблица
- yaml
- yaml-поток
--query (строка)
Запрос JMESPath для фильтрации данных ответа.
--profile (строка)
Использовать определенный профиль из файла учетных данных.
--region (строка)
Использовать указанный регион. Перезаписывает настройки из конфигурации/среды.
--version (строка)
Отобразить версию этого инструмента.
--color (строка)
Включить/выключить цветной вывод.
- вкл
- выкл
- авто
--no-sign-request (логическое значение)
Не подписывать запросы. Учетные данные не будут загружены, если этот параметр указан.
--ca-bundle (строка)
Файл с сертификатом CA для проверки сертификатов SSL. Перезаписывает настройки из конфигурации/среды.
--cli-read-timeout (целое число)
Максимальное время чтения сокета в секундах. Если значение установлено в 0, чтение сокета будет выполняться без блокировки и без таймаута. Значение по умолчанию 60 секунд.
--cli-connect-timeout (целое число)
Максимальное время подключения сокета в секундах. Если значение установлено в 0, подключение сокета будет выполняться без блокировки и без таймаута. Значение по умолчанию 60 секунд.
--cli-binary-format (строка)
Стиль форматирования, который будет использоваться для двоичных блоков. По умолчанию используется формат base64. Формат base64 ожидает, что двоичные блоки будут представлены в виде закодированной строкой base64. Формат raw-in-base64-out сохраняет совместимость с поведением AWS CLI V1, и двоичные значения должны быть переданы буквально. При предоставлении содержимого из файла, соответствующего двоичному блоку, fileb:// всегда будет рассматриваться как двоичный и будет использовать содержимое файла непосредственно, независимо от настройки cli-binary-format. При использовании file:// содержимое файла необходимо правильно отформатировать для заданной настройки cli-binary-format.
- base64
- raw-in-base64-out
--no-cli-pager (логическое значение)
Отключить пейджер CLI для вывода.
--cli-auto-prompt (логическое значение)
Автоматически запросить параметры ввода CLI.
--no-cli-auto-prompt (логическое значение)
Отключить автоматический запрос параметров ввода CLI.
Примеры
Примечание
Для использования следующих примеров необходимо установить и настроить AWS CLI. Дополнительную информацию см. в руководстве по началу работы в руководстве пользователя AWS CLI.
Если не указано иное, все примеры используют правила цитирования похожие на Unix. Эти примеры необходимо адаптировать к правилам цитирования вашего терминала. См. «Использование кавычек со строками» в руководстве пользователя AWS CLI.
Пример 1: Создание хука жизненного цикла
В этом примере создается хук жизненного цикла, который будет вызываться при запуске любого нового экземпляра с таймаутом 4800 секунд. Это полезно для поддержания экземпляров в состоянии ожидания до тех пор, пока не завершаться скрипты пользовательских данных, или для вызова функции AWS Lambda с помощью EventBridge.
aws autoscaling put-lifecycle-hook \
--auto-scaling-group-name my-asg \
--lifecycle-hook-name my-launch-hook \
--lifecycle-transition autoscaling:EC2_INSTANCE_LAUNCHING \
--heartbeat-timeout 4800
Эта команда не создаёт вывод. Если хук жизненного цикла с таким же именем уже существует, он будет перезаписан новым хуком жизненного цикла.
Дополнительную информацию см. в разделе «Жизненные циклы хуков Amazon EC2 Auto Scaling» в справочнике пользователя Amazon EC2 Auto Scaling.
Пример 2: Отправка сообщения Amazon SNS по электронной почте для уведомления о переходах состояния экземпляра
В этом примере создаётся хук жизненного цикла с темой Amazon SNS и ролью IAM для получения уведомления при запуске экземпляра.
aws autoscaling put-lifecycle-hook \
--auto-scaling-group-name my-asg \
--lifecycle-hook-name my-launch-hook \
--lifecycle-transition autoscaling:EC2_INSTANCE_LAUNCHING \
--notification-target-arn arn:aws:sns:us-west-2:123456789012:my-sns-topic \
--role-arn arn:aws:iam::123456789012:role/my-auto-scaling-role
Эта команда не создаёт вывод.
Дополнительную информацию см. в разделе «Жизненные циклы хуков Amazon EC2 Auto Scaling» в справочнике пользователя Amazon EC2 Auto Scaling.
Пример 3: Публикация сообщения в очередь Amazon SQS
В этом примере создаётся хук жизненного цикла, который публикует сообщение с метаданными в указанную очередь Amazon SQS.
aws autoscaling put-lifecycle-hook \
--auto-scaling-group-name my-asg \
--lifecycle-hook-name my-launch-hook \
--lifecycle-transition autoscaling:EC2_INSTANCE_LAUNCHING \
--notification-target-arn arn:aws:sqs:us-west-2:123456789012:my-sqs-queue \
--role-arn arn:aws:iam::123456789012:role/my-notification-role \
--notification-metadata "SQS message metadata"
Эта команда не создаёт вывод.
Дополнительную информацию см. в разделе «Жизненные циклы хуков Amazon EC2 Auto Scaling» в справочнике пользователя Amazon EC2 Auto Scaling.
Вывод
Нет
© Copyright 2025, Amazon Web Services. Created using Sphinx.