Flink流作业无法连接到LocalStack S3

时间:2020-08-10 16:00:49

标签: amazon-s3 apache-flink flink-streaming localstack

我正在使用名为Localstack的产品在本地模拟Amazon S3,该产品充当Flink作业的流文件接收器。

在运行日志中,我可以看到Flink忽略了Localstack并尝试联系Amazon S3。

Received error response: org.apache.flink.fs.s3base.shaded.com.amazonaws.services.s3.model.AmazonS3Exception: Service Unavailable

Retrying Request: HEAD https://s3.amazonaws.com /testBucket/

在flink-conf.yaml中,我指定了以下配置属性:

s3.impl: org.apache.hadoop.fs.s3a.S3AFileSystem
s3.buffer.dir: ./tmp                           
s3.endpoint: localhost:4566
s3.path.style.access: true
s3.access-key: ***
s3.secret-key: ***

为什么Flink会忽略s3.endpoint

1 个答案:

答案 0 :(得分:1)

您的配置几乎是正确的,使用 localstack 时需要添加 http

s3.endpoint: http://localhost:4566

也许可以尝试使用额外的虚拟秘密作为环境变量:

AWS_ACCESS_KEY_ID=foo
AWS_SECRET_ACCESS_KEY=bar