Балансировщик нагрузки GKE «НЕЗДОРОВОЕ состояние» после нескольких предложений
Я пытался настроить простой кластер Kubernetes с одним контейнером, портом узла и балансировщиком нагрузки ingres. Однако, что бы я ни делал, балансировщик нагрузки ingres всегда показывает: «Некоторые серверные службы находятся в НЕЗДОРОВОМ состоянии». Я просмотрел несколько форумов и нашел следующие предложения:
- Увеличьте размер узлов
- Изменить
externalTrafficPolicy
службы порта узла от до (илиLocal
кCluster
) - Добавить
readinessProbe
иlivenessProbe
к рабочей нагрузке/контейнеру
Я также читал, что из-за ошибки в балансировщике нагрузки GKE любые изменения в службе порта узла требуют удаления и перестройки балансировщика нагрузки. Итак, я попробовал все комбинации приведенных выше предложений, удалял и перестраивал балансировщик нагрузки после каждого изменения и ждал 15 минут, пока балансировщик нагрузки успешно создастся. И все же мне не повезло. Что еще больше расстраивает, так это то, что я не знаю, где искать журналы, которые дали бы мне дополнительную информацию, чтобы я мог решить эту проблему самостоятельно.
Сообщите мне, какую еще информацию я могу предоставить. Я новичок в Kubernetes, но в остальном я очень технический человек, поэтому буду рад предоставить подробную информацию/логи/конфигурации. Спасибо за помощь!
1 ответ
Я понял. Наверное, я не осознавал, насколько индивидуальными должны быть проверки работоспособности/готовности/запуска. Я использую Nextcloud и Keycloak, и мне удалось найти конфигурации специально для этих систем. Ради потомства я опубликую конфигурации, работающие на этих платформах.
Следующее облако
ports:
- containerPort: 80
name: http
protocol: TCP
livenessProbe:
failureThreshold: 3
httpGet:
httpHeaders:
- name: Host
value: [YOUR-DOMAIN.TLD]
path: /status.php
port: http
scheme: HTTP
initialDelaySeconds: 10
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 5
readinessProbe:
failureThreshold: 3
httpGet:
httpHeaders:
- name: Host
value: [YOUR-DOMAIN.TLD]
path: /status.php
port: http
scheme: HTTP
initialDelaySeconds: 10
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 5
startupProbe:
failureThreshold: 3
httpGet:
httpHeaders:
- name: Host
value: [YOUR-DOMAIN.TLD]
path: /status.php
port: http
scheme: HTTP
initialDelaySeconds: 10
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 5
Плащ-ключ
ports:
- containerPort: 8080
name: http
protocol: TCP
livenessProbe:
failureThreshold: 3
httpGet:
path: /auth/
port: http
scheme: HTTP
initialDelaySeconds: 10
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 5
readinessProbe:
failureThreshold: 3
httpGet:
path: /auth/realms/master
port: http
scheme: HTTP
initialDelaySeconds: 10
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 5
startupProbe:
failureThreshold: 60
httpGet:
path: /auth/
port: http
scheme: HTTP
initialDelaySeconds: 30
periodSeconds: 5
successThreshold: 1
timeoutSeconds: 5