建立 Google Cloud Platform 服務帳戶,並設定角色,讓個別 Apigee 混合元件能夠發出授權的 API 呼叫,並下載相關聯的服務帳戶金鑰檔案。您可以在設定覆寫檔案中使用此指令產生的服務帳戶金鑰檔案。
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服務帳戶。您必須使用gcloudAPI 建立服務帳戶,如「建立服務帳戶」一節所述。
- OUTPUT_DIR:用於儲存已下載服務帳戶金鑰的輸出目錄。
- GCP_PROJECT_ID:(選用) 指定已綁定至啟用混合式功能的機構的專案 Google Cloud 專案 ID。如果未提供 Google Cloud 專案 ID,工具會嘗試從目前的 gcloud設定中擷取。
詳細說明
create-service-account 工具:
- 建立混合式元件使用的 Google Cloud 服務帳戶。系統會將特定元件執行作業所需的角色授予所建立的服務帳戶。
- 將服務帳戶金鑰下載至系統。請將服務帳戶金鑰放入混合型設定覆寫檔案中,如混合型安裝操作說明所述。
這項工具會為下列元件建立服務帳戶:
| 元件* | 角色 | 是否為基本安裝作業所需? | 說明 | 
|---|---|---|---|
| apigee-cassandra | Storage 物件管理員 roles/storage.objectAdmin | 允許將 Cassandra 備份儲存至 Cloud Storage,如備份與復原一文所述。 | |
| apigee-distributed-trace | Cloud Trace 代理程式 roles/cloudtrace.agent | 允許混合式執行階段平面參與分散式要求追蹤,並以與 Google Cloud Trace 和 Jaeger 等系統相容的格式進行。 | |
| apigee-logger | 記錄寫入者 roles/logging.logWriter | 允許記錄資料收集,如「記錄」一節所述。僅適用於非 GKE 叢集安裝作業。 | |
| apigee-mart | Apigee Connect 代理人 roles/apigeeconnect.Agent | 允許 MART 服務驗證。Apigee Connect Agent 角色可讓 Apigee Connect 與 Apigee Connect 程序安全地通訊,詳情請參閱「使用 Apigee Connect」一文。 | |
| apigee-metrics | Monitoring 指標寫入者 roles/monitoring.metricWriter | 允許收集指標資料,如「指標收集總覽」所述。 | |
| apigee-synchronizer | Apigee 同步處理工具管理員 roles/apigee.synchronizerManager | 允許同步器下載 Proxy 套件和環境設定資料。也會啟用追蹤功能的運作。 | |
| apigee-udca | Apigee 數據分析代理人 roles/apigee.analyticsAgent | 允許將追蹤、分析和部署狀態資料傳輸至管理層。 | |
| apigee-watcher | Apigee 執行階段代理人 roles/apigee.runtimeAgent | Apigee Watcher 會從同步器中提取機構的虛擬主機相關變更,並進行必要變更來設定 Istio ingress。 | |
| * 這個名稱會用於下載的服務帳戶金鑰檔案名稱。 | |||
您也可以在 Google Cloud 控制台中建立服務帳戶。另請參閱「建立及管理服務帳戶」。
範例
以下範例會為 apigee-logger 服務建立新的服務帳戶,並將下載的金鑰放在 ./service-accounts 目錄中。
./my-hybrid-root/tools/create-service-account apigee-logger ./service-accounts