Монтирование ConfigMap в Airflow Worker Pod с помощью KubernetesExecutor

У меня есть сценарий, в котором я хочу использовать Helm для развертывания конфигураций Airflow для каждой среды, которые используют KubernetesExecutor.

Проблема, с которой я сталкиваюсь, заключается в том, что мне нужно установить планировщик для каждой среды ConfigMaps в рабочих модулях, когда KubernetesExecutor их порождает.

У меня эти ConfigMaps нормально смонтированы в модулях Web и Scheduler, но я не вижу средства, чтобы KubernetesExecutor монтировал определенные ConfigMaps.

Я не вижу нигде в документации, как это сделать, но я не могу быть единственным, кто хочет, чтобы их образы Docker не зависели от среды и абстрагировали все до уровня Helm.

Любые предложения будут высоко ценится:)

Благодарность!

1 ответ

Я считаю, что самый простой способ сделать это - указать env_from_configmap_ref установка в вашем airflow.cfgкак описано здесь. Если конфигурационные карты имеют одно и то же имя в разных средах, это должно быть довольно просто, например

[kubernetes]
...
env_from_configmap_ref = <your-airflow-configmap>
...

Если у вас есть карты конфигурации с разными именами в разных средах (и вы не можете согласовать имена), вам может потребоваться указать airflow.cfgв самой configmap, как в этом примере.

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