Как запускать команды CLI airflow с установленным airflow / kubernetes из Helm stable / воздушный поток?

#kubernetes #airflow #kubernetes-helm

#kubernetes #воздушный поток #kubernetes-helm

Вопрос:

Трудности с выполнением команд airflow при запуске Airflow в Kubernetes, которые я установил из репозитория Helm stable / airflow. Например, я пытаюсь выполнить в модуле планировщика и запустить airflow list , и я получаю следующую ошибку:

 airflow.exceptions.AirflowConfigException: error: cannot use sqlite with the KubernetesExecutor airlow
  

Хорошо, поэтому я переключаюсь на исполнителя celery.

То же самое

 airflow.exceptions.AirflowConfigException: error: cannot use sqlite with the CeleryExecutor
  

Итак, каков правильный способ запуска команд airflow CLI при запуске на K8s?

Ответ №1:

Убедитесь, что вы используете bash . /home/airflow/.bashrc импортирует переменные среды из /home/airflow/airflow_env.sh для настройки соединения. Ниже приведены некоторые примеры:

 kubectl exec -ti airflow-scheduler-nnn-nnn -- /bin/bash
$ airflow list_dags
  

Или с помощью shell вы можете импортировать переменные среды самостоятельно:

 kubectl exec -ti airflow-scheduler-nnn-nnn -- sh -c ". /home/airflow/airflow_env.sh amp;amp; airflow list_dags"
  

Комментарии:

1. такое простое решение. Спасибо.

2. Если ваша установка airflow отсутствует в пространстве имен по умолчанию, вам необходимо указать это: kubectl exec -it airflow-scheduler-nnn-nnn --namespace airflow -- /bin/bash for namespace=»airflow», иначе kubectl вернет pods "airflow-scheduler-nnn-nnn" not found .