Apache Airflow или Argoproj для длительных задач и DAG-задач на kubernetes

У нас есть много длительных, интенсивно работающих с памятью / процессором заданий в k8s, которые выполняются с сельдереем на kubernetes на облачной платформе Google. Однако у нас большие проблемы с масштабированием / повторной попыткой / мониторингом / предупреждением / гарантией доставки. Мы хотим перейти от сельдерея к более продвинутой структуре.

Есть сравнение: https://github.com/argoproj/argo/issues/849 но этого недостаточно.

Расход воздуха:

  • имеет лучшую поддержку в сообществе ~400 против ~12 тегов на SO, 13k звезд против ~3.5k звезд
  • Python способ определения потоков чувствует себя лучше, чем просто использование yamls
  • поддержка в GCP как продукт: Cloud Composer
  • лучшая панель приборов
  • некоторые хорошие операторы, такие как оператор электронной почты

Argoproj:

  • Родная поддержка Kubernetes (который я полагаю, как-то лучше)
  • Поддерживает CI/CD/ события, которые могут пригодиться в будущем
  • (Вероятно) лучшая поддержка для передачи результатов от одного задания к другому (в механизме Airflow xcom)

Наши DAG не так уж и сложны. Какие из этих рамок мы должны выбрать?

1 ответ

Idiomatic Airflow не предназначен для самостоятельного выполнения длительных заданий. Скорее, Airflow предназначен для того, чтобы выполнять функции запуска вычислительных заданий в другом сервисе (это делается с операторами) при мониторинге состояния заданного вычислительного задания (это делается с помощью датчиков).

В вашем примере любая вычислительная задача, необходимая в Airflow, будет инициирована соответствующим оператором для данной используемой услуги (для упрощения этого в Airflow есть зацепки GCP), и соответствующий датчик определит, когда задача была завершена, и более не блокировал последующие задачи в зависимости на этой операции.

Хотя он не очень хорошо знаком с деталями Argoproj, он, по-видимому, не столько "система планирования", как Airflow, а скорее система, используемая для организации и выполнения большей части вычислений.

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