Как установить request_cpu глобально для рабочих контейнеров с воздушным потоком, используя kubernetes executor? - PullRequest
1 голос
/ 28 февраля 2020

Я пытаюсь установить параметр request_cpu в Kubernetes executor для Airflow, но не смог найти, где я могу это сделать. В конфигурации воздушного потока по умолчанию я нашел default_cpus, но согласно этот ответ нигде не используется, и нигде в разделе Kubernetes я не могу найти ссылку на CPU запрос.

Как установить параметр request_cpu в исполнителе Airflow Kubernetes?

РЕДАКТИРОВАТЬ: В идеале я хотел бы иметь возможность установить это как глобальное значение по умолчанию, а не включить для каждого оператора, хотя в целом я думаю, что имеет смысл устанавливать его для каждого оператора / задачи

1 Ответ

2 голосов
/ 28 февраля 2020

Вы можете установить это executor_config на уровне задачи для KubernetesExecutor следующим образом.

    exmaple_task = PythonOperator(
        task_id="exmaple_task",
        python_callable=print_stuff,
        executor_config={
            "KubernetesExecutor": {"request_cpu": "1",
                                   "request_memory": "128Mi",
                                   "limit_memory": "128Mi"}}
    )

Вы можете определить следующее в executor_config:

  • image
  • image_pull_policy
  • request_memory
  • request_cpu
  • limit_memory
  • limit_cpu
  • limit_gpu
  • node_selectors
  • affinity
  • допуски
  • аннотации
  • томов
  • volume_mounts
  • volume_mounts

Do c: https://airflow.apache.org/docs/1.10.9/_api/airflow/contrib/executors/kubernetes_executor/index.html#airflow .contrib.executors .kubernetes_executor.KubernetesExecutorConfig

...