airflow-api 插件的安装与使用介绍

1. 安装插件airflow-rest-api

1)获取

wget https://github.com/teamclairvoyant/airflow-rest-api-plugin/archive/master.zip

2)将plugin文件夹下的内容放入airflow/plugin/下,若不存在则新建

3)重启airflow

2. api使用介绍 2.1 获取airflow版本

GET - {HOST}:{PORT}/admin/rest_api/api?api=version

2.2 获取airflow-api-plugin的版本

GET - {HOST}:{PORT}/admin/rest_api/api?api=rest_api_plugin_version

2.3 渲染任务实例模板

GET - {HOST}:{PORT}/admin/rest_api/api?api=render

参数: 1)dag_id 2)task_id 任务id 3)execution_date dag的执行日期,例如:2017-01-02T03:04:05 4)subdir(可选) 从中查找文件位置或目录 2.4 操作变量

GET - {HOST}:{PORT}/admin/rest_api/api?api=variables

参数(均为可选参数): 1)set:设置变量,key value 2)get:获取变量 3)json:布尔值,反序列化json 4)default:如果变量不存在,则返回默认值 5)import:从json文件导入变量 6)export:从json文件导出变量 7)delete:删除变量 2.5 操作连接

GET - {HOST}:{PORT}/admin/rest_api/api?api=connections

参数(均为可选参数): 1)list:布尔型,列出所有连接 2)add:增加连接 3)delete:布尔型,删除连接 4)conn_id:添加/删除连接所需要的连接id 5)conn_id:添加连接所需要的连接url 6)conn_extra:连接的额外字段,添加连接时可选参数 2.6 暂停DAG

GET - {HOST}:{PORT}/admin/rest_api/api?api=pause

参数: 1)dag_id 2)subdir:可选参数,从中查找dag的文件位置或者目录 2.7 继续dag

GET - {HOST}:{PORT}/admin/rest_api/api?api=unpause

参数: 1)dag_id 2)subdir:可选参数,从中查找dag的文件位置或者目录 2.8 调度任务失败的依赖

GET - {HOST}:{PORT}/admin/rest_api/api?api=task_failed_deps

参数: 1)dag_id 2)task_id 3)execution_date 4)subdir:可选 2.9 触发dag运行

GET - {HOST}:{PORT}/admin/rest_api/api?api=trigger_dag

参数: 1)dag_id 2)run_id:可选参数,用于dag运行的runid 3)conf:可选参数,传递给触发dag运行的一些配置,(URL Encoded JSON)以{"key":"value"}的形式 2.10 测试任务实例,但是不检查依赖或者在数据库中记录

GET - {HOST}:{PORT}/admin/rest_api/api?api=test

参数: 1)dag_id 2)task_id 3)execution_date 4)subdir:可选参数 5)dryrun:可选参数,布尔型,是否进行干运行 6)task_params:可选参数,将json字典传给task 2.11 获取dag运行状态

GET - {HOST}:{PORT}/admin/rest_api/api?api=dag_state

参数: 1)dag_id 2)execution_date 3)subdir:可选参数 2.12 运行单个task实例

GET - {HOST}:{PORT}/admin/rest_api/api?api=run

参数: 1)dag_id 2)task_id 3)execution_date 4)subdir:可选参数 5)mark_success:可选参数,布尔型,不运行jobs但是标记为成功 6)force:可选参数,布尔型,忽略先前的运行状态,无论任务是否成功都重新运行 7)pool:可选参数,资源池 8)cfg_path:可选参数,使用配置文件的路径而不用原有的airflow.cfg 9)local:可选参数,布尔值,使用localexecute运行任务 10)ignore_all_dependencies:可选参数,布尔值,忽略所有的非关键依赖项,包括ignore_ti_state和ignore_task_depsstore_true 11)ignore_dependencies:可选,布尔值,忽略特定于任务的依赖关系,例如upstream, depends_on_past还有retry delay dependencies 12)ignore_depends_on_past:可选,布尔值,忽略depends_on_past依赖项,但是尊重上游 13)ship_dag:可选,布尔值,序列化dag并发送给worker 14)pickle:可选:整个dag的序列化pickle对象 2.13 某个dag的所有tasks

GET - {HOST}:{PORT}/admin/rest_api/api?api=list_tasks

参数: 1)dag_id 2)tree:可选参数,布尔型 3)subdir:可选参数 2.14 在制定范围内运行dag的子部分

GET - {HOST}:{PORT}/admin/rest_api/api?api=backfill

参数: 1)dag_id 2)task_regex:可选参数,用于过滤特定的task_ids以进行回填正则表达式 3)start_date:覆盖start_date YYYY-MM-DD 4)end_date:可选参数,同上覆盖 5)mark_success:可选参数,布尔型,不运行jobs但是标记为成功 6)local:可选参数,布尔型,使用LocalExecutor运行任务 7)donot_pickle:可选参数,不进行尝试将dag对象发给工作人员,只告诉他们dag的运行版本 8)include_adhoc:可选参数,布尔值,包含带有adhoc参数的dags 9)ignore_dependencies:可选参数,布尔值,忽略特定于任务的依赖关系,例如 upstream, depends_on_past, and retry delay dependencies 10)ignore_first_depends_on_past:可选参数,布尔值,仅忽略第一组任务的depends_on_past依赖关系 11)subdir:可选参数, 12)pool:可选参数,资源池 13)dry_run:可选参数,布尔值,是否空运行 2.15 列出所有的dags

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpgpwd.html