Airflow详细搭建过程(亲测 + 总结)

本文详述了在Cent OS 7环境下,使用conda搭建Airflow 1.10.11的过程,包括环境准备、元数据存储切换到MySQL、配置Airflow以解决时间差和单线程问题。通过修改源码和配置文件,成功解决了Airflow的三大问题,实现了多线程调度和正确的时间显示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Airflow详细搭建过程(亲测+总结)

官网:Apache airflow
Airflow是社区创建的一个平台,用于以编程方式编写,安排和监视工作流。
半个月前搭了一次,现在做一个记录,不逼逼,开始搭建了,全程多图:

环境准备

系统: cent os 7
conda版本: 4.8.2
airflow版本 1.10.11

开始搭建

我这边会用一个conda创建一个apache airflow的环境:

conda create -n airflow_env python=3.7

切换到当前的这个环境:

conda activate airflow_env

搭建airflow

搭建airflow的话,官网有一套详细的文档Airflow 搭建
接下来就按照这个方式来

# airflow needs a home, ~/airflow is the default,
# but you can lay foundation somewhere else if you prefer
# (optional)
export AIRFLOW_HOME=~/airflow

# install from pypi using pip
pip install apache-airflow

# initialize the database
airflow initdb

# start the w
### 安装和配置Apache Airflow #### 准备环境 为了确保顺利安装并运行 Apache Airflow,建议先设置好 Python 环境,并通过 Docker 或者直接在主机上部署。对于初学者来说,采用官方提供的 Docker Compose 文件来启动 Airflow 是一种简单有效的方式。 #### 使用Docker安装Airflow 按照2022年的指南[^1],可以利用 Docker 来简化整个过程。具体操作如下: 下载最新的 `docker-compose.yaml` 文件: ```bash curl -LfO 'https://airflow.apache.org/docs/apache-airflow/2.2.5/docker-compose.yaml' ``` 创建 `.env` 文件用于定义环境变量: ```plaintext AIRFLOW_UID=$(id -u) AIRFLOW_GID=0 ``` 初始化数据库和其他必要的准备工作: ```bash docker compose up airflow-init ``` 当终端显示类似于下面的日志信息时即表示安装完成: ``` airflow-init_1 | Upgrades done airflow-init_1 | Admin user airflow created airflow-init_1 | 2.2.5 start_airflow-init_1 exited with code 0 ``` #### 启动Airflow服务 继续使用 Docker Compose 启动所有相关容器和服务: ```bash docker compose up ``` 访问 WebUI,默认地址为 http://localhost:8080 ,初始用户名密码均为 `airflow`。 #### 配置调度器 关于 Airflow 调度器的作用及其重要性,在一篇技术博客中有详细的解释[^2]。它作为核心组件之一,主要职责在于管理和触发工作流程中的各项任务。要让这些任务按预期顺序自动执行,需正确调整调度参数以适应特定需求。 针对不同规模的应用场景可以选择不同的 Executor 类型;例如小型项目可以直接选用 LocalExecutor 执行器[^3],而对于更复杂的生产环境则可能更适合 CeleryExecutor 或 KubernetesExecutor 这样的分布式解决方案。 #### 设置任务计划 编辑 DAG (Directed Acyclic Graph) 文件定义具体的作业逻辑。每一个 DAG 实际上就是一个 Python 脚本文件,放置于 `$AIRFLOW_HOME/dags` 目录下即可被识别加载。更多细节参见官方文档说明。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值