Промышленный деплой Apache Airflow в Kubernetes

Статья описывает развертывание Apache Airflow в Kubernetes с акцентом на безопасность и наблюдаемость. Для управления секретами предлагается использовать SOPS, который шифрует конфиденциальные данные на уровне файлов, что позволяет безопасно хранить их в репозиториях. Для структурирования и избежания дублирования конфигураций в YAML-файлах применяются якоря, обеспечивающие централизованное управление параметрами. В статье подчеркивается важность использования KubernetesExecutor для выполнения задач DAG в отдельных подах. Ресурсы для этих подов настраиваются с учетом однопоточной природы Python, ограничивая использование CPU до одного ядра по умолчанию.
Промышленный деплой Apache Airflow в Kubernetes
Изображение носит иллюстративный характер

Для мониторинга Apache Airflow используется Prometheus StatsD Exporter, собирающий метрики, с последующей визуализацией в Grafana. Логирование подов, выполняющих DAG, реализуется через FluentBit с фильтрацией и преобразованием для удобного анализа в Graylog. Статья подробно разбирает конфигурацию FluentBit, включая фильтрацию нерелевантных логов и структурирование данных для облегчения поиска. Отмечается интеграция с MinIO для хранения логов выполнения задач DAG, которые настраиваются через переменные окружения и коннекшены Airflow.

В качестве базы данных используется MySQL, также настраиваемый с помощью секретов. В статье приведены примеры конфигурации, включающие использование ServiceMonitor для метрик, конфигурацию MinIO и примеры создания коннекшенов в Airflow. Описываются способы деплоя с помощью Helm, включая установку и обновление чартов с зашифрованными секретами. Весь процесс направлен на создание отказоустойчивой и масштабируемой системы, обеспечивающей прозрачность ETL-процессов.


Новое на сайте

20868Уязвимости Plex открыли путь майнерам и Linux-бэкдору 20867Взлом OpenCode Console: под угрозой могли оказаться ключи OpenAI, Anthropic и Google 20866Rank Math PRO: заражённое обновление оставило на сайтах самовосстанавливающийся бэкдор 20865Как исследовательские модели OpenAI обходили ограничения и присваивали чужие данные 20864Атака на BeyondTrust: шпионская группа получила доступ к серверам поддержки 20863Как пакет imgdecode превращает npm-зависимость в загрузчик вредоносного кода? 20862Как PEERSTITCH обходит проверки VPN-сессий FortiOS? 20861Что происходит, когда ИИ-агент выходит за пределы тестовой среды? 20860Как 37-летняя ошибка открыла путь к root в OpenBSD 7.9? 20859ИИ-модели для SOC: точный ответ зависит от улик 20858Как одна учётная запись ConnectWise открыла доступ к 173 арендаторам Microsoft 365? 20857Пять минут до заражения: как подменили обновления AOMEI Backupper 20856Ловушка под видом регистрации: как UAT-11985 крадёт аккаунты Google 20855Может ли виртуальная машина прочитать память хоста? 20854Как дешёвые Android-смартфоны превращаются в чужие прокси?
Ссылка