Зная количество реплик в Кубернетесе - PullRequest
0 голосов
/ 01 апреля 2020

Меня интересует пакетное распределенное задание, которое мне нужно запустить. Есть ли способ в K8S, если я использую Job / Stateful Set или что-то еще, способ для самого модуля (через ENV var или любой другой) узнать, что его 1 из X модулей запущен для этого задания?

Мне нужно чтобы упорядочить некоторые данные и заставить каждый процесс получать необходимые данные.

-

Я полагаю, установка имени хоста с набором состояний является одним из способов сделать это. Есть ли лучший вариант?

Ответы [ 2 ]

2 голосов
/ 01 апреля 2020

Это запланировано, но еще не реализовано, о чем я знаю. Вы, вероятно, хотите сейчас взглянуть на слои более высокого порядка, такие как Ar go Workflows или Airflow.

0 голосов
/ 01 апреля 2020

Вы можете написать инфраструктуру в виде кода, используя Ansible, который будет выполнять следующие задачи по порядку:

  1. kubectl create -f jobs.yml
  2. kubectl wait --for=condition=complete job/job1
  3. kubectl wait --for=condition=complete job/job2
  4. kubectl wait --for=condition=complete job/job3
  5. kubectl create -f pod.yml

kubectl wait может использоваться в таких ситуациях, как это, чтобы остановить прогресс, пока действие не будет выполнено. В этом случае задание завершено.

Здесь - аналогичный вопрос, который кто-то задавал ранее в StackOverflow.

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