使用具备允许各个 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 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