我是Airbnb开源工作流程/数据管道软件airflow的新用户。 Web UI启动后有几十个默认示例dag。我尝试了很多方法来删除这些笨蛋,但我没有这样做。
load_examples = False
在airflow.cfg。删除dags文件夹后,这些示例dags的状态将更改为灰色,但这些项目仍占用Web UI屏幕。并且在airflow.cfg中将新的dag文件夹指定为dags_folder = /mnt/dag/1
。我检查了这个dag文件夹,什么都没有。对我来说,为什么删除这些例子如此困难真的很奇怪。
答案 0 :(得分:73)
启动气流时,请确保设置:
load_examples = False
在airflow.cfg
如果你已经开始气流但未设置为false,你可以将其设置为false并在cli中运行airflow resetdb
(!这将破坏所有当前的dag信息!)。
或者,您可以进入airflow_db
并手动从dag
表中删除这些条目。
答案 1 :(得分:8)
对于 Airflow 2.0,在 docker-compose.yaml 中,您可以将 AIRFLOW__CORE__LOAD_EXAMPLES: 'false'
设置为不加载它们,而不是编辑 .cfg 文件。
答案 2 :(得分:0)
TL; DR:检查dags_folder
中是否只有 个DAG文件-Airflow将递归遍历此目录并尝试加载所有.py
文件。>
我已经花了一些时间来调试Airflow的类似行为:即使load_examples = False
,气流仍然在加载大量不必要的东西,包括example_dags。问题是我在venv/
中有一个virtualenv目录dags_folder
,而且-我没想到-Airflow在dags目录中递归搜索递归。因此它是从安装在该virtualenv中的apache-airflow加载example_dags的。
UPD:有一个.airflowignore
file会忽略dags_folder
中的目录
答案 3 :(得分:0)
如果在气流resetdb和重新启动气流之后打开了基于LDAP的身份验证,则由于缓存的登录ID(但没有密码),您的登录窗口可能不会出现并且可能会出错。如果发生这种情况,请清除缓存并尝试。如果仍然无法解决问题,请关闭身份验证,停止气流并开始。然后打开身份验证停止并启动-您将能够看到登录窗口并使用LDAP身份验证登录 -Suresh
答案 4 :(得分:0)
就像其他人所说的那样,您可以在load_examples = False
内更改airflow.cfg
。但是,这需要cfg文件已经存在。
您可以使用ENV变量来初始化气流数据库,而无需配置cfg文件。
export AIRFLOW__CORE__LOAD_EXAMPLES=False
airflow initdb
有关更多信息,请参见docs。
答案 5 :(得分:0)
开始气流之前,请确保在load_example
文件中将airflow.cfg
变量设置为False。默认情况下,它设置为True。
load_examples = False
如果已经开始气流,则必须从气流UI中手动删除示例DAG。单击DAG右侧的删除图标将其删除。
您可以使用airflow resetdb
命令来重置数据库,而不是手动删除示例DAG,但这将删除您的连接和变量以及其他重要信息。请勿在生产中使用airflow resetdb
选项。
答案 6 :(得分:0)
刚刚放
load_examples = False
进入airflow.cfg文件并关闭并重新启动网络服务器和调度程序即可