【问题标题】:How to change max duration or refresh AWS session in Airflow 2.0如何在 Airflow 2.0 中更改最大持续时间或刷新 AWS 会话
【发布时间】:2022-02-11 07:34:37
【问题描述】:

当我们在 AWS 连接中额外使用假设角色时,我们能否在 Apache Airflow v 2.0.2 中增加 AWS 的会话持续时间或刷新会话?

{
  "role_arn": "arn:aws:iam::xxx:role/airflow-connection-role",
  "region_name": "ap-southeast-1"
}

我了解默认最长持续时间为 1 小时,并且 Airflow 2.1 支持可刷新凭据。

但我目前在 MWAA(Amazon Managed Workflows for Apache Airflow)中使用 Airflow v2.0.2。所以我们不能使用上面的选项。

【问题讨论】:

    标签: amazon-web-services airflow airflow-2.x


    【解决方案1】:

    在 apache-airflow-providers-amazon==1.3.0 中,AwsBaseHook 将使用 kwargs 担任该角色。在你的连接中设置extras

    {
      "role_arn": "arn:aws:iam::xxx:role/airflow-connection-role",
      "region_name": "ap-southeast-1",
      "assume_role_kwargs": "{ 'DurationSeconds': 7200 }"
    }
    

    在您引用的问题中,有一条评论说

    在深入研究代码后,#7619 似乎引入了为假设角色函数调用设置任意 kwargs 的能力。

    这是 Airflow 中支持这一点的行。 https://github.com/apache/airflow/blob/0823d46a7f267f2e45195a175021825367938add/airflow/providers/amazon/aws/hooks/base_aws.py#L92 https://github.com/apache/airflow/blob/0823d46a7f267f2e45195a175021825367938add/airflow/providers/amazon/aws/hooks/base_aws.py#L172

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-06-05
      • 1970-01-01
      • 1970-01-01
      • 2016-07-05
      • 1970-01-01
      • 2019-01-09
      • 1970-01-01
      相关资源
      最近更新 更多