Я использую Kubernetes в облачной платформе Google и определил там несколько кластеров с контроллерами развертывания.

Для каждого модуля в развертывании существует проверка работоспособности, которая каждые 30 секунд проверяет мой маршрут (www.example.com) и ответ должен быть 200, иначе проверка работоспособности завершится ошибкой.

Поэтому я решил отследить его и написать die () в моем index.php, после чего проверка работоспособности покажет зеленый статус, и он работает правильно. Я запутался и действительно не знаю, что случилось с этим модулем и почему он не работает.

Может ли кто-нибудь помочь мне найти эту проблему в моем модуле и сказать, что именно эта проверка работоспособности делает в GCP?

3
EmyNikhil 13 Май 2018 в 16:21

1 ответ

Лучший ответ

Проверка работоспособности, используемая для проверки того, исправен ли контейнер в модуле и готов ли он обслуживать трафик.

Поэтому сначала вы должны проверить свой код статуса http:

curl -I www.example.com

Какой у вас код статуса http в ответе?

Когда вы пишете die () в своем index.php, я уверен, что код состояния http равен 200

Но когда вы удалите его из своего index.php, тогда http-код станет чем-то другим!

Вы можете перенаправить пользователя после посещения www.example.com, тогда в этом случае код статуса http не равен 200.

Убедитесь, что код состояния http для URL-адреса проверки работоспособности равен 200, если он не равен 200, вы можете изменить URL-адрес проверки работоспособности в GKE на что-то другое, код состояния которого может быть 200.

5
Hamed 13 Май 2018 в 13:49