Схема httpGet для проверки работоспособности Kubernetes работает некорректно

Я развертываю какое-то веб-приложение на Kubernetes и хочу установить для этого приложения проверку живучести. Когда я настраиваю развертывание с помощью проверки живучести, kubelet запускает проверку работоспособности. Мне был определен httpGet с параметром HTTP схемы, но kubelet случайным образом использует схему https.

Это моя конфигурация датчика живучести:

livenessProbe:
  failureThreshold: 4
  httpGet:
    path: /
    port: 80
    scheme: HTTP
  initialDelaySeconds: 40
  periodSeconds: 5
  successThreshold: 1
  timeoutSeconds: 2

Это результат кубелета:

kubectl описать pod greenlight-7877dc58b7-6s78l

выход:

Предупреждение Unhealthy 31s (x4 over 46s) Ошибка проверки живучести kubelet: получить https://10.244.4.182/: dial tcp 10.244.4.182:443: connect: соединение отклонено

Версия Kubernetes: v1.19.9

Спасибо за помощь!




Ответы (1)


Поскольку вы явно указываете livenessProbe для использования HTTP, вероятно, ваше приложение перенаправляет трафик на HTTPS. Убедитесь, что ваше приложение возвращает 200 OK по базовому пути /, а не перенаправление (любой из 3xx кодов).

Вы можете исправить это или использовать проба TCP

apiVersion: v1
kind: Pod
metadata:
  name: goproxy
  labels:
    app: goproxy
spec:
  containers:
  - name: goproxy
    image: k8s.gcr.io/goproxy:0.1
    ports:
    - containerPort: 8080
    readinessProbe:
      tcpSocket:
        port: 8080
      initialDelaySeconds: 5
      periodSeconds: 10
    livenessProbe:
      tcpSocket:
        port: 8080
      initialDelaySeconds: 15
      periodSeconds: 20
person Paweł Grondal    schedule 28.05.2021
comment
Привет @ Ömer и добро пожаловать в StackOverflow! Не забудьте ответить на ваши вопросы. Таким образом, мы узнаем, были ли ответы полезными и другие члены сообщества также могли извлечь из них пользу. Попробуйте принять ответ, который является окончательным решением вашей проблемы, проголосуйте за полезные ответы и прокомментируйте те, которые можно улучшить или требуют дополнительного внимания. Приятного вам пребывания! - person Wytrzymały Wiktor; 28.05.2021
comment
Привет, Павел. После вашего ответа я проверил свое развертывание и заметил, что приложение перенаправляет запрос на https. Я решил свою проблему с вашим отзывом. Спасибо. - person Ömer; 01.06.2021