Есть ли в Airflow Kubernetes Executor какой-либо оператор?

Я оцениваю миграцию моего текущего развертывания Airflow с исполнителя Celery на исполнитель Kubernetes (K8s), чтобы использовать динамическое распределение ресурсов и изоляцию задач, предоставляемых модулями.

Мне ясно, что мы можем использовать собственный KubernetesPodOperator для выполнения задач в кластере K8s через исполнителя K8s. Однако мне не удалось найти информацию о совместимости исполнителя K8s с другими операторами, такими как bash и athena.

Возникает вопрос: можно ли запустить bash (или любой другой) оператор на Airflow с питанием от K8s, или мне следует перенести все свои задачи на KubernetesPodOperator?

Благодаря!

1 ответ

Решение

Исполнитель Kubernetes будет работать со всеми операторами.
Использование исполнителя kubernetes создаст рабочий модуль для каждой задачи вместо того, чтобы использовать рабочий сельдерей, как это будет делать исполнитель сельдерея.

Использование KubernetesPodOperator извлечет любое конкретное изображение для запуска модуля и выполнения вашей задачи.
Поэтому, если вы собираетесь использовать KubernetesPodOperator с KubernetesExecutor, Airflow запустит рабочий модуль для вашей задачи, и эта задача запустит модуль и будет отслеживать его выполнение. 2 капсулы на 1 задачу.

Если вы используете BashOperator с KubernetesExecutor, Airflow запустит рабочий модуль и выполнит команды bash на этом рабочем модуле. 1 капсула на 1 задачу.

Другие вопросы по тегам