我一直尝试使用 helm chart(作为子图)在我的家庭实验室中托管的 kubernetes 集群上部署 airflow。
我在将本地测试的 dag(在 docker-compose 上)迁移到 Kubernetes 集群时遇到了一些问题。在 Kubernetes 上使用 Airflow 时,可以使用 CeleryExecutor 吗?如果可以,我应该如何更改 dag 中的 DockerOperators?在寻找答案的过程中,我偶然发现了以下 stackoverflow 帖子,它建议在 Kubernetes 上运行时使用 DockerOperator 不是一个好选择,对吗?
这是否意味着我不应该使用 CeleryExecutor ?
将 dags 从 docker-compose 迁移到 Kubernetes 时,最佳实践是什么?谢谢
是的,可以。它受支持,并且在 Kubernetes 中运行良好。你只需要:
但大多数人选择使用 KubernetesExecutor 和 KubernetesPodOperator,因为他们:
是的,一般来说。
为什么?
替代方案:改用 KubernetesPodOperator。它:
不一定。您可以继续使用,但可以考虑迁移到:
这取决于你的工作负载。如果你已经熟悉 Celery,并且需要对并行度、队列或工作器进行特定的控制,那就保留它吧。
阅读有关KubernetesPodOperator 的更多信息。