无法从 Dataproc Sparkjob 访问 GCP Access Secret Manager

问题描述 投票:0回答:2

我正在尝试从 dataproc Spark 作业中获取 GCP 秘密管理器秘密。但我收到错误“线程“main”java.lang.NoClassDefFoundError 中的异常:com/google/cloud/secretmanager/v1/AccessSecretVersionResponse”。 我已在 dataproc Spark 作业依赖项中添加了 jar“google-cloud-secretmanager-1.4.2.jar”和“gax-1.62.0.jar”。

我正在使用下面的 GCP 链接中提到的代码。 https://cloud.google.com/secret-manager/docs/reference/libraries

我在这里遗漏了什么吗?

google-cloud-platform google-cloud-dataproc google-secret-manager
2个回答
1
投票

2.0-debian10 安装了 python >= 3.0。 google-cloud-secretmanager-1.4.2.jar 不支持 python >= 3.0 (https://pypi.org/project/google-cloud-secret-manager/1.0.0/)。请使用更高版本的 google-cloud-secretmanager。


0
投票

这是一个更新,但它可以帮助其他人并节省一些时间。 Dataproc 最近推出了一项功能,可使用 hadoop 凭证提供程序 API 访问 GCP Secret Manager 服务中存储的凭证。您可以通过在sparkconf中设置属性将其集成到您的spark作业中 -

spark.hadoop.hadoop.security.credential.provider.path=gsm://projects/<project-id>
。更多详细信息请访问 https://cloud.google.com/dataproc/docs/guides/hadoop-google-secret-manager-credential-provider

© www.soinside.com 2019 - 2024. All rights reserved.