Интеграция Airflow с файлами systemd упрощает наблюдение за вашими демонами, поскольку systemd может позаботиться о перезапуске демона при сбое.Это также позволяет автоматически запускать веб-сервер и планировщик воздушного потока при запуске системы.
Редактировать файл airflow
из папки systemd
в Airflow Github в соответствии с текущей конфигурацией для установки переменных средыдля AIRFLOW_CONFIG
, AIRFLOW_HOME
& SCHEDULER
.
Скопируйте файлы служб (файлы с расширением .service
) в /usr/lib/systemd/system
в ВМ.
Скопируйте файл airflow.conf
в /etc/tmpfiles.d/ или / usr/lib/tmpfiles.d/.Копирование airflow.conf
обеспечивает создание /run/airflow
с правами владельца и разрешениями (0755 airflow airflow
).Проверьте, существует ли /run/airflow
с airflow:airflow
, принадлежащим пользователю воздушного потока и группе воздушных потоков, если он не создает папку /run/airflow
с этими разрешениями.
Включите эти службы, введя systemctl enable <service>
в командной строке, как показанониже.
sudo systemctl enable airflow-webserver
sudo systemctl enable airflow-scheduler
airflow-scheduler.service
файл должен быть таким, как показано ниже:
[Unit]
Description=Airflow scheduler daemon
After=network.target postgresql.service mysql.service redis.service rabbitmq-server.service
Wants=postgresql.service mysql.service redis.service rabbitmq-server.service
[Service]
EnvironmentFile=/etc/sysconfig/airflow
User=airflow
Group=airflow
Type=simple
ExecStart=/bin/airflow scheduler
Restart=always
RestartSec=5s
[Install]
WantedBy=multi-user.target