Выключает ли группа автоматического масштабирования AWS операционную систему EC2 перед ее завершением? - PullRequest
0 голосов
/ 03 января 2019

В работе ведется много дискуссий о том, как будут отключены наши службы, когда они работают в группе автоматического масштабирования.Основная проблема - позволить службам выполнять некоторые задачи до завершения работы экземпляра.Например, если я добавляю метод destroy к сервису Spring в Java, разумно ли ожидать, что этот метод будет вызван до завершения экземпляра?

<bean class="com.github.moaxcp.service.Service" destroy-method="destroy">

В этом случае Service прекратит прием данных и сохраниттекущее состояние до s3.

Или что делать, если есть сценарий выключения systemd, который должен быть запущен до завершения экземпляра.В этом случае отправьте все оставшиеся журналы на s3.

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

Жизненный цикл EC2 дает некоторые подробности о том, что делает завершение.Сначала он закрывает экземпляр, а затем завершает работу.В этом случае службы могут быть в состоянии завершить некоторые задачи до того, как их остановят.

Из документации кажется, что, когда экземпляр EC2 завершается напрямую, он корректно завершает работу, но когда он завершается ASG, он будетне.Это правда?Есть ли документация об этом поведении?

1 Ответ

0 голосов
/ 03 января 2019

У вас есть нечто, называемое Lifecycle Hooks, которое позволяет вам выполнять пользовательские действия при запуске или завершении работы группы Autoscaling. Хуки реагируют на события масштабирования и масштабирования.

Проверьте https://docs.aws.amazon.com/autoscaling/ec2/userguide/lifecycle-hooks.html для получения дополнительной информации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...