【问题标题】:Apache Airflow Multi TenantApache Airflow 多租户
【发布时间】:2018-02-18 17:42:10
【问题描述】:

我正在尝试弄清楚 Airflow 如何在多租户环境中工作。具体来说,要求应如下所示:

  1. TeamA 和 TeamB 两个团队正在使用一个 Airflow 实例。
  2. 团队的 A 和 B 各有自己的服务用户帐户:serviceUserA 和 ServiceUserB,他们应该在这些帐户下运行他们的工作。
  3. 出于安全原因,团队 A 不应创建在 ServiceUserB 下运行的作业,反之亦然。

在这一点上,我不清楚要求 3. 是否可以通过 Airflow 来满足,除非给每个团队一个单独的 Airflow 实例。有什么方法可以实现吗?

【问题讨论】:

标签: airflow airflow-scheduler


【解决方案1】:

这取决于您对 气流实例 的含义。

您可以通过 systemctl 启动 2 组 Airflow 服务(webserver、scheduler、worker),每组都依赖于不同的 airflow.cfg。

在airflow.cfg 中,您可以将2 个组分开。

【讨论】:

【解决方案2】:

直到 Airflow 版本 1.9.0

用户仍然能够访问所有 dag 的原因是默认情况下它是 superuser。除非您使用 LDAP 进行身份验证,否则创建的所有用户都是超级用户,并且 Airflow 没有其他角色。

但是,如果您使用 LDAP,您可以拥有超级用户和数据分析器角色。

这应该会在即将发布的 Airflow 版本中有所改变。

正如文档所述 here:只有在使用 LDAP 身份验证时才能使用 webserver:filter_by_owner。因此,要实现多租户,您可以使用 LDAP 并将 superuser 权限仅授予管理员,而将 userdata_profiler 角色授予其他用户。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-10-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-25
    • 2018-05-07
    • 1970-01-01
    相关资源
    最近更新 更多