【问题标题】:An error occurred (403) when calling the HeadObject operation: Forbidden in airflow (2.0.0)+调用 HeadObject 操作时发生错误 (403): Forbidden in airflow (2.0.0)+
【发布时间】:2022-08-11 14:19:45
【问题描述】:

错误 -

*** Failed to verify remote log exists s3://airflow_test/airflow-logs/demo/task1/2022-05-13T18:20:45.561269+00:00/1.log.
An error occurred (403) when calling the HeadObject operation: Forbidden

Dockerfile -

FROM apache/airflow:2.2.3

COPY /airflow/requirements.txt /requirements.txt

RUN pip install --no-cache-dir -r /requirements.txt

RUN pip install apache-airflow[crypto,postgres,ssh,s3,log]

USER root

# Update aptitude with new repo
RUN apt-get update

# Install software 
RUN apt-get install -y git

USER airflow

在连接用户界面下 -

Connection Id *          - aws_s3_log_storage
Connection Type *        - S3
Host                     - <My company\'s internal link>. (ex - https://abcd.company.com)
Extra                    - {\"aws_access_key_id\": \"key\", \"aws_secret_access_key\": \"key\", \"region_name\": \"us-east-1\"}

在 values.yaml 下 -

config:
    logging:
        remote_logging: \'True\'
        remote_base_log_folder: \'s3://airflow_test/airflow-logs\'
        remote_log_conn_id: \'aws_s3_log_storage\'
        logging_level: \'INFO\'
        fab_logging_level: \'WARN\'
        encrypt_s3_logs: \'False\'
        host: \'<My company\'s internal link>. (ex - https://abcd.company.com)\'
        colored_console_log: \'False\'

我是如何创建存储桶的?

已安装 awscli

使用了命令-

1. aws configure
    AWS Access Key ID: <access key>

    AWS Secret Access Key: <secret key>

    Default region name: us-east-1

    Default output format: 

2. aws s3 mb s3://airflow_test --endpoint-url=<My company\'s internal link>. (ex - https://abcd.company.com)

我不知道如何解决该错误。我实际上对气流和舵图非常陌生。

  • An error occurred (403) when calling the HeadObject operation: Forbidden - 您的 AWS 访问密钥 ID 和 AWS 秘密访问密钥没有正确的权限。将您的目标 S3 存储桶的 s3:HeadObject 权限添加到您的 IAM 用户/角色。
  • 好的。谢谢你。我会试试这个。我还有一个疑问,在“host”键下的 values.yaml 文件中提供的公司内部链接(端点 url)是否有效?
  • 那是一个单独的问题,让我们先集中解决这个问题,然后如果您有更多问题,请随时打开一个新问题????

标签: amazon-s3 airflow airflow-scheduler airflow-2.x airflow-webserver


【解决方案1】:

我和你有同样的错误信息。您的帐户或密钥可能没有足够的权限访问 S3 存储桶。 请在下面检查您的角色是否有足够的权限。

"s3:PutObject*", "s3:PutObjectAcl", "s3:PutObjectVersionAcl", "s3:GetObject*", "s3:ListObject*", "s3:ListBucket*", "s3:PutBucket*", "s3:GetBucket*", “s3:删除对象

【讨论】:

    猜你喜欢
    • 2020-06-07
    • 2022-01-08
    • 2021-05-06
    • 1970-01-01
    • 2019-03-01
    • 1970-01-01
    • 2022-10-04
    • 2021-02-13
    • 2017-12-07
    相关资源
    最近更新 更多