Назад | Перейти на главную страницу

Создайте обслуживание Gcloud для перезапуска экземпляра, если он перестает отвечать на порту 80

мы используем Google Cloud Platform и запускаем экземпляр Ubuntu, у которого Apache прослушивает порт 80.

Иногда экземпляр перестает отвечать, и сервер в Cloudflare отключается (но это не так).

Нам нужно решение, что-то, что можно время от времени проверять, процедура, которая сбрасывает / перезапускает экземпляр, если он перестает отвечать на порту 80.

Может быть, сценарий оболочки? Может быть, что-то внутри Cloud Platform, чего я не заметил?

Я искал повсюду, извините, если это повторяется, спасибо за любую помощь.

Для периодического мониторинга работоспособности вашего экземпляра вы можете создать проверку работоспособности, которая будет периодически отправлять зонды на определенный порт для проверки работоспособности виртуальных машин. Проверка работоспособности не перезапустит ваш экземпляр, если он неисправен. Чтобы воссоздать неработоспособный экземпляр, вы можете создать группу управляемых экземпляров, поместить свой экземпляр в группу и создать проверку работоспособности. Найдите документ для группы управляемых экземпляров Вот В группе управляемых экземпляров есть функция автоисправления, которая воссоздает неработоспособные экземпляры. Вы можете просмотреть документ. Вот

Создание проверки работоспособности, которая прослушивает порт 80, сделало бы вашу работу, но сама проверка работоспособности не сработает. Тебе придется:

  1. Создание балансировщика нагрузки для управляемой группы экземпляров
  2. В этой группе управляемых экземпляров должно быть отключено автомасштабирование, чтобы только ваш экземпляр был единственным в группе.
  3. Затем вы можете указать Cloudflare на внешний IP-адрес, который вы создали (если вы выбрали статический IP-адрес) / получили при создании балансировщика нагрузки.

Таким образом, каждый раз, когда ваша проверка работоспособности терпит неудачу, ваш экземпляр будет перезапускаться. Убедитесь, что вы правильно настроили правила брандмауэра, чтобы проверка работоспособности работала.

Еще вы можете настроить метрику Stackdriver Monitoring и написать программу, которая использует Stackdriver Monitoring API, чтобы веб-перехватчик в дальнейшем выполнял некоторые действия, такие как уведомление кого-то или, возможно, даже перезапуск системы с помощью какого-либо инструмента управления конфигурацией. .

Несмотря на то, что bash также является хорошим вариантом, консоль GCP предоставляет вам интерактивный интерфейс, позволяющий изменять спецификации в любое время. Вам не нужно снова переписывать свои сценарии, если ваш вариант использования изменится, и вы хотите отслеживать больше этого экземпляра.

Я бы начал с системы мониторинга, такой как nagios, чтобы вы могли иметь представление о том, что происходит. Затем попросите кого-нибудь вручную перезапустить его, пока не увидите закономерности, которые стоит автоматизировать. Вы можете подключить nagios к PagerDuty, чтобы убедиться, что кто-то получит уведомление.

Помимо вашего внутреннего мониторинга, было бы неплохо иметь внешний сервис, такой как hund.io или pingdom, который следит за вашим сайтом.