Уничтожить неподготовленный модуль при сбое режима готовности - PullRequest
0 голосов
/ 02 мая 2018

Я пытаюсь развернуть приложение, которое содержит конечную точку проверки работоспособности. Если это не удается, модуль должен быть уничтожен, но K8s сохраняет модуль в состоянии «Запуск».

Config:

     readinessProbe:
        httpGet:
          path: /healthcheck
          port: 3001
        initialDelaySeconds: 5
        periodSeconds: 5
        successThreshold: 1

Pod:

docs-app-768b47bc69-lrlcf      0/1       Running   0          1m

Итак, есть способ уничтожить капсулу, когда датчик готовности не работает?

Ответы [ 3 ]

0 голосов
/ 03 мая 2018

Соедините его с Liveness, чтобы сделать его более эффективным и укажите лимит ресурсов.

    resources:
      limits:
        cpu: 300m
        memory: 200Mi
      requests:
        cpu: 300m
        memory: 200Mi  
    readinessProbe:
      httpGet:
        path: /api/health
        port: 80
      initialDelaySeconds: 15
      periodSeconds: 20
      successThreshold: 1
      failureThreshold: 3
    livenessProbe:
      httpGet:
        path: /api/health
        port: 80
      initialDelaySeconds: 25
      periodSeconds: 25
      successThreshold: 1
      failureThreshold: 3    
0 голосов
/ 18 июля 2018

Датчики готовности предназначены для готовности к обслуживанию (если он проходит, вы находитесь в балансировщике нагрузки, если это не так), он полезен для отключения трафика на перегруженный модуль и позволяет ему сбросить его обратное давление.

Датчики жизнеспособности предназначены для убийства стручков, которые вредны для здоровья без надежды на выздоровление.

Документация очень понятна: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/

0 голосов
/ 03 мая 2018

Это не то, для чего предназначены зонды. LivenessProbe, в случае сбоя, после повторной попытки настроенного количества раз «перезагрузит» модуль. Вместо этого ReadinessProbe полезно указать, что модуль не должен обслуживать трафик во время сбоя. Зонды не предназначены для запуска или отмены модуля, если вам необходимо написать плагин для мониторинга состояния модуля и удалить реплику или развертывание в случае сбоя.

...