Индивидуальная проверка здоровья с помощью GCP
Привет я пытаюсь использовать пользовательские проверки здоровья с GCP LoadBalancer.
я добавил readinessProbe
& livenessProbe
как это:
readinessProbe:
httpGet:
path: /health
port: dash
initialDelaySeconds: 5
periodSeconds: 1
timeoutSeconds: 1
successThreshold: 1
failureThreshold: 10
livenessProbe:
httpGet:
path: /health
port: dash
initialDelaySeconds: 5
periodSeconds: 1
timeoutSeconds: 1
successThreshold: 1
failureThreshold: 10
Но когда я создаю свой вход, я не получаю свою специальную проверку здоровья
2 ответа
Я завершил ответ. То, что я пытался сделать, было невозможно. Мой GCE Ingress использовал бэкэнд в порту 80
, Но в моем ReadinessProbe я сказал ему, чтобы проверить порт 8080
и на /health
дорожка. Это невозможно!
Порт службы, указанный в бэкэнде Ingress, должен быть таким же, как и порт, указанный в readinessProbe
, Только путь может быть другим. Если мы не уважаем эту модель, это /
это связано с путем проверки работоспособности GCP.
С точки зрения сети это логично, GCP проверки работоспособности "выходит" из кластера Kube, если мы сообщим ему выполнить маршрутизацию через порт. 80
но наш ReadinessProbe
находится на другом порту, как он может гарантировать, что даже если порт, связанный с ReadinessProbe, встречает порт 80
(который является тем, на который он должен направлять трафик) также отвечает.
Таким образом, порт бэкэнда, объявленный в Ingress, должен иметь readinessProbe
на том же порту. Единственное, что мы можем настроить - это путь.
Я думаю, что вы путаетесь между ресурсами в GCP.
Код, который вы опубликовали, ни в коем случае не связан с ресурсом балансировщика нагрузки, так как это проверка работоспособности kubernetes для состояний модуля. Если вы хотите знать, работают ли зонды, проверьте состояние вашего модуля, если он не работает, опишите ваш модуль и посмотрите журналы, должны указать на проблему с датчиками.
Я собираюсь догадаться, что у вас есть входной ресурс где-то в вашем kubernetes conf, который создает lb и все ресурсы вокруг него, такие как проверка состояния (все еще предполагаю, что изображение, которое вы разместили, относится к этому).
Если вы используете GKE, вам следует оставить конфигурацию автоматизированного ресурса google из конфигурации k8s, которую вы развернули, как есть, потому что вы можете затормозить некоторые вещи, которые Google уже поддерживает для вас.