我已经airflow在 docker 容器上运行。我正在使用气流version 2.0.2。
我知道我实际上可以通过 UI 创建池。但我正在寻找一种通过文件在 docker build 上以编程方式创建池的方法pools.json。有什么办法可以帮忙吗?
您可以通过REST API或CLI以编程方式执行此操作。REST API 允许通过 HTTP 逐一添加池。CLI 有一个用于从 JSON 文件导入池的命令:
airflow pools import [-h] [-v] FILEPATH
Run Code Online (Sandbox Code Playgroud)
例如:
{
"pool_1": {"slots": 5, "description": ""},
"pool_2": {"slots": 5, "description": "test"}
}
Run Code Online (Sandbox Code Playgroud)
格式为:"[pool name]": {"slots": [nr of slots], "description": "[description]"}
airflow pools import pools.json
Run Code Online (Sandbox Code Playgroud)
该命令具有幂等性,因此您可以根据需要多次运行它。对现有池的更改会导致更新,并将创建新池。从中删除池pools.json并不会删除 Airflow 中的池 - 您必须手动执行此操作。
由于它是幂等的,因此您可以pools.json在 Airflow 映像中构建一个文件并airflow pools import在容器进程开始时运行,以便在每个 Airflow 容器开始时检查池。
| 归档时间: |
|
| 查看次数: |
1486 次 |
| 最近记录: |