当前位置: 首页 > 知识库问答 >
问题:

将 AWS 凭证传递给谷歌云数据流,蟒蛇

施驰
2023-03-14

我在Google Cloud Platform上使用Python中的Google Cloud Dataflow实现。我的想法是使用来自AWS S3的输入。

谷歌云数据流(基于Apache Beam)支持从S3读取文件。然而,我在文档中找不到将凭证传递给作业的最佳可能性。我尝试将AWS_ACCESS_KEY_ID和AWS_ SECRET_ACCESS_KEY添加到安装程序中的环境变量中。py文件。然而,它在本地工作,但当我将云数据流作业打包为模板并触发它在GCP上运行时,它有时工作,有时不工作,引发“NoCredentialsError”异常并导致作业失败。

有没有一致的、最佳实践的解决方案来将AWS凭证传递给GCP上的Python Google Cloud Dataflow作业?

共有1个答案

昝枫
2023-03-14

配置此选项已最终添加。它们可在2.26.0之后的Beam版本上使用。

管道选项为 --s3_access_key_id--s3_secret_access_key

不幸的是,Beam 2.25.0版本和更早版本没有很好的方法来做到这一点,除了以下内容:

在这个线程中,用户了解了如何在<code>设置中执行此操作。py文件,它们提供给管道中的数据流。

 类似资料:
  • 我使用部署到pivotal cloud foundry的spring云数据流,将spring批处理作业作为spring云任务运行,这些作业需要aws凭据才能访问s3存储桶。 我尝试将aws凭据作为任务属性传递,但凭据作为参数或属性显示在任务的日志文件中。(https://docs.spring.io/spring-cloud-dataflow/docs/current/reference/html

  • 我正在尝试使用谷歌云数据流将谷歌PubSub消息写入谷歌云存储。PubSub消息采用json格式,我要执行的唯一操作是从json到parquet文件的转换。

  • 问题内容: 我有一个运行Jenkins的节点,该节点使用Maven构建代码。Jenkins作业是声明性管道脚本。Maven需要从需要证书才能访问的私有存储库中下载依赖项。凭证存储在Jenkins凭证管理器中。 我如何将这些凭据传递给Maven,以便Maven可以使用这些凭据从私有存储库正确下载依赖项。 问题答案: 通过将Jenkins凭证注入您的环境,然后将这些凭证传递给Maven,您可以使用Je

  • 当我运行Dataflow作业时,它会将我的小程序包(setup.py或requirements.txt)上传到Dataflow实例上运行。 但是数据流实例上实际运行的是什么?我最近收到了一个stacktrace: 但从理论上讲,如果我在做,这意味着我可能没有运行这个Python补丁?你能指出这些作业正在运行的docker图像吗,这样我就可以知道我使用的是哪一版本的Python,并确保我没有在这里找

  • 我需要使用信任存储在谷歌云数据流中建立SSLKafka连接。我可以从存储桶提供它,还是有没有办法将其存储在“本地文件系统”上?