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

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

建立服務帳戶

Apigee Hybrid 會使用 Google Cloud 服務帳戶,允許 Hybrid 元件透過發出已授權的 API 呼叫進行通訊。

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

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

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,工具會直接建立,您不必採取任何行動。

    不過,如果看到下列訊息和提示,請輸入 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 Hybrid 設定中,為執行階段 Ingress 閘道提供 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 (NEXT) Step 6: Configure the hybrid runtime 7