步驟 6:設定 Hybrid 執行階段

指定設定覆寫

Apigee Hybrid 安裝程式會為許多設定使用預設值,但有幾項設定沒有預設值。您必須提供這些設定的值,詳情請見下文。

  1. 請務必位於 hybrid-base-directory/hybrid-files/overrides/ 目錄。
    cd hybrid-base-directory/hybrid-files/overrides
  2. 使用慣用的文字編輯器建立名為 overrides.yaml 的新檔案。例如:
    vi overrides.yaml

    overrides.yaml 提供專屬 Apigee Hybrid 安裝作業的設定。這個步驟中的覆寫檔案提供小型混合式執行階段安裝的基本設定,適合首次安裝。

  3. overrides.yaml 中,新增下列必要屬性值。以下也詳細說明各項屬性:

    語法

    請確認 overrides.yaml 檔案的結構和語法如下。 red, bold italics 中的值是您必須提供的屬性值。詳情請參閱下表

    Google Cloud 專案區域和 Kubernetes 叢集區域在不同平台之間有所差異。選擇要安裝 Apigee Hybrid 的平台。

    gcp:
      region: analytics-region
      projectID: gcp-project-id
    
    k8sCluster:
      name: cluster-name
      region: analytics-region # Must be the closest Google Cloud region to your cluster
    org: org-name
    
    instanceID: "unique-instance-identifier"
    
    cassandra:
      hostNetwork: false #Set this to `true` for GKE On-prem installations.
    
    virtualhosts:
      - name: environment-group-name
        sslCertPath: ./certs/cert-name.pem
        sslKeyPath: ./certs/key-name.key
    
    envs:
      - name: environment-name
        serviceAccountPaths:
          synchronizer: ./service-accounts/synchronizer-service-account-name.json
          udca: ./service-accounts/udca-service-account-name.json
    
    mart:
      serviceAccountPath: ./service-accounts/mart-service-account-name.json
    
    connectAgent:
      serviceAccountPath: ./service-accounts/mart-service-account-name.json
      # Same account used for mart and connectAgent
    
    metrics:
      serviceAccountPath: ./service-accounts/metrics-service-account-name.json
    
    watcher:
      serviceAccountPath: ./service-accounts/watcher-service-account-name.json
    
    logger:
      enabled: true # set to "false" for GKE.
      serviceAccountPath: ./service-accounts/logger-service-account-name.json
    

    範例

    以下範例顯示已完成的覆寫檔案,並新增了範例屬性值:

    gcp:
      region: us-central1
      projectID: hybrid-example
    
    k8sCluster:
      name: apigee-hybrid
      region: us-central1
    
    org: hybrid-example
    
    instanceID: "my_hybrid_example"
    
    cassandra:
      hostNetwork: false # Set this to:
                         #   false for GKE installations.
                         #   true for GKE On-prem GKE on AWS, Anthos on bare metal,
                         #            AKS, EKS, and OpenShift installations.
    
    virtualhosts:
      - name: example-env-group
        sslCertPath: ./certs/keystore.pem
        sslKeyPath: ./certs/keystore.key
    
    envs:
      - name: test
        serviceAccountPaths:
          synchronizer: ./service-accounts/hybrid-project-apigee-synchronizer.json
          udca: ./service-accounts/hybrid-project-apigee-udca.json
    
    mart:
      serviceAccountPath: ./service-accounts/hybrid-project-apigee-mart.json
    
    connectAgent:
      serviceAccountPath: ./service-accounts/example-hybrid-apigee-mart.json
    
    metrics:
      serviceAccountPath: ./service-accounts/hybrid-project-apigee-metrics.json
    
    watcher:
      serviceAccountPath: ./service-accounts/hybrid-project-apigee-watcher.json
    
    logger:
      enabled: true # set to "false" for GKE.
      serviceAccountPath: ./service-accounts/logger-service-account-name.json
    
    
  4. 完成後,請儲存檔案。

下表說明您必須在覆寫檔案中提供的每個屬性值。詳情請參閱「設定屬性參考資料」。

變數 說明
analytics-region 在 GKE 中,您必須將這個值設為叢集執行的相同區域。在所有其他平台中,請選取最接近叢集且支援 Analytics 的數據分析區域 (請參閱「第 1 部分:步驟 4:建立機構」中的表格)。

這是您先前指派給環境變數 ANALYTICS_REGION 的值。

gcp-project-id 識別 apigee-loggerapigee-metrics 將資料推送至的 Google Cloud 專案。這是指派給環境變數 PROJECT_ID 的值。
cluster-name Kubernetes 叢集名稱。這是指派給環境變數 CLUSTER_NAME 的值。
org-name Apigee Hybrid 機構的 ID。這是指派給環境變數 ORG_NAME 的值。
unique-instance-identifier

這個執行個體的專屬字串。可以混合使用英文字母和數字,長度上限為 63 個字元。

您可以在同一個叢集中建立多個機構,但instanceId必須與同一個 Kubernetes 叢集中的所有機構相同。
environment-group-name 環境所屬環境群組的名稱。這是您在「專案和機構設定 - 步驟 6:建立環境群組」中建立的群組。這是指派給環境變數 ENV_GROUP 的值。
cert-name
key-name
輸入您先前在「步驟 3:安裝 apigeectl」中產生的自行簽署 TLS 金鑰和憑證檔案名稱。 這些檔案必須位於 base_directory/hybrid-files/certs 目錄中。例如:
sslCertPath: ./certs/keystore.pem
sslKeyPath: ./certs/keystore.key
environment-name 請使用您在使用者介面中建立環境時使用的名稱,如「專案和機構設定 - 步驟 6:建立環境群組」一文所述。
synchronizer-service-account-name 您使用 create-service-account 工具在「混合式執行階段設定 - 步驟 6:建立服務帳戶和憑證」中產生的 apigee-synchronizer 服務帳戶金鑰檔案名稱。您可以在 service-accounts/ 目錄中查看服務帳戶檔案清單。例如:
ls ../service-accounts/
udca-service-account-name 您使用 create-service-account 工具產生的 apigee-udca 服務帳戶金鑰檔案名稱。
mart-service-account-name 您使用 create-service-account 工具產生的 apigee-mart 服務帳戶金鑰檔案名稱。
metrics-service-account-name 您使用 create-service-account 工具產生的 apigee-metrics 服務帳戶金鑰檔案名稱。
watcher-service-account-name 您使用 create-service-account 工具產生的 apigee-watcher 服務帳戶金鑰檔案名稱。
logger-service-account-name 您使用 create-service-account 工具產生的 apigee-logger 服務帳戶金鑰檔案名稱。

摘要

設定檔會告訴 Kubernetes 如何將混合式元件部署至叢集。接下來,您會將這項設定套用至叢集。

1 2 3 4 5 6 (下一步) 步驟 7:安裝混合式執行階段