У меня есть трехузловой кластер экземпляров ec2, контролируемых ASG. Когда какой-либо сервер приложений, запущенный на ec2, ведет себя неправильно, проверка работоспособности elb завершается ошибкой, и, следовательно, asg завершает ее и воссоздает новый экземпляр. Таким образом, в некотором смысле моя установка является самовосстанавливающейся, однако я хотел бы больше отлаживать экземпляр, пока это происходит. Я хотел бы получить снимок или ami некорректного экземпляра, чтобы я мог глубже погрузиться в проблему.
Любые предложения, как я могу этого добиться?
Заранее спасибо.
DetachInstances
Лучшим методом было бы вызвать detach-instances
, который удаляет экземпляр из группы Auto Scaling и при необходимости заменяет его.
Однако запустить эту команду после неудачной проверки работоспособности будет непросто.
Крюк Auto Scaling Lifecycle
Вы можете настроить Перехватчик жизненного цикла автоматического масштабирования Amazon EC2, который будет вызываться до завершения экземпляра. Затем ваша ловушка жизненного цикла может сделать снимок тома. Однако я не уверен, вызывается ли ловушка завершения жизненного цикла при сбое проверки работоспособности (в отличие от случая, когда происходит масштабирование), поэтому для этого потребуется некоторое тестирование.
CloudWatch запускает Lambda
Другой вариант:
detach-instances
, чтобы удалить его из группы Auto Scaling.
Я изучу крючок жизненного цикла ASG, спасибо за подробный отзыв.