Датчик готовности Openshift не выполнен - PullRequest
0 голосов
/ 21 декабря 2018

Запуск приложения Spring Boot внутри OpenShift Pod.Чтобы выполнить проверку готовности и живучести, я создал соответствующий файл YAML.Однако Pod отказывает и отвечает, что он не смог пройти проверку готовности (примерно через 5 минут).

Моя цель - проверять готовность каждые 20 минут.Но я предполагаю, что это терпит неудачу, потому что он складывает initalDelaySeconds вместе с periodSeconds.Поэтому я предполагаю, что первая проверка после запуска модуля будет выполнена через 22 минуты.

После соответствующей конфигурации датчика готовности.

readinessProbe:
  failureThreshold: 3
  httpGet:
    path: /actuator/health
    port: 8080
    scheme: HTTP
  initialDelaySeconds: 120
  periodSeconds: 1200
  successThreshold: 1
  timeoutSeconds: 60

Правильно ли мое предположение?Как этого избежать (возможно, увеличить тайм-аут относительно кублета)?

1 Ответ

0 голосов
/ 21 декабря 2018

Ваша конфигурация правильная, а initialDelaySeconds и periodSeconds не суммируются.Итак, первый HTTP-вызов readinessProbe произойдет ровно через 2 минуты после запуска POD.

Я бы искал проблему в самом приложении, первое, что приходит мне в голову, это то, что ваш путь равен /actuator/healthразве это не должно быть просто /health?Это значение по умолчанию в случае Spring Boot Actuator.

Если это не поможет, тогда лучше всего отладить его: exec в ваш контейнер и использовать curl, чтобы проверить, соответствует ли ваша конечная точка работоспособности.работает правильно (должен возвращать HTTP-код 200).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...