问题描述
我目前想编写一个系统配置文件来启动气流网络服务器。这是我的配置文件定义:
#airflow-webserver.service
[Unit]
Description=Airflow webserver 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/default/airflow
Environment="PATH=/root/airflow_venv/bin"
User=airflow
Group=airflow
Type=simple
ExecStart=/root/airflow_venv/bin/airflow webserver -p 8080 --pid /root/airflow/airflow-webserver.pid
Restart=on-failure
RestartSec=5s
PrivateTmp=true
[Install]
WantedBy=multi-user.target
但是运行“sudo service airflow-webserver status”它返回:
● airflow-webserver.service - Airflow webserver daemon
Loaded: loaded (/etc/systemd/system/airflow-webserver.service; enabled; vendor preset: disabled)
Active: activating (auto-restart) (Result: exit-code) since Mon 2021-01-25 06:58:14 UTC; 3s ago
Process: 5913 ExecStart=/root/airflow_venv/bin/airflow webserver -p 8080 --pid /root/airflow/airflow-webserver.pid (code=exited,status=217/USER)
Main PID: 5913 (code=exited,status=217/USER)
CGroup: /system.slice/airflow-webserver.service
我已经看过 How to enable a virtualenv in a systemd service unit?,因为它听起来是一个类似的问题。但是,我在那里找不到我的解决方案。我使用的操作系统是 Amazon Linux 2 AMI。
有人可以帮忙吗?
拉兹卢
解决方法
对于任何遇到相同错误的人:
主 PID:5913(代码=退出,状态=217/用户)
这表示用户不正确。调整用户和群组后,这项服务对我有用。