You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置Airflow RedshiftDataOperator的AWS连接?

RedshiftDataOperator 所需的 Airflow 连接配置说明

你遇到的UnrecognizedClientException错误,核心原因是原有的redshift_default是Postgres类型连接,而RedshiftDataOperator依赖AWS类型连接,两者凭证格式不兼容导致请求无效。

以下是RedshiftDataOperator要求的连接配置步骤:

1. 创建/配置AWS类型连接

在Airflow UI的「Admin > Connections」页面,创建或修改连接:

  • Conn Type:必须选择「Amazon Web Services」(不要选Postgres)
  • Conn Id:可自定义(比如aws_redshift_data,也可覆盖原redshift_default但建议分开管理)
  • Login:填写AWS Access Key ID(如果使用IAM用户凭证)
  • Password:填写AWS Secret Access Key(对应上面的Access Key ID)
  • Extra:以JSON格式补充额外配置,必填项为AWS区域(如果Operator参数没指定region):
    {"region_name": "ap-southeast-1"}
    
    若使用IAM角色(如Airflow所在服务器的实例角色、K8s Pod角色),可留空Login和Password,Airflow会自动从环境中获取角色凭证,Extra仍需指定区域。

2. 权限要求

使用的AWS凭证(IAM用户/角色)必须具备Redshift Data API相关权限,至少包含:

  • redshift-data:ExecuteStatement
  • redshift-data:GetStatementResult
  • 对应Redshift集群的访问权限(如redshift:DescribeClusters)

3. 调整任务代码

将aws_conn_id改为你配置的AWS类型连接ID,示例:

redshift_data_task = RedshiftDataOperator(
    task_id='redshift_data_task',
    database='rds',
    region='ap-southeast-1',
    aws_conn_id='aws_redshift_data',  # 替换为你的AWS连接ID
    sql="""
    call some_procedure();
    """
)

内容的提问来源于stack exchange,提问作者Azhar Izzannada E

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 13:55:28