CeleryKubernetes 执行器¶
注意
从 Airflow 2.7.0 开始,您需要同时安装 celery
和 cncf.kubernetes
提供程序包才能使用此执行器。这可以通过安装 apache-airflow-providers-celery>=3.3.0
和 apache-airflow-providers-cncf-kubernetes>=7.4.0
来完成,或者通过使用 celery
和 cncf.kubernetes
附加组件安装 Airflow 来完成:pip install 'apache-airflow[celery,cncf.kubernetes]'
。
CeleryKubernetesExecutor
允许用户同时运行 CeleryExecutor
和 KubernetesExecutor
。根据任务的队列选择执行器来运行任务。
CeleryKubernetesExecutor
继承了 CeleryExecutor
的可扩展性,以处理高峰时段的高负载,以及 KubernetesExecutor
的运行时隔离。
Celery 执行器的配置参数可以在 Celery 提供程序的 配置参考 中找到。
何时使用 CeleryKubernetesExecutor¶
CeleryKubernetesExecutor
仅应在某些情况下使用,因为它需要设置 CeleryExecutor
和 KubernetesExecutor
。
当您的用例满足以下条件时,我们建议您考虑使用 CeleryKubernetesExecutor
在高峰时段需要调度的任务数量超过了 Kubernetes 集群可以轻松处理的规模
您的任务中相对较小的一部分需要运行时隔离。
您有大量可以在 Celery worker 上执行的小任务,但您也有一些资源密集型任务,最好在预定义的环境中运行。