Airflow 峰会 2025 将于 10 月 07-09 日举行。立即注册以获取早鸟票!

工作负载

本主题介绍如何配置 Airflow 以保护您的工作负载。

模拟

Airflow 能够根据任务的 run_as_user 参数(该参数接受用户名)在运行任务实例时模拟 Unix 用户。

注意:为了使模拟正常工作,Airflow 需要 sudo,因为子任务会使用 sudo -u 运行,并且会更改文件的权限。此外,该 Unix 用户需要存在于 worker 上。以下是一个简单的 sudoers 文件条目,可以实现此目的,假设 airflow 用户正在运行 Airflow。这意味着 airflow 用户必须是受信任的,并与 root 用户享有同等待遇。

airflow ALL=(ALL) NOPASSWD: ALL

进行模拟的子任务仍将日志记录到同一文件夹中,不同之处在于,日志文件的权限会更改,以便只有该 Unix 用户才能写入。

默认模拟

为了防止不使用模拟的任务以 sudo 权限运行,您可以设置 core:default_impersonation 配置,该配置会在未设置 run_as_user 时设置一个默认的用户进行模拟。

[core]
default_impersonation = airflow

此条目有帮助吗?