create-service-account

使用具备允许各个 Apigee 混合组件进行已获授权的 API 调用的角色来创建 Google Cloud Platform (GCP) 服务帐号并下载关联的服务帐号密钥文件。您可以在配置替换文件中使用此命令生成的服务帐号密钥文件。

create-service-account 工具位于 hybrid_root_dir/tools 目录中。

前提条件

create-service-account 工具要求安装 gcloud CLI。调用该实用程序的用户应具有 Service Account Admin 角色。

如需开始使用,请确保将 gcloud 项目配置设置为您在第 2 步:创建 Google Cloud 项目中创建的项目:

gcloud config list project

如果需要更改当前项目 ID,请使用以下命令:

gcloud config set project gcp_project_id

其中,gcp_project_id 是在第 2 步:创建 Google Cloud 项目中创建的项目。

create-service-account 语法

create-service-account 工具使用以下语法:

create-service-account component-name output-dir [gcp_project_id]

其中:

  • hybrid_service:指定使用该服务帐号的混合服务。有效值包括:
    • apigee-cassandra
    • apigee-logger
    • apigee-mart
    • apigee-metrics
    • apigee-synchronizer
    • apigee-udca

    请注意,create-service-account 工具无法创建 apigee-org-admin 服务帐号。您必须使用 GCP 或 gCloud API 来创建服务帐号,如创建服务帐号中所述。

  • output_dir:用于存储下载的服务帐号密钥的输出目录。
  • gcp_project_id:(可选)指定绑定到支持混合的组织的项目的 GCP 项目 ID。如果未提供 GCP 项目 ID,则该工具会尝试从当前 gcloud 配置中检索此 ID。

详细说明

create-service-account 工具会执行以下操作:

  • 创建混合组件使用的 GCP 服务帐号。系统将向创建的服务帐号授予特定组件工作所需的权限。
  • 将服务帐号密钥下载到您的系统中。按照混合安装说明中所述,将服务帐号密钥放入混合配置替换文件中。

该工具会为以下组件创建服务帐号:

组件* 角色 基本安装的必须组件? 说明
apigee-cassandra Storage Object Admin 允许将 Cassandra 备份到 Google Cloud Storage,如备份和恢复中所述。
apigee-logger Logs Writer 允许收集日志记录数据,如 Logging 中所述。只有在安装非 GKE 集群时才需要。
apigee-mart 无角色 允许 MART 服务身份验证。此服务帐号不应具有与其关联的角色;因此,在创建此服务帐号时,请勿为其分配角色。
apigee-metrics Monitoring Metric Writer 允许收集指标数据,如指标收集中所述
apigee-org-admin Apigee Organization Admin 允许您调用 getSyncAuthorization APIsetSyncAuthorization API。您无法使用 create-service-account 工具创建此服务帐号。
apigee-synchronizer Apigee Synchronizer Manager 允许同步器下载代理软件包和环境配置数据。同时启用跟踪记录功能。
apigee-udca Apigee Analytics Agent 允许将跟踪记录、分析和部署状态数据转移到管理平面。
* 此名称在下载的服务帐号密钥的文件名中使用。

您还可以在 GCP Console 中创建服务帐号。另请参阅创建和管理服务帐号

示例

以下示例为 apigee-logger 服务创建新的服务帐号,并将下载的密钥放在 ./service-accounts 目录中。

./my-hybrid-root/tools/create-service-account apigee-logger ./service-accounts