《Airflow 安装与启动》

《Airflow 安装与启动》

Airflow 是 Apache 开源的的工作流调度与编排平台,通过 DAG(有向无环图)定义任务依赖与定时调度。

1 pip 方式安装

pip install apache-airflow

官方安装文档:

2 Docker 方式安装

官方镜像在部分场景下不好使,可选用社区镜像:

docker pull puckel/docker-airflow

由于默认是以 airflow 用户进入容器的,无法修改 /etc/apt/sources.list,因此以 root 用户进入:

image=puckel/docker-airflow # 传入 webserver 参数,容器会以 webserver 作为 1 号进程启动 docker run -dit --name airflow --privileged=true --user=root --net=host --hostname=airflow $image webserver

修改 deb 源(国内加速):

echo 'deb http://mirrors.163.com/debian buster main' > /etc/apt/sources.list echo 'deb http://mirrors.163.com/debian buster-updates main' >> /etc/apt/sources.list

容器内典型进程:

UID PID PPID C STIME TTY TIME CMD root 1 0 0 12:21 pts/0 00:00:04 /usr/local/bin/python /usr/local/bin/airflow webserver root 67 1 0 12:21 pts/0 00:00:06 /usr/local/bin/python /usr/local/bin/airflow scheduler root 166 67 0 12:21 pts/0 00:00:00 airflow scheduler -- DagFileProcessorManager root 167 1 0 12:21 pts/0 00:00:01 gunicorn: master [airflow-webserver]

3 开启 metrics(statsd)

进入容器修改配置:

docker exec -it airflow bash vi /usr/local/airflow/airflow.cfg
# Statsd integration settings statsd_on = True # 将 localhost 改为本机 IP 或 0.0.0.0 statsd_host = 0.0.0.0 statsd_port = 8125 statsd_prefix = airflow

注意:statsd 模块默认未安装,需要先安装依赖再开启:

pip install 'apache-airflow[statsd]'

参考:https://airflow.readthedocs.io/en/latest/metrics.html

4 常用资料

阅读 — · 全站 —
🎸 我的歌单 0 首