Сообщения

Показаны сообщения с ярлыком "контроллер Job"

Контроллеры в Kubernetes: Job, спецификация и использование

Изображение
Написание спецификации Job Как и во всех других конфигурациях Kubernetes, для работы требуются поля apiVersion, kind и metadata. Job также нуждается в разделе .spec. Pod шаблон .spec.template является единственным обязательным полем .spec. .spec.template является шаблоном pod. У него точно такая же схема, что и у pod, за исключением того, что он вложенный и не имеет apiVersion или kind. В дополнение к полям, обязательным для Pod, в шаблоне Pod в Job должны быть указаны соответствующие метки и соответствующая политика перезапуска. Разрешается только RestartPolicy, равное Never или OnFailure. Pod селектор Поле .spec.selector является необязательным. Почти во всех случаях вы не должны указывать это. Параллельные Job Существует три основных типа заданий, подходящих для выполнения Job: Непараллельные Job Обычно запускается только один Pod, если он не вышел из строя. Job завершается, как только его Pod успешно завершается. Параллельные Job с фиксированным количеством зав...

Контроллеры в Kubernetes: Job, пример

Изображение
Job создает один или несколько Pod'ов и обеспечивает успешное завершение указанного количества из них. По мере успешного завершения Pod'ов, Job отслеживает успешные завершения. Когда определенное количество успешных завершений достигнуто, задача (т. е. Job) завершена. Удаление Job очистит созданные им Pod'ы. Простой случай - создать один объект Job, чтобы надежно запустить один Pod до его завершения. Объект Job запустит новый Pod, если первый Pod выйдет из строя или будет удален (например, из-за аппаратного сбоя узла или перезагрузки узла). Вы также можете использовать Job для параллельного запуска нескольких Pod'ов. Запуск примера Job Вот пример конфигурации Job. Он вычисляет значение пи до 2000 знаков и распечатывает его. Это займет около 10 секунд, чтобы завершить. apiVersion: batch/v1 kind: Job metadata: name: pi spec: template: spec: containers: - name: pi image: perl command: ["perl", "-Mbignum=bpi"...