环境变量中的气流配置不起作用

Airflow configuration in environment variable not working

我尝试使用 ENV 变量来配置连接 url,我有一个预先配置了 alchemy_conn 和 broker_url 等的 ami,我已经在实例中将环境变量写入 /etc/environment从 amis 旋转以覆盖 airflow.cfg 文件中的属性。我也能够从 python 代码访问变量。

但在运行 ariflow时似乎没有生效,也试过重新启动进程但没有用,它仍然指向airflow.cfg文件中的那个

问题可能是系统服务不会自动从 /etc/environment 中获取仅用于交互式会话的环境。

如果您使用的是 systemd,则可以添加 EnvironmentFile=/etc/environment,但更多 "typical" 将把服务特定配置放在 /etc/default/airflow(在 Debian/Ubuntu 上)或 /etc/sysconfig/airflow(在 Centos/Redhat 上)

Airflow 的示例 systemd 脚本已经为 Centos 提供了这个:https://github.com/apache/incubator-airflow/blob/faa9a5266c0b2e68693dd106b5cb46d30770dadc/scripts/systemd/airflow-webserver.service#L20