Последний сценарий, который мы рассмотрим, это сбой приложения. Ситуация, когда сама виртуальная машина работоспособна, но по каким-то причинам произошла ошибка в приложении. Это может быть потеря соединения с базой данных или какой-то баг в запущенном приложении (например, утечка памяти). Давайте имитируем такой сценарий. На наших виртуальных машинах запущен только веб-сервер nginx, давайте остановим его. Но сначала включим проверку состояния виртуальных машин.
- В веб-консоли откройте страницу Обзор для вашей группы виртуальных машин, нажмите Изменить и активируйте проверку состояний. Сохраните изменения.
- В браузере откройте внешний IP-адрес балансировщика, привязанного к вашей группе, и посмотрите, на какую из машин выводится трафик. Узнайте внешний IP-адрес этой машины.
- В новой вкладке браузера откройте IP-адрес этой виртуальной машины и убедитесь, что выводится приветственная страница, т.е. сервер доступен.
- Помните, когда вы меняли файл конфигурации для группы машин, вы добавили в него пользователя my-user? Теперь он вам пригодится — из консоли зайдите на виртуальную машину от его имени:
ssh my-user@84.252.132.4
- Посмотрите список запущенных процессов:
ps axu
Убедитесь, что в списке есть процессы nginx:
- Теперь остановите эти процессы, чтобы сделать сервер недоступным:
sudo killall nginx
- В браузере обновите страницу балансировщика. Вы увидите, что теперь трафик направляется на другую виртуальную машину группы. Это означает, что Instance Group обнаружил сбой приложения и переключил трафик.
- Теперь обновите страницу виртуальной машины, на которой вы остановили nginx. Убедитесь, что сервер теперь недоступен.
- Откройте список машин вашей группы и проследите, как меняется состояние одной из машин.Сначала будет закрыт трафик (Closing traffic), затем виртуальная машина будет остановлена (Stopping instance), а затем перезапущена (Running actual).
- Обновите страницу виртуальной машины и убедитесь, что веб-сервер снова доступен на ней.
Мы проверили четыре основных сценария сбоев и убедились, что Yandex.Cloud автоматически отрабатывает их и восстанавливает работоспособность группы.Теперь вы можете удалить группу виртуальных машин, в этом курсе она больше не понадобится.
Свежие комментарии