Ошибка проверки готовности: Get http://10.32.1.71:80/setting s: net / http: запрос отменен (превышено значение Client.Timeout при ожидании заголовков) - PullRequest
0 голосов
/ 30 октября 2018

У меня есть конфигурация Jenkins на Kubernetes, и проект написан на PHP.

Проблема здесь в том, что модуль подключен к входу (чем на loadBalancer, использующем GCE), и когда модуль не работает, он не добавляет его.

Когда я в первый раз загружаю проект из 0, он работает после того, как я обновляю его, он не работает, поскольку он вреден для здоровья.

Когда я описываю капсулу, я получаю следующее предупреждение:

Ошибка проверки готовности: Получить http://10.32.1.71:80/setting s: net / http: запрос отменен (превышено значение Client.Timeout при ожидании заголовков)

Моя производственная конфигурация:

# Configuration for the SQL connection 
kind: Deployment
apiVersion: extensions/v1beta1
metadata:
  name: wobbl-main-backend-production
spec:
  replicas: 1
  template:
    metadata:
      name: backend
      labels:
        app: wobbl-main
        role: backend
        env: production
    spec:
      containers:
        - name: backend
          image: gcr.io/cloud-solutions-images/wobbl-mobile-backend:1.0.0
          resources:
            limits:
              memory: "500Mi"
              cpu: "100m"
          imagePullPolicy: Always
          readinessProbe:
            httpGet: # make an HTTP request
              port: 80 # port to use
              path: /settings # endpoint to hit
              scheme: HTTP # or HTTPS
            initialDelaySeconds: 3 # how long to wait before checking
            periodSeconds: 5 # how long to wait between checks
            successThreshold: 1 # how many successes to hit before accepting
            failureThreshold: 2 # how many failures to accept before failing
            timeoutSeconds: 10 # how long to wait for a response
          ports:
          - name: backend
            containerPort: 80

Любые советы о том, как решить эту проблему.

1 Ответ

0 голосов
/ 31 октября 2018

Сообщение об ошибке означает, что ваш HTTP-запрос не выполнен. Проверка готовности должна быть успешной, чтобы модуль был добавлен в качестве конечной точки для службы, предоставляющей его.

1) kubectl get po -o wide

Это так, чтобы вы могли получить IP кластера модуля

2) kubectl exec -t [another_pod] - curl -I [IP-адрес кластера модуля]

Если вы получите ответ 200, вы знаете, что путь настроен правильно, и датчик готовности должен пройти. Если вы получаете что-то, кроме ответа 200, именно поэтому проверка готовности не выполняется, и вам необходимо проверить свое изображение.

...