步驟 5:建立服務帳戶和憑證

本步驟說明如何建立 Apigee hybrid 運作所需的 Google Cloud 服務帳戶和 TLS 憑證。

建立服務帳戶

Apigee hybrid 會使用 Google Cloud 服務帳戶,讓混合式元件透過已授權的 API 呼叫進行通訊。

在這個步驟中,您會使用 Apigee 混合指令列工具建立一組服務帳戶,並下載服務帳戶私密金鑰檔案。

如要進一步瞭解服務帳戶,並查看建議用於實際工作環境的服務帳戶完整清單,請參閱以下內容:

Apigee 提供 create-service-account 工具,可用於建立服務帳戶、為服務帳戶指派角色,並在單一指令中建立及下載服務帳戶的金鑰檔案。如要瞭解相關的 Google Cloud 概念,請參閱「建立及管理服務帳戶」和「建立及管理服務帳戶金鑰」。

  1. 請確認您位於「設定專案目錄結構」中設定的 base_directory/hybrid-files 目錄。
  2. 請在 hybrid-files 目錄中執行下列指令。這個指令會為 apigee-metrics 元件建立服務帳戶,並將下載的金鑰放在 ./service-accounts 目錄中。
    ./tools/create-service-account apigee-metrics ./service-accounts

    看到下列提示時,請輸入 y

    [INFO]: gcloud configured project ID is project_id.
     Press: y to proceed with creating service account in project: project_id
     Press: n to abort.

    如果這是第一次建立工具指派的確切名稱 SA,則工具只會建立 SA,您不必再採取任何行動。

    不過,如果您看到下列訊息和提示,請輸入 y 來產生新的金鑰:

    [INFO]: Service account apigee-metrics@project_id.iam.gserviceaccount.com already exists.
    ...
     [INFO]: The service account might have keys associated with it. It is recommended to use existing keys.
     Press: y to generate new keys.(this does not de-activate existing keys)
     Press: n to skip generating new keys.
    
  3. 接著,請使用下列指令建立其他服務帳戶。create-service-account 指令為互動式,需要針對每個帳戶提供回應。
    ./tools/create-service-account apigee-synchronizer ./service-accounts
    ./tools/create-service-account apigee-udca ./service-accounts
    ./tools/create-service-account apigee-mart ./service-accounts
    ./tools/create-service-account apigee-cassandra ./service-accounts
    ./tools/create-service-account apigee-logger ./service-accounts
    ./tools/create-service-account apigee-watcher ./service-accounts
    ./tools/create-service-account apigee-distributed-trace ./service-accounts
  4. 請使用下列指令,確認服務帳戶金鑰已建立。您必須妥善儲存這些私密金鑰。鍵檔案名稱的前面會加上 Google Cloud 專案名稱。
    ls ./service-accounts

    結果應如下所示:

    gcp-project-id-apigee-cassandra.json
    gcp-project-id-apigee-distributed-trace.json
    gcp-project-id-apigee-logger.json
    gcp-project-id-apigee-mart.json
    gcp-project-id-apigee-metrics.json
    gcp-project-id-apigee-synchronizer.json
    gcp-project-id-apigee-udca.json
    gcp-project-id-apigee-watcher.json

建立傳輸層安全標準 (TLS) 憑證

您必須在 Apigee 混合型設定中,為執行階段入口網關提供 TLS 憑證。為了讓這個快速入門 (非實際工作環境的試用安裝) 順利進行,執行階段閘道可接受自行簽署的憑證。在下列步驟中,我們會使用 openssl 產生自行簽署的憑證。

在這個步驟中,您將建立 TLS 憑證檔案,並將這些檔案新增至 base_directory/hybrid-files/certs 目錄。在步驟 6:設定叢集中,您會將檔案路徑新增至叢集設定檔。

  1. 請確認您位於「設定專案目錄結構」一文中設定的 base_directory/hybrid-files 目錄。
  2. 請務必使用下列指令,將網域名稱儲存至 DOMAIN 環境變數:
    echo $DOMAIN
  3. 請在 hybrid-files 目錄中執行下列指令:
    openssl req  -nodes -new -x509 -keyout ./certs/keystore.key -out \
        ./certs/keystore.pem -subj '/CN='$DOMAIN'' -days 3650

    其中 DOMAIN 與您在第 1 部分,步驟 5:建立環境群組中使用的環境相同。

    這個指令會建立自行簽署的憑證/金鑰組,可用於快速入門安裝作業。

  4. 使用下列指令,確認檔案是否位於 ./certs 目錄中:
    ls ./certs
      keystore.pem
      keystore.key

    其中 keystore.pem 是自行簽署的 TLS 憑證檔案,而 keystore.key 則是金鑰檔案。

您現在已擁有在 Kubernetes 叢集中管理 Apigee hybrid 所需的服務帳戶和憑證。接下來,您將建立檔案,供 Kubernetes 用於將混合式執行階段元件部署至叢集。

1 2 3 4 5 5 (NEXT) 步驟 6:設定混合式執行階段 7