使用具备允许各个 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-cassandraapigee-distributed-traceapigee-loggerapigee-martapigee-metricsapigee-synchronizerapigee-udcaapigee-watcher
请注意,
create-service-account工具无法创建apigee-org-admin服务账号。您必须使用gcloudAPI 来创建该服务账号,如创建服务账号中所述。 - OUTPUT_DIR:用于存储下载的服务账号密钥的输出目录。
- GCP_PROJECT_ID:(可选)指定绑定到支持 Hybrid 的组织的项目的 Google Cloud 项目 ID。如果未提供 Google Cloud 项目 ID,则该工具会尝试从当前
gcloud配置中检索此 ID。
详细说明
create-service-account 工具会执行以下操作:
- 创建 Hybrid 组件使用的 Google Cloud 服务账号。系统将向创建的服务账号授予特定组件工作所需的权限。
- 将服务账号密钥下载到您的系统中。按照混合安装说明中所述,将服务账号密钥放入混合配置替换文件中。
该工具会为以下组件创建服务账号:
| 组件* | 角色 | 基本安装的必须组件? | 说明 |
|---|---|---|---|
apigee-cassandra |
Storage Object Adminroles/storage.objectAdmin |
允许将 Cassandra 备份到 Cloud Storage,如备份和恢复中所述。 | |
apigee-distributed-trace |
Cloud Trace Agentroles/cloudtrace.agent |
允许 Hybrid 运行时层面使用与 Google Cloud Trace 和 Jaeger 等系统兼容的格式参与分布式请求跟踪。 | |
apigee-logger |
Logs Writerroles/logging.logWriter |
允许收集日志记录数据,如 Logging 中所述。只有在安装非 GKE 集群时才需要。 | |
apigee-mart |
Apigee Connect Agentroles/apigeeconnect.Agent |
允许 MART 服务身份验证。Apigee Connect Agent 角色允许其与 Apigee Connect 进程进行安全通信,如使用 Apigee Connect 中所述。 | |
apigee-metrics |
Monitoring Metric Writerroles/monitoring.metricWriter |
允许收集指标数据,如指标收集概览中所述 | |
apigee-synchronizer |
Apigee Synchronizer Managerroles/apigee.synchronizerManager |
允许同步器下载代理软件包和环境配置数据。同时启用跟踪记录功能。 | |
apigee-udca |
Apigee Analytics Agentroles/apigee.analyticsAgent |
允许将跟踪记录、分析和部署状态数据转移到管理平面。 | |
apigee-watcher |
Apigee Runtime Agentroles/apigee.runtimeAgent |
Apigee Watcher 会从同步器中拉取组织的虚拟主机相关更改,并进行必要更改以配置 Istio Ingress。 | |
| * 此名称在下载的服务账号密钥的文件名中使用。 | |||
您还可以在 Google Cloud 控制台中创建服务账号。另请参阅创建和管理服务账号。
示例
以下示例为 apigee-logger 服务创建新的服务账号,并将下载的密钥放在 ./service-accounts 目录中。
./my-hybrid-root/tools/create-service-account apigee-logger ./service-accounts