Size: a a a

2021 April 07

СГ

Станислав Горчаков... in Airflow
привет, всем! кто-нибудь отправлял запросы через postman в airflow? Пытаюсь такой запрос отправить http://localhost:8080/paused?is_paused=true&dag_id=dummy и подставляю хедер X-CSRFToken=sdfsdf, но получаю ошибку The CSRF session token is missing. А без этого хедера The CSRF token is missing. Хз, что ему еще подставить, чтобы запрос отработал
источник

A

Alex in Airflow
restapi работают на адресе /api/v1. узнать на паузе ли даг можно, например, посмотрев элемент is_paused в ответе /api/v1/dags/:dag_id/details
источник

A

Alex in Airflow
вообще вот yaml, который можно в постман загрузить и тестить - https://airflow.apache.org/docs/apache-airflow/stable/_specs/v1.yaml
источник

A

Alex in Airflow
надо только в настройки потом зайти и поставить base_url правильный, в зависимости от того, где у вас сервер, например, localhost:8080/api/v1
источник

A

Alex in Airflow
и авторизацию заполнить, например basic auth с логином и паролем
источник

СГ

Станислав Горчаков... in Airflow
в общем, все оказалось намного проще) просто постман переопределял куки, в которых лежал токен сессии и просто нужно было ему в хедер дополнительно правильные куки прокинуть и все заработало
источник

СГ

Станислав Горчаков... in Airflow
и мне не нужно было рест апи, а вообще задача стояла протестить кастомные эндпоинты плагина
источник

SC

Stanislav Chernov in Airflow
Привет всем!
Для настройки celeryexecutor в airflow.cfg - нужно обязательно добавить строку celery_result_backend - или нет ? Т.к. по умолчанию её нет в конфиге
источник

GB

Georgy Borodin in Airflow
Про jvm ничего не скажу, наверное, полезно, кому нужно.

А вот первое вызывает сомнения: зачем писать прокладку для того, чтобы что-то положить в фс, когда это можно сделать готовыми решениями?

Есть git-sync для кубера, бывает складывают даги в какой-то общий маунт (тоже решается без лишних сервисов), можно даже в докер-образ запихнуть, это может быть валидным решением для редких апдейтов дагов, а кто-то вообще любит ямл-программирование и делает даги из шаблонов.

Все эти методы вполне можно запихнуть в CI/CD, а как быть с твоим?
источник

AK

Asta Ko in Airflow
у меня тоже вопрос по celery сетапу. отвалились логи, я не понимаю, как прописать докер-хосты воркеров, куда как я понимаю вебсервер обращается за логами
источник

GB

Georgy Borodin in Airflow
Как развёрнуто? Какие настройки логов?
Если логи не сохранять, например, в S3, после перезапуска воркера ты логи не получишь
источник

AK

Asta Ko in Airflow
тут ссылки режутся, отправил пейстбин в личку
источник

AK

Asta Ko in Airflow
настройки логов стандартные
источник

AK

Asta Ko in Airflow
btw, вдруг кому-то интересно. я из https://ovdinfo.org/
и мы всегда счастливы волонтёрам
и мне иногда очень нужен разработчик, который помогал бы мне тюнить airflow
источник

GB

Georgy Borodin in Airflow
Файлик у тебя жуткий, если честно.
Во-первых, вот оф. пример от Airflow https://airflow.apache.org/docs/apache-airflow/stable/start/docker.html
Во-вторых, docker-compose up имеет аргумент scale для того, чтобы поднимать несколько контейнеров под сервис (воркеры в твоём случае)
В-третьих покажи именно ошибку получения логов, Airflow должен подхватывать сам по хостнейму воркера
источник

AK

Asta Ko in Airflow
о, спасибо
источник

EK

Egor Klimov in Airflow
Ну просто подход с git'ом и CI/CD подразумевает, что мне нужно даг закоммитить, потом зарелизить, написать перед этим конфигурацию CI/CD, а здесь можно просто открыть сваггер или curl'ом закинуть даг, я тут читал про подход с гитом, мне кажется, что он муторнее немного.

Опять же если складывать что-то в общий маунт руками, то это надо или через scp делать, или к себе шару смаунтить, или через UI файлы загружать. имхо не особо приятно для рядового пользователя

Кажется в CI/CD можно встроить запросы к апи, но я например просто делаю синхронизацию с S3 для этого сервиса, scheduler'а, webserver'а, worker'а и мне не надо заново все даги/таски накатывать.
источник

GB

Georgy Borodin in Airflow
Ну просто в продакшн вряд ли кто-то без системы контроля версий пойдёт, если честно)
источник

GB

Georgy Borodin in Airflow
А раз уж ты упомянул S3: AWS MWAA оттуда прямиком даги и берет. S3 как раз обеспечивает версионность
источник

EK

Egor Klimov in Airflow
Можно попробовать добавить VCS как-нибудь)
источник