2.2. RHEL 镜像构建器如何对不同 GCP 凭证的身份验证顺序进行排序
您可以在 RHEL 镜像构建器中使用几种不同类型的凭证来使用 GCP 进行身份验证。如果 RHEL 镜像构建器配置被设置为使用多组凭证使用 GCP 进行身份验证,它会按以下首选顺序使用凭证:
-
在配置文件中,使用
composer-cli命令指定的凭证。 -
凭证在
osbuild-composerworker 配置中被配置。 Google GCP SDK库中的应用程序默认凭证,它尝试使用以下选项自动找到一个身份验证的方法:- 如果设置了 GOOGLE_APPLICATION_CREDENTIALS 环境变量,应用程序默认凭据会尝试加载并从文件中使用由变量指向的凭证。
应用默认凭据尝试使用附加到运行代码的资源的服务帐户进行身份验证。例如,Google Compute Engine 虚拟机。
注意您必须使用 GCP 凭证来决定将镜像上传到的 GCP 项目。因此,除非要将所有镜像上传到同一 GCP 项目,您必须使用
composer-cli命令指定gcp-config.toml配置文件中的凭证。
2.2.1. 使用 composer-cli 命令指定 GCP 凭证 复制链接链接已复制到粘贴板!
您可以在上传目标配置 gcp-config.toml 文件中指定 GCP 验证凭证。使用 Google 帐户凭证 JSON 文件的 Base64 编码方案来节省时间。
流程
运行以下命令,使用存储在
GOOGLE_APPLICATION_CREDENTIALS环境变量中的路径获取 Google 帐户凭证文件的编码内容:base64 -w 0 "${GOOGLE_APPLICATION_CREDENTIALS}"$ base64 -w 0 "${GOOGLE_APPLICATION_CREDENTIALS}"Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在上传目标配置
gcp-config.toml文件中,设置凭证:Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.2.2. 在 osbuild-composer worker 配置中指定凭证 复制链接链接已复制到粘贴板!
您可以将 GCP 身份验证凭据配置为全局用于 GCP 用于所有镜像构建。这样,如果您想要将镜像导入到同一 GCP 项目,那么可以对所有镜像使用相同的凭证来上传到 GCP。
流程
在
/etc/osbuild-worker/osbuild-worker.tomlworker 配置中,设置以下凭证值:[gcp] credentials = "PATH_TO_GCP_ACCOUNT_CREDENTIALS"
[gcp] credentials = "PATH_TO_GCP_ACCOUNT_CREDENTIALS"Copy to Clipboard Copied! Toggle word wrap Toggle overflow