ステップ 3: GKE on-prem ユーザー クラスタを構成する

構成のオーバーライドを指定する

Apigee ハイブリッド インストーラは、多くの設定でデフォルト値を使用しますが、デフォルト値がない設定もいくつかあります。次の説明に従って、それらの設定の値を指定してください。

  1. hybrid-base-directory/hybrid-files ディレクトリに移動します。
  2. overrides-small.yaml ファイルを $APIGEECTL_HOME/examples ディレクトリから overrides ディレクトリにコピーします。
    cp $APIGEECTL_HOME/examples/overrides-small.yaml ./overrides/overrides.yaml

    このサンプル ファイルは、省スペース型のハイブリッド ランタイム インストール用の基本構成を提供します。この構成は最初のインストールに適しています。

  3. cd コマンドで overrides ディレクトリに移動します。
  4. cd overrides
  5. overrides.yaml を開いて、以下に示す必須のプロパティ値を追加します。各プロパティの詳細な説明も記載しています。

    構文

    overrides.yaml ファイルの構造と構文は次のとおりです。赤い太字の斜体で示した値は必須のプロパティ値です。詳細については、下記の表もご覧ください。

    gcp:
      region: gcp-region
      projectID: gcp-project-id
    
    k8sCluster:
      name: cluster-name
      region: cluster-region
    
    org: org-name
    
    virtualhosts:
      - name: virtual-host-name
        hostAliases:
          - "host-alias-1"
          - "host-alias-2"
          - "host-alias-n"
        sslCertPath: ./certs/test-cert-name.pem
        sslKeyPath: ./certs/test-key-name.key
        routingRules:
          - paths:
            - /path1
            - /path2
            - /pathn
            env: environment-name
    
    envs:
      - name: environment-name          # The same name of the env you created in the UI
        serviceAccountPaths:
          synchronizer: ./service-accounts/synchronizer-service-account-name.json
          udca: ./service-accounts/udca-service-account-name.json
    
    mart:
      hostAlias: mart-host-alias
      serviceAccountPath: ./service-accounts/mart-service-account-name.json
      sslCertPath: ./certs/mart-cert-name.pem
      sslKeyPath: ./certs/mart-key-name.key
    
    cassandra:
      hostNetwork: true
      dnsPolicy: ClusterFirstWithHostNet
    
    ingress:
      runtime:
        loadBalancerIP: virtual_IP_runtime
      mart:
        loadBalancerIP: virtual_IP_mart
    
    metrics:
      serviceAccountPath: ./service-accounts/metrics-service-account-name.json
    
    logger:
      enabled: false

    以下の例は、サンプル プロパティ値の追加が完了したオーバーライド ファイルを示しています。

    gcp:
      region: us-central1
      projectID: my-gcp-project
    
    k8sCluster:
      name: apigee-hybrid
      region: us-central1
    
    org: hybrid-org
    
    virtualhosts:
      - name: default
        hostAliases:
          - "*.acme.com"
        sslCertPath: ./certs/keystore.pem
        sslKeyPath: ./certs/keystore.key
        routingRules:
          - paths:
            - /foo
            - /bar
            env: test
    
    envs:
      - name: test
        serviceAccountPaths:
          synchronizer: ./service-accounts/hybrid-project-apigee-synchronizer.json
          udca: ./service-accounts/hybrid-project-apigee-udca.json
    
    mart:
      hostAlias: "mart.apigee-hybrid-docs.net"
      serviceAccountPath: ./service-accounts/hybrid-project-apigee-mart.json
      sslCertPath: ./certs/fullchain.pem
      sslKeyPath: ./certs/privkey.key
    
    cassandra:
      hostNetwork: true
      dnsPolicy: ClusterFirstWithHostNet
    
    ingress:
      runtime:
        loadBalancerIP: 21.0.124.13
      mart:
        loadBalancerIP: 21.0.124.14
    
    metrics:
      serviceAccountPath: ./service-accounts/hybrid-project-apigee-metrics.json
    
    logger:
      enabled: false
  6. 完了したら、ファイルを保存します。

次の表は、オーバーライド ファイルで指定する必要がある各プロパティ値を示しています。詳細については、構成プロパティのリファレンスをご覧ください。

変数 説明
project-id GCP プロジェクトの ID。
cluster-name Kubernetes クラスタ名。
cluster-region クラスタが作成されたリージョン
org-name Apigee ハイブリッド組織の名前。
environment-name ステップ 5: ハイブリッド UI で新しい環境を追加するの説明に従って、UI で環境を作成したときと同じ名前を使用します。
test-host-alias

(必須)クイックスタートでは、ワイルドカード文字「*」を使用します。

*」の使用は、自己署名 TLS 認証情報を使用する場合の試用版インストールでのみ推奨されます。後で、より複雑な Apigee ハイブリッド構成を開発する場合は(複数の環境を作成するなど)、この値に修飾ドメイン名を使用する必要があります。

test-cert-name
test-key-name
前にランタイム ゲートウェイ用の TLS 認証情報を作成するステップで生成した自己署名 TLS 鍵および証明書ファイルの名前を入力します。これらのファイルは、base_directory/hybrid-files/certs ディレクトリに配置する必要があります。例:

sslCertPath: ./certs/keystore.pem
sslKeyPath: ./certs/keystore.key
synchronizer-service-account-name create-service-account ツールで生成した synchronizer サービス アカウント キー ファイルの名前。例:

synchronizer: ./service-accounts/hybrid-project-apigee-synchronizer.json
udca-service-account-name create-service-account ツールで生成した udca サービス アカウント キー ファイルの名前。例:

udca: ./service-accounts/hybrid-project-apigee-udca.json
virtual_IP_runtime,
virtual_IP_mart
GKE on-prem の統合負荷分散を使用するには、ハイブリッド MART とランタイム サービスの LoadBalancers に対して仮想 IP を指定する必要があります。GKE on-prem では、F5 BIG-IP ロードバランサの仮想 IP が自動的に構成されます。詳細については、GKE On-Prem 用のロードバランサの設定をご覧ください。
mart-host-alias MART サーバー エンドポイントの修飾 DNS 名。この名前は、この構成に必要な承認済み TLS 証明書で使用される共通名(CN)と一致する必要があります。例: mart.mydomain.com
mart-service-account-name create-service-account ツールで生成した mart サービス アカウント キー ファイルの名前。
mart-cert-name
mart-key-name
前に MART ゲートウェイ用の TLS 認証情報を作成するステップで生成した承認済み TLS 鍵および証明書ファイルの名前を入力します。これらのファイルは、base_directory/hybrid-files/certs ディレクトリに配置する必要があります。例:

sslCertPath: ./certs/fullchain.pem
sslKeyPath: ./certs/privkey.key
gcp-region apigee-loggerapigee-metrics がデータを push する GCP リージョンを識別します。
gcp-project-id apigee-loggerapigee-metrics がデータを push する GCP プロジェクトを識別します。
metrics-service-account-name create-service-account ツールで生成した metrics サービス アカウント キー ファイルの名前。例:

serviceAccountPath: ./service-accounts/hybrid-project-apigee-metrics.json

概要

構成ファイルにより、ハイブリッド コンポーネントをクラスタにデプロイする方法が Kubernetes に指示されます。次は、この構成をクラスタに適用します。

次のステップ

1 2 3 次へ: (4)ハイブリッドをインストールする