Развертывание кодовой базы Airflow

Мы находимся в процессе оптимизации наших конвейеров сборки/развертывания для кодовой базы воздушного потока.

Есть ли у кого-нибудь опыт сборки и развертывания конвейеров с использованием инструментов CI/CD для apache airflow?

Как вы развертываете свою кодовую базу воздушного потока, включая DAG/плагины/операторы в различных средах, таких как тестирование, подготовка, производство и т. д.

Как вы управляете конфигурацией airflow.cfg для каждой среды?

Где вы управляете своими конфигами для каждой среды.


person chandu kavar    schedule 31.08.2018    source источник


Ответы (1)


Мы встраиваем весь наш код в образ Docker (DAG, плагины, разные пакеты Python, разные airflow.cfg файлы и т. д.), который передается в наш кластер Kubernetes. Один и тот же образ работает везде, гарантируя, что зависимости останутся заблокированными, а каждый Airflow настроен наилучшим образом для своего варианта использования (мы запускаем несколько экземпляров Airflow в нашем кластере Kubernetes).

Что касается CI/CD, поскольку наше развертывание — это всего лишь отправка докера, мы использовали CircleCI без каких-либо проблем.

Для управления средами мы постараемся, чтобы соединения назывались одинаково в Airflow (например, redshift_conn), но с разными учетными данными (dev Redshift против prod Redshift). Я думаю, что для этого должны быть более элегантные решения, но пока это работало для нас.

person Viraj Parekh    schedule 31.08.2018
comment
Спасибо, Вирадж. В настоящее время мы используем airflow без Kubernete. Мы ищем / ищем элегантное решение для управления одними и теми же артефактами сборки для нескольких сред и управления конфигурациями, специфичными для среды. - person chandu kavar; 02.09.2018
comment
Используете ли вы какую-либо систему оркестровки? В моей компании мы использовали Mesos для развертывания сред Airflow перед переходом на Kubernetes, что определенно упростило управление артефактами сборки и средами. - person Viraj Parekh; 02.09.2018
comment
В нескольких потоках мы используем Kubernetes, но не для Airflow. Мы планируем использовать и в Airflow. Не уверен, сколько времени/усилий потребуется для перехода на Kybernetes. - person chandu kavar; 03.09.2018