create-service-account

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

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 GC_PROJECT_ID

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

create-service-account 语法

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

create-service-account HYBRID_SERVICE OUTPUT_DIR [GC_PROJECT_ID]

其中:

  • HYBRID_SERVICE:指定使用该服务账号的混合服务。有效值包括:
    • apigee-cassandra
    • apigee-distributed-trace
    • apigee-logger
    • apigee-mart
    • apigee-metrics
    • apigee-synchronizer
    • apigee-udca
    • apigee-watcher

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

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

详细说明

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

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

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

组件* 角色 基本安装的必须组件? 说明
apigee-cassandra Storage Object Admin
roles/storage.objectAdmin
允许将 Cassandra 备份到 Cloud Storage,如备份和恢复中所述。
apigee-distributed-trace Cloud Trace Agent
roles/cloudtrace.agent
允许 Hybrid 运行时层面使用与 Google Cloud TraceJaeger 等系统兼容的格式参与分布式请求跟踪。
apigee-logger Logs Writer
roles/logging.logWriter
允许收集日志记录数据,如 Logging 中所述。只有在安装非 GKE 集群时才需要。
apigee-mart Apigee Connect Agent
roles/apigeeconnect.Agent
允许 MART 服务身份验证。Apigee Connect Agent 角色允许其与 Apigee Connect 进程进行安全通信,如使用 Apigee Connect 中所述。
apigee-metrics Monitoring Metric Writer
roles/monitoring.metricWriter
允许收集指标数据,如指标收集概览中所述
apigee-synchronizer Apigee Synchronizer Manager
roles/apigee.synchronizerManager
允许同步器下载代理软件包和环境配置数据。同时启用跟踪记录功能。
apigee-udca Apigee Analytics Agent
roles/apigee.analyticsAgent
允许将跟踪记录、分析和部署状态数据转移到管理平面。
apigee-watcher Apigee Runtime Agent
roles/apigee.runtimeAgent
Apigee Watcher 会从同步器中拉取组织的虚拟主机相关更改,并进行必要更改以配置 Istio Ingress。
* 此名称在下载的服务账号密钥的文件名中使用。

您还可以在 Google Cloud 控制台中创建服务账号。另请参阅创建和管理服务账号

示例

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

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