Как установить request_cpu глобально для рабочих модулей воздушного потока с помощью исполнителя kubernetes?
Я пытаюсь установить request_cpu
в исполнителе Kubernetes для Airflow, но не смог найти, где это сделать. В конфигурации воздушного потока по умолчанию я обнаружилdefault_cpus
но в соответствии с этим ответом нигде это не используется, и нигде больше в разделе Kubernetes я не могу найти ссылку на запрос процессора.
Как я могу установить request_cpu
параметр в исполнителе Airflow Kubernetes?
РЕДАКТИРОВАТЬ: В идеале то, что я хотел бы сделать, это установить это как глобальное значение по умолчанию, а не для каждого оператора, хотя в целом я думаю, что имеет больше смысла устанавливать его для каждого оператора / задачи
1 ответ
Вы можете установить это 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_pull_policy
- request_memory
- request_cpu
- limit_memory
- limit_cpu
- limit_gpu
- node_selectors
- близость
- терпимость
- аннотации
- тома
- volume_mounts
- volume_mounts
Документ: https://airflow.apache.org/docs/1.10.9/_api/airflow/contrib/executors/kubernetes_executor/index.html