Size: a a a

2021 March 09

SC

Stanislav Chernov in Airflow
Alexander Kirshin
А путь к скриптам в данном случае какой?) Есть директория Airflow, но выделенной папки не увидел
Внутри папки airflow, вручную создайте папку dags, или в airflow.cfg можно указать любой другой путь к дагам
источник

SC

Stanislav Chernov in Airflow
Aleksey S.
хм, да, похоже только после команды "airflow webserver" появился этот каталог и файл

спасибо
На самом деле достаточно даже просто airflow запустить без параметров и конфиг будет создан
источник

AK

Alexander Kirshin in Airflow
Stanislav Chernov
Внутри папки airflow, вручную создайте папку dags, или в airflow.cfg можно указать любой другой путь к дагам
Спасибо! Я так и подумал что пути скорее всего находятся в конфигурации где то
источник

D

Dmitry in Airflow
Ilya Lozhkin
А как вы контроллируете зависимости в дагах?
requirements.txt на весь проект?
Есть PythonVirtualOperator, внутри него могут существовать зависимости из requirements.txt. Как это все работает точно не скажу, но недостающие пакеты, как я понял, прямо налету устанавливаются пр необходимости pip-ом. Вот репозиторий для пипа где задаётся я не знаю...
источник

IL

Ilya Lozhkin in Airflow
Dmitry
Есть PythonVirtualOperator, внутри него могут существовать зависимости из requirements.txt. Как это все работает точно не скажу, но недостающие пакеты, как я понял, прямо налету устанавливаются пр необходимости pip-ом. Вот репозиторий для пипа где задаётся я не знаю...
магия какая то
источник

D

Dmitry in Airflow
Но это работает, сам использую))
источник

D

Dmitry in Airflow
Так что в разных тасках в одном даге можно подружить код с разными зависимостями
источник

D

Dmitry in Airflow
Единственное я ещё не понял где логи хранятся при этом, потому что у виртуального оператора они только после успешной отработки таски выскакивают..
источник

z

zxyzxy in Airflow
Ребят всем привет. А у кого airflow в кубере вертится, вы поды удаляете сразу после выполнения, или потом все завершенные подчищаете (например, отдельным дагом)?
источник

ST

Sergey Trapeznikov in Airflow
zxyzxy
Ребят всем привет. А у кого airflow в кубере вертится, вы поды удаляете сразу после выполнения, или потом все завершенные подчищаете (например, отдельным дагом)?
сразу, на проде
на стейдже можно не удалять чисто для дебага
источник

z

zxyzxy in Airflow
Понял, спасибо. Просто столкнулся с такой проблемой, что если по какой-то причине под не стартует и сразу удаляется, то увидеть в чем причина не получится. А если его не удалять при ошибке, то при ретрае он не запустится, т.к под с таким именем уже существует. Выглядит логично чтобы все нормально оттестить на стейдже, но всякое же бывает )
источник
2021 March 10

А

Анастасия in Airflow
Привет!

У меня есть два вопроса:
1. Как вы передаете параметры в sql?
2. Тут про сабдаги пишут, что нужно держаться от них подальше. Это до сих пор актуально? Как вы реализуете трехступенчатую вложенность?
источник

マサ

マキシム サモイロフ... in Airflow
1. в большинстве sql-операторов работает jinja-темплейтинг, туда можно передавать всякие даты, xcom и прочее
источник

C

Combot in Airflow
Добро пожаловать в самое дружелюбное комьюнити.
источник

AK

Alexander Kirshin in Airflow
ребята, кто то сталкивался с подобной ошибкой когда забрасываешь DAG? Broken DAG: [/root/airflow/dags/spark_dag.py] Traceback (most recent call last):
 File "/usr/local/lib/python3.8/site-packages/airflow/providers/apache/spark/hooks/spark_submit.py", line 32, in <module>
   from airflow.kubernetes import kube_client
 File "/usr/local/lib/python3.8/site-packages/airflow/kubernetes/kube_client.py", line 101, in <module>
   ) -> client.CoreV1Api:
NameError: name 'client' is not defined
источник

AK

Alexander Kirshin in Airflow
airflow развернут на хост машине, без kubernetes
источник

GB

Georgy Borodin in Airflow
Анастасия
Привет!

У меня есть два вопроса:
1. Как вы передаете параметры в sql?
2. Тут про сабдаги пишут, что нужно держаться от них подальше. Это до сих пор актуально? Как вы реализуете трехступенчатую вложенность?
В версиях 1.* (не знаю, как в 2) дефолтный экзекьютор для сабдагоператоров – SequentialExecutor, по идее executor можно передать параметром при объявлении оператора, но они настойчиво не советуют это менять.
Короче, сабдаги не полетят выполняться на celery-воркерах

https://issues.apache.org/jira/browse/AIRFLOW-74
источник

А

Антон in Airflow
хмм, у меня летают
источник

GB

Georgy Borodin in Airflow
Антон
хмм, у меня летают
С заданным CeleryExecutor-ом? Sequential разрешает только одному таску быть запущенному в моменте
источник

А

Антон in Airflow
ага
источник