Как настроить время перезапуска рабочих мест Kubernetes?
Теперь мы используем Kubernetes для выполнения задач пользователей. Нам нужны возможности Kubernetes Jobs для перезапуска задач в случае сбоя.
Но наши пользователи могут подавать проблемные приложения, которые всегда выходят с ненулевым кодом. Кубернетес будет перезапускать эту задачу снова и снова.
Можно ли настроить время перезапуска по этому поводу?
1 ответ
Решение
Вы можете использовать стандартную политику перезапуска модуля: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/
К сожалению, разрешена только политика "Никогда" или "OnFailure", поэтому, если вам нужно перезапустить X раз, то это не удастся.
Пример:
apiVersion: batch/v1
kind: Job
metadata:
name: pi
spec:
template:
metadata:
name: pi
spec:
containers:
- name: pi
image: perl
command: ["perl", "-Mbignum=bpi", "-wle", "print bpi(2000)"]
restartPolicy: Never
backoffLimit: 4
- количество попыток перед выдачей ошибки
completions: 3
- количество раз запустить