構成プロパティのリファレンス

このセクションでは、Apigee ハイブリッド デプロイのランタイム プレーンをカスタマイズする際に使用できるすべての構成プロパティを示します。

このページをフィルタする

このページで説明するプロパティをフィルタするには、[基本](特に一般的なプロパティ)または [高度](ほとんどの場合で変更が不要なプロパティ)を選択します。

このページ上の  の構成プロパティを表示します。

最上位プロパティ

次の表に、overrides.yaml ファイルの最上位プロパティを示します。このようなプロパティは他のオブジェクトに属しておらず、組織レベルまたは環境レベルで適用されます。

プロパティ 説明
axHashSalt 高度

導入バージョン: 1.3.0

デフォルト値: 組織名

省略可

Apigee Analytics に送信される前にユーザーデータを難読化するためのハッシュの計算に使用されるソルト値を含む Kubernetes Secret の名前。ソルト値を指定しない場合、デフォルトで iloveapis123 が使用されます。Secret を作成する際は、このソルト値が入力として使用されます。複数のクラスタ間で同じソルトを使用することで、クラスタ間で一貫したハッシュの結果を得ることができます。

Apigee は SHA512 を使用して元の値をハッシュしてから、データをランタイム プレーンからコントロール プレーンに送信します。

分析用にユーザーデータを難読化するをご覧ください。

contractProvider 高度 導入バージョン: 1.0.0

デフォルト値: https://apigee.googleapis.com

インストール内のすべての API の API パスを定義します。

gcpProjectID 上級 Deprecated: v1.2.0 以降では、代わりに gcp.projectID を使用します。

導入バージョン: 1.0.0

デフォルト値: なし

必須

Google Cloud プロジェクトの ID。k8sClusterName(非推奨)および gcpRegion(非推奨)と連携してプロジェクトを識別し、apigee-loggerapigee-metrics のデータの push 先を決定します。

gcpRegion 高度 Deprecated: v1.2.0 以降では、代わりに gcp.region を使用します。

導入バージョン: 1.0.0

デフォルト値: us-central1

必須

Kubernetes クラスタに最も近い Google Cloud のリージョンまたはゾーン。gcpProjectID(非推奨)および k8sClusterName(非推奨)と連携してプロジェクトを識別し、apigee-loggerapigee-metrics がデータを push する場所を指定します。

hub 高度 導入バージョン: 1.11.0

デフォルト値: なし

Helm のみ: 非公開リポジトリからすべての Apigee コンポーネントのイメージを pull するために使用される、非公開イメージ コンテナ リポジトリの URL。

hub は、すべての Apigee ハイブリッド コンポーネントのデフォルトパスを提供します。非公開リポジトリを使用している場合は、コンポーネントごとに個別の image.url プロパティを使用するのではなく、hub を使用してすべてのコンポーネントのリポジトリ URL を設定します。特定のコンポーネントに別のリポジトリを使用している場合にのみ、個別の URL を構成します。

個々のコンポーネントのイメージパスは、hub の値にコンポーネントのイメージ名とタグを追加したものです。

たとえば、hub の値が private-docker-host.example.com の場合、個々のコンポーネントのイメージパスは次のように自動的に解決されます。

hub: private-docker-host.example.com

例:

## an example of internal component vs 3rd party
containers:
- name: apigee-udca
  image: private-docker-host.example.com/apigee-udca:1.11.2
  imagePullPolicy: IfNotPresent

containers:
- name: apigee-ingressgateway
  image: private-docker-host.example.com/apigee-asm-ingress:1.18.7-asm.26-distroless
  imagePullPolicy: IfNotPresent

他のコンポーネントも同様のパターンに従います。

すべてのコンポーネントの現在のリポジトリ URL を表示するには、apigee-pull-push --list を使用します。

Helm で限定公開イメージ リポジトリを使用するをご覧ください。

以下のプロパティを使用して、コンポーネントのイメージ URL を個別にオーバーライドできます。

imagePullSecrets.name 高度 導入バージョン: 1.0.0

デフォルト値: なし

Docker レジストリ タイプとして構成された Kubernetes Secret 名。非公開リポジトリからイメージを pull するために使用されます。

instanceID 基本 導入バージョン: 1.3.0

デフォルト値: なし

必須

このインストールの固有識別子。

このインスタンスを識別する一意の文字列。任意の文字と数字の組み合わせで、長さは 63 文字以下にする必要があります。

k8sClusterName 高度 Deprecated: v1.2.0 以降では、代わりに k8sCluster.namek8sCluster.region を使用します。

導入バージョン: 1.0.0

デフォルト値: なし

ハイブリッド プロジェクトが実行されている Kubernetes(K8s)プロクラスタの名前。gcpProjectID(非推奨)および gcpRegion(非推奨)と連携してプロジェクトを識別し、apigee-loggerapigee-metrics のデータの push 先を決定します。

kmsEncryptionKey 高度 導入バージョン: 1.0.0

デフォルト値: defaults.org.kmsEncryptionKey

省略可kmsEncryptionKeykmsEncryptionPathkmsEncryptionSecret のうち、いずれか 1 つのみを使用してください。

Apigee KMS データの暗号鍵が存在するローカル ファイル システム上のパス。

kmsEncryptionPath 高度 導入バージョン: 1.2.0

デフォルト値: なし

省略可kmsEncryptionKeykmsEncryptionPathkmsEncryptionSecret のうち、いずれか 1 つのみを使用してください。

Base64 でエンコードされた暗号鍵を含むファイルへのパス。データの暗号化をご覧ください。

kmsEncryptionSecret.key 高度 導入バージョン: 1.2.0

デフォルト値: なし

省略可kmsEncryptionKeykmsEncryptionPathkmsEncryptionSecret のうち、いずれか 1 つのみを使用してください。

Base64 でエンコードされた暗号鍵を含む Kubernetes Secret の鍵。データの暗号化をご覧ください。

kmsEncryptionSecret.name 高度 導入バージョン: 1.2.0

デフォルト値: なし

省略可kmsEncryptionKeykmsEncryptionPathkmsEncryptionSecret のうち、いずれか 1 つのみを使用してください。

Base64 でエンコードされた暗号鍵を含む Kubernetes Secret の名前。データの暗号化をご覧ください。

kvmEncryptionKey 高度 導入バージョン: 1.0.0

デフォルト値: defaults.org.kmsEncryptionKey

省略可kvmEncryptionKeykvmEncryptionPathkvmEncryptionSecret のうち、いずれか 1 つのみを使用してください。

Apigee KVM データの暗号鍵に対するローカル ファイル システムのパス。

kvmEncryptionPath 高度 導入バージョン: 1.2.0

デフォルト値: なし

省略可kvmEncryptionKeykvmEncryptionPathkvmEncryptionSecret のうち、いずれか 1 つのみを使用してください。

Base64 でエンコードされた暗号鍵を含むファイルへのパス。データの暗号化をご覧ください。

kvmEncryptionSecret.key 高度 導入バージョン: 1.2.0

デフォルト値: なし

省略可kvmEncryptionKeykvmEncryptionPathkvmEncryptionSecret のうち、いずれか 1 つのみを使用してください。

Base64 でエンコードされた暗号鍵を含む Kubernetes Secret の鍵。データの暗号化をご覧ください。

kvmEncryptionSecret.name 高度 導入バージョン: 1.2.0

デフォルト値: なし

省略可kvmEncryptionKeykvmEncryptionPathkvmEncryptionSecret のうち、いずれか 1 つのみを使用してください。

Base64 でエンコードされた暗号鍵を含む Kubernetes Secret の名前。データの暗号化をご覧ください。

multiOrgCluster 高度 導入バージョン: 1.10.0

デフォルト値: false

複数組織クラスタの場合、このプロパティを使用すると、組織の指標を gcp.projectID プロパティにリストされているプロジェクトにエクスポートできます。複数組織のクラスタ内の各組織のオーバーライド ファイルで、この設定を適用します。詳細については、クラスタへの複数のハイブリッド組織の追加をご覧ください。

namespace 基本 導入バージョン: 1.0.0

デフォルト値: apigee

Apigee コンポーネントがインストールされる Kubernetes クラスタの Namespace。

org 基本

導入バージョン: 1.0.0

デフォルト値: なし

必須

ハイブリッドのインストール中に Apigee によってプロビジョニングされたハイブリッド対応の組織。組織は、Apigee Edge の最上位コンテナです。この中にはすべての API プロキシと関連リソースが含まれています。このプロパティの値が空の場合は、組織を作成して、このプロパティをその名前に設定する必要があります。

orgScopedUDCA 高度 導入バージョン: 1.8.0

デフォルト値: true

Universal Data Collection Agent サービス(UDCA)を組織レベルで有効にします。UDCA は、分析、収益化、デバッグ(トレース)を抽出して、コントロール プレーンに存在する統合分析プラットフォーム(UAP)に送信します。

組織をスコープとする UDCA は、すべての Apigee 環境で単一の Google サービス アカウントを使用します。サービス アカウントには Apigee Analytics エージェント(roles/apigee.analyticsAgent)のロールが必要です。

udca.serviceAccountPath プロパティを使用してサービス アカウント キー ファイルのパスを指定するか、または overrides.yaml 構成ファイルで udca.serviceAccountRef プロパティを使用して Kubernetes Secret の鍵を指定します。

環境ごとに個別の UDCA エージェントを使用する場合は、orgScopedUDCA: false に設定して、envs[].serviceAccountPaths.udcaenvs[].serviceAccountSecretRefs.udca の値を設定します。

udca もご覧ください。

revision 高度 導入バージョン: 1.0.0

デフォルト値: "1112"(ピリオドなしの Apigee ハイブリッド バージョン。たとえば、バージョン 1.11.0 の場合、デフォルト値は "1110" です)。

Apigee ハイブリッドは Kubernetes のローリング アップデートをサポートしています。Pod インスタンスを段階的に新しいインスタンスに更新できるので、Deployment の更新をダウンタイムなしで行うことができます。

特定の YAML オーバーライドの更新の結果として、基盤となる Kubernetes PodTemplateSpec が変更される場合は、override.yamlrevision オーバーライド プロパティも変更する必要があります。これは、基盤となる Kubernetes ApigeeDeployment(AD)コントローラが旧バージョンから新しいバージョンへのローリング アップデートを安全に行うために必須です。小文字の任意のテキスト値(例: bluea1.0.0)を使用できます。

revision プロパティを変更して適用すると、すべてのコンポーネントに対してローリング アップデートが行われます。

次のオブジェクトのプロパティを変更するには、revision を更新する必要があります。

詳細については、ローリング アップデートをご覧ください。

validateOrg 上級 導入バージョン: 1.8.0

デフォルト値: true

Apigee 組織と Google Cloud プロジェクトとの間のリンクの厳密な検証を有効にし、環境グループの存在を確認します。

org もご覧ください。

validateServiceAccounts 高度 導入バージョン: 1.0.0

デフォルト値: true

サービス アカウント権限の厳密な検証を有効にします。Cloud Resource Manager API の testIamPermissions メソッドを使用して、指定されたサービス アカウントに必要な権限が付与されていることを確認します。Apigee 組織のサービス アカウントの場合は、プロジェクト ID がその組織にマッピングされたものかどうかがチェックされます。Metrics と Logger の場合、プロジェクトのチェックは overrides.yaml 構成の gcpProjectID に基づきます。

gcpProjectID もご覧ください。

ao

Apigee Operators(AO)は、AD のデプロイとメンテナンスに必要な低レベルの Kubernetes リソースと Istio リソースを作成および更新します。たとえば、Message Processor はこのコントローラによってリリースされます。

次の表に、Apigee Operators の ao オブジェクトのプロパティを示します。

プロパティ 説明
ao.args.disableIstioConfigInAPIServer 高度 導入バージョン: 1.8.0

デフォルト値: true

Apigee は、お客様がインストールした ASM に対して構成を提供できなくなります。

  • Apigee Ingress ゲートウェイを使用するハイブリッド インストールの場合は、true に設定します。
  • Anthos Service Mesh を使用した Apigee ハイブリッド インストール(Apigee ハイブリッド バージョン 1.8 以前)の場合は、false に設定します。
ao.args.disableManagedClusterRoles 上級 導入バージョン: 1.10.0

デフォルト値: true

true(デフォルト)の場合、Apigee ハイブリッドは Kubernetes ClusterRoleClursterRoleBinding を直接管理しません。これらのリソースの管理を必要とするプロセスがある場合は、適切な権限を持つユーザーがプロセスを実行する必要があります。

ao.image.pullPolicy 高度 導入バージョン: 1.2.0

デフォルト値: IfNotPresent

kubelet が Pod の Docker イメージを pull するタイミングを決定します。有効な値は次のとおりです。

  • IfNotPresent: イメージがすでに存在する場合、新しいイメージは pull しません。
  • Always: イメージがすでに存在するかどうかにかかわらず、常にイメージを pull します。

詳細については、イメージの更新をご覧ください。

ao.image.tag 高度 導入バージョン: 1.2.0

デフォルト値: 1.11.2

このサービスの Docker イメージのバージョン ラベル。

ao.image.url 高度 導入バージョン: 1.2.0

デフォルト値: なし

このサービスの Docker イメージの場所。

apigee-pull-push --list を使用して、このコンポーネントの現在のリポジトリ URL を確認できます。

ao.installer.pullPolicy 高度 バージョン導入: 1.3.0

デフォルト値: IfNotPresent

kubelet が Pod の Docker イメージを pull するタイミングを決定します。有効な値は次のとおりです。

  • IfNotPresent: イメージがすでに存在する場合、新しいイメージは pull しません。
  • Always: イメージがすでに存在するかどうかにかかわらず、常にイメージを pull します。

詳細については、イメージの更新をご覧ください。

ao.installer.tag 上級 バージョン導入: 1.3.0

デフォルト値: 1.11.2

このサービスの Docker イメージのバージョン ラベル。

ao.installer.url 上級 バージョン導入: 1.3.0

デフォルト値: gcr.io/apigee-release/hybrid/apigee-installer

このサービスの Docker イメージの場所。

apigee-pull-push --list を使用して、このコンポーネントの現在のリポジトリ URL を確認できます。

ao.resources.limits.cpu 高度 導入バージョン: 1.2.0

デフォルト値: 250m

Kubernetes コンテナ内のリソースの CPU 上限(ミリコア単位)。

ao.resources.limits.memory 高度 導入バージョン: 1.2.0

デフォルト値: 256Mi

Kubernetes コンテナ内のリソースのメモリ上限(MiB 単位)。

ao.resources.requests.cpu 高度 導入バージョン: 1.2.0

デフォルト値: 250m

Kubernetes コンテナ内のリソースの通常オペレーションに必要な CPU(ミリコア単位)。

ao.resources.requests.memory 高度 導入バージョン: 1.2.0

デフォルト値: 256Mi

Kubernetes コンテナ内のリソースの通常のオペレーションに必要なメモリ(メビバイト単位)。

ao.tolerations.effect 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

effect は、taint と一致する toleration の効果を指定します。effect の値は次のいずれかです。

  • NoExecute
  • NoSchedule
  • PreferNoSchedule

詳細については、taint と toleration: コンセプトをご覧ください。

ao.tolerations.key 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

key は、toleration を適用できる Pod を識別します。

詳細については、taint と toleration: コンセプトをご覧ください。

ao.tolerations.operator 高度 導入バージョン: 1.10.1

デフォルト値: "Equal"

Kubernetes の taint と toleration 機能を使用するために必要です。

operator には、effect をトリガーするオペレーションを指定します。operator の値は次のいずれかです。

  • Equal は、value に設定された値と一致します。
  • Exists は、value に設定された値を無視します。

詳細については、taint と toleration: コンセプトをご覧ください。

ao.tolerations.tolerationSeconds 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

tolerationSeconds は、障害が発生しているノードまたは応答していないノードに Pod がバインドされている時間を秒単位で定義します。

詳細については、taint と toleration: コンセプトをご覧ください。

ao.tolerations.value 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

value は、operatorEqual に設定されている場合に effect をトリガーする値です。

詳細については、taint と toleration: コンセプトをご覧ください。

apigeeIngressGateway

Apigee ハイブリッドの Apigee Ingress ゲートウェイを構成します。apigeeIngressGateway プロパティを使用して、Apigee Ingress ゲートウェイのすべてのインスタンスに共通の構成を適用します。

個別のインスタンスを一意に構成するには、ingressGateways をご覧ください。

Helm で Apigee ハイブリッドを管理している場合は、apigee-org チャートで apigeeIngressGateway プロパティに変更を適用します。

次の表に、apigeeIngressGateway オブジェクトのプロパティを示します。

プロパティ 説明
apigeeIngressGateway.image.pullPolicy 高度 導入バージョン: 1.11.0

デフォルト値: IfNotPresent

kubelet が Pod の Docker イメージを pull するタイミングを決定します。有効な値は次のとおりです。

  • IfNotPresent: イメージがすでに存在する場合、新しいイメージは pull しません。
  • Always: イメージがすでに存在するかどうかにかかわらず、常にイメージを pull します。

詳細については、イメージの更新をご覧ください。

apigeeIngressGateway.image.tag 高度 導入バージョン: 1.11.0

デフォルト値: 1.18.7-asm.26-distroless

このサービスの Docker イメージのバージョン ラベル。

apigeeIngressGateway.image.url 高度 導入バージョン: 1.11.0

デフォルト値: なし

このサービスの Docker イメージの場所。

apigee-pull-push --list を使用して、このコンポーネントの現在のリポジトリ URL を確認できます。

apigeeIngressGateway.nodeSelector.key 高度 導入バージョン: 1.11.0

デフォルト値: なし

必須

Ingress ゲートウェイ サービス専用の Kubernetes ノードの選択に使用するノードセレクタのラベルキー。

専用ノードプールの構成をご覧ください。

apigeeIngressGateway.nodeSelector.value 高度 導入バージョン: 1.11.0

デフォルト値: なし

Ingress ゲートウェイ サービス専用の Kubernetes ノードを選択し、nodeSelector.apigeeData 設定をオーバーライドするために使用するノードセレクタのラベル値(省略可)。

nodeSelector をご覧ください。

apigeeIngressGateway.replicaCountMax 基本 導入バージョン: 1.11.0

デフォルト値: 4

ハイブリッドが自動スケーリングで使用できる Ingress ゲートウェイに自動的に追加できる Pod の最大数。

apigeeIngressGateway.replicaCountMin 基本 導入バージョン: 1.11.0

デフォルト値: 2

自動スケーリングに使用できる Ingress ゲートウェイの Pod の最小数。

apigeeIngressGateway.targetCPUUtilizationPercentage 高度 導入バージョン: 1.10.5、1.11.2

デフォルト値: 75

ReplicaSet 内の Pod 数をスケーリングするために使用する CPU 使用率のしきい値(使用可能な CPU リソースの合計に対する割合)。

CPU 使用率がこの値を超えると、ReplicaSet 内の Pod 数が徐々に増加します(最大で apigeeIngressGateway.replicaCountMax)。

Kubernetes でのスケーリングの詳細については、Kubernetes ドキュメントの水平 Pod 自動スケーリングをご覧ください。

apigeeIngressGateway.tolerations.effect 高度 導入バージョン: 1.11.0

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

effect は、taint と一致する toleration の効果を指定します。effect の値は次のいずれかです。

  • NoExecute
  • NoSchedule
  • PreferNoSchedule

詳細については、taint と toleration: コンセプトをご覧ください。

apigeeIngressGateway.tolerations.key 高度 導入バージョン: 1.11.0

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

key は、toleration を適用できる Pod を識別します。

詳細については、taint と toleration: コンセプトをご覧ください。

apigeeIngressGateway.tolerations.operator 高度 導入バージョン: 1.11.0

デフォルト値: "Equal"

Kubernetes の taint と toleration 機能を使用するために必要です。

operator には、effect をトリガーするオペレーションを指定します。operator の値は次のいずれかです。

  • Equal は、value に設定された値と一致します。
  • Exists は、value に設定された値を無視します。

詳細については、taint と toleration: コンセプトをご覧ください。

apigeeIngressGateway.tolerations.tolerationSeconds 高度 導入バージョン: 1.11.0

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

tolerationSeconds は、障害が発生しているノードまたは応答していないノードに Pod がバインドされている時間を秒単位で定義します。

詳細については、taint と toleration: コンセプトをご覧ください。

apigeeIngressGateway.tolerations.value 高度 導入バージョン: 1.11.0

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

value は、operatorEqual に設定されている場合に effect をトリガーする値です。

詳細については、taint と toleration: コンセプトをご覧ください。

cassandra

ランタイム データ リポジトリを管理するハイブリッド サービスを定義します。このリポジトリには、ゲートウェイで実行されているアプリケーションの構成、分散割り当てカウンタ、API キー、OAuth トークンが格納されます。

詳細については、StorageClass の構成をご覧ください。

次の表に、cassandra オブジェクトのプロパティを示します。

プロパティ 説明
cassandra.annotations 高度 導入バージョン: 1.5.0

デフォルト値: なし

(省略可)Pod にアノテーションを付けるために使用する Key-Value マップ。詳しくは、カスタム アノテーションをご覧ください。

cassandra.auth.admin.password 基本 導入バージョン: 1.0.0

デフォルト値: iloveapis123

必須

Cassandra 管理者のパスワード。管理者ユーザーは、Cassandra クラスタで実行される管理アクティビティ(バックアップと復元など)に使用されます。

cassandra.auth.ddl.password 基本 導入バージョン: 1.0.0

デフォルト値: iloveapis123

必須

Cassandra データ定義言語(DDL)ユーザーのパスワード。キースペースの作成、更新、削除などのデータ定義タスクのために MART によって使用されます。

cassandra.auth.default.password 基本 導入バージョン: 1.0.0

デフォルト値: iloveapis123

必須

認証が有効になっている場合に作成されるデフォルト Cassandra ユーザーのパスワード。このパスワードは、Cassandra 認証を構成するときに再設定する必要があります。Cassandra の TLS の構成をご覧ください。

cassandra.auth.dml.password 基本 導入バージョン: 1.0.0

デフォルト値: iloveapis123

必須

Cassandra データ操作言語(DML)ユーザーのパスワード。DML ユーザーは、クライアントによる Cassandra からのデータの読み取りと Cassandra へのデータの書き込みに使用されます。

cassandra.auth.image.pullPolicy 高度 導入バージョン: 1.0.0

デフォルト値: IfNotPresent

kubelet が Pod の Docker イメージを pull するタイミングを決定します。有効な値は次のとおりです。

  • IfNotPresent: イメージがすでに存在する場合、新しいイメージは pull しません。
  • Always: イメージがすでに存在するかどうかにかかわらず、常にイメージを pull します。

詳細については、イメージの更新をご覧ください。

cassandra.auth.image.tag 高度 導入バージョン: 1.0.0

デフォルト値: 1.11.2

このサービスの Docker イメージのバージョン ラベル。

cassandra.auth.image.url 高度 導入バージョン: 1.0.0

デフォルト値: なし

このサービスの Docker イメージの場所。

apigee-pull-push --list を使用して、このコンポーネントの現在のリポジトリ URL を確認できます。

cassandra.auth.jmx.password 基本 導入バージョン: 1.4.0

デフォルト値: iloveapis123

必須

Cassandra JMX オペレーション ユーザーのパスワード。Cassandra JMX インターフェースの認証と通信に使用されます。

cassandra.auth.jmx.username 基本 導入バージョン: 1.4.0

デフォルト値: jmxuser

必須

Cassandra JMX オペレーション ユーザーのユーザー名。Cassandra JMX インターフェースの認証と通信に使用されます。

cassandra.auth.jolokia.password 基本 導入バージョン: 1.4.0

デフォルト値: iloveapis123

必須

Cassandra Jolokia JMX オペレーション ユーザーのパスワード。Cassandra JMX API の認証と通信に使用されます。

cassandra.auth.jolokia.username 基本 導入バージョン: 1.4.0

デフォルト値: apigee

必須

Cassandra Jolokia JMX オペレーション ユーザーのユーザー名。Cassandra JMX API の認証と通信に使用されます。

cassandra.auth.secret 基本 導入バージョン: 1.3.3

デフォルト値: なし

Cassandra のユーザーとパスワードを含む、Kubernetes Secret に格納されているファイルの名前。Secret を作成するには、Secret を作成するの手順を行います。

関連項目:

cassandra.auth.secretProviderClass 高度 導入バージョン: 1.10.3

デフォルト値: なし

Cassandra シークレット ストレージ ポリシー。設定する場合は、Hashicorp Vault などの外部シークレット プロバイダを参照する SecretProviderClass と一致する必要があります。未設定の場合、Apigee ハイブリッドでは以下に保存されているユーザー名とパスワードのいずれかが使用されます。

または、以下に保存されている Kubernetes のシークレット。

ポリシーを作成する手順については、Hashicorp Vault への Cassandra シークレットの保存をご覧ください。

cassandra.backup.cloudProvider 高度 導入バージョン: 1.0.0

デフォルト値: GCP

バックアップ プロバイダの名前。サポートされている値: GCPHYBRIDCSI。以下の値を設定します。

  • GCP: Google Cloud Storage にバックアップ アーカイブを保存します。
  • HYBRID: バックアップ アーカイブをリモート SSH サーバーに保存します。
  • CSI(推奨): Kubernetes CSI バックアップにボリューム スナップショットを使用します。Google Cloud、AWS、Azure などのクラウド プラットフォームにおける CSI のバックアップと復元については、CSI のバックアップと復元をご覧ください。
cassandra.backup.dbStorageBucket 高度 導入バージョン: 1.0.0

デフォルト値: なし

バックアップが有効で、cassandra.backup.cloudProviderGCP に設定されている場合は必須。

gs://BUCKET_NAME の形式にする必要があります(gs:// プレフィックスは必須です)。

バックアップ アーカイブの保存に使用する既存の Google Cloud Storage バケットの名前。バケットを作成する必要がある場合は、バケットの作成をご覧ください。

cassandra.backup.enabled 高度 導入バージョン: 1.0.0

デフォルト値: false

デフォルトでは、データ バックアップは有効になっていません。有効にするには、true に設定します。

Cassandra のバックアップと復元をご覧ください。

cassandra.backup.image.pullPolicy 高度 導入バージョン: 1.0.0

デフォルト値: IfNotPresent

kubelet が Pod の Docker イメージを pull するタイミングを決定します。有効な値は次のとおりです。

  • IfNotPresent: イメージがすでに存在する場合、新しいイメージは pull しません。
  • Always: イメージがすでに存在するかどうかにかかわらず、常にイメージを pull します。

詳細については、イメージの更新をご覧ください。

cassandra.backup.image.tag 高度 導入バージョン: 1.0.0

デフォルト値: 1.11.2

このサービスの Docker イメージのバージョン ラベル。

cassandra.backup.image.url 高度 導入バージョン: 1.0.0

デフォルト値: なし

このサービスの Docker イメージの場所。

apigee-pull-push --list を使用して、このコンポーネントの現在のリポジトリ URL を確認できます。

cassandra.backup.schedule 高度 導入バージョン: 1.0.0

デフォルト値: 0 2 * * *

バックアップ cron ジョブのスケジュール。

Cassandra のバックアップと復元をご覧ください。

cassandra.backup.serviceAccountPath 高度 導入バージョン: 1.0.0

デフォルト値: なし

Storage オブジェクト管理者roles/storage.objectAdmin)ロールを持つ Google サービス アカウント キーファイルへのパス。この Google サービス アカウントは、指定された cassandra.backup.dbStorageBucket にバックアップ アーカイブをアップロードするために使用されます。

バックアップが有効で、cassandra.backup.cloudProviderGCP に設定されている場合、Apigee Hybrid が Google Cloud Storage バケットにアクセスしてバックアップ アーカイブをアップロードできるようにするには、次のいずれかが必要です。

cassandra.backup.serviceAccountRef 詳細 導入バージョン: 1.2.0

デフォルト値: なし

Storage オブジェクト管理者roles/storage.objectAdmin)ロールを持つ Google サービス アカウント キーファイルのコンテンツを格納する既存の Kubernetes Secret の名前。この Google サービス アカウントは、指定された cassandra.backup.dbStorageBucket にバックアップ アーカイブをアップロードするために使用されます。

バックアップが有効で、cassandra.backup.cloudProviderGCP に設定されている場合、Apigee Hybrid が Google Cloud Storage バケットにアクセスしてバックアップ アーカイブをアップロードできるようにするには、次のいずれかが必要です。

cassandra.clusterName 基本 導入バージョン: 1.0.0

デフォルト値: apigeecluster

Cassandra クラスタの名前を指定します。

cassandra.datacenter 基本 導入バージョン: 1.0.0

デフォルト値: dc-1

Cassandra ノードのデータセンターを指定します。

cassandra.dnsPolicy 基本 導入バージョン: 1.1.1

デフォルト値: なし

hostNetwork を true に設定すると、DNS ポリシーは ClusterFirstWithHostNet に設定されます。

cassandra.externalSeedHost 基本 導入バージョン: 1.0.0

デフォルト値: なし

Cassandra クラスタノードのホスト名または IP。設定されていない場合は、Kubernetes ローカル サービスが使用されます。

cassandra.heapNewSize 基本 導入バージョン: 1.0.0

デフォルト値: 100M

新しいオブジェクトに割り当てられる JVM システムメモリの量(メガバイト単位)。

cassandra.hostNetwork 基本 導入バージョン: 1.1.1

デフォルト値: false

Kubernetes の hostNetwork 機能を有効にします。マルチリージョン インストールで Pod ネットワークの Namespace にクラスタ間の接続がない場合(クラスタが「アイランド ネットワーク モード」で実行されている場合)、Apigee はこの機能を使用して Pod 間で通信します。GKE 以外のインストール(GKE On-Prem、GKE on AWS、Anthos on bare metal、AKS、EKS、OpenShift など)では、これがデフォルトのケースです。

単一リージョンでのインストールと、異なるクラスタの Pod 間に接続があるマルチリージョン インストール(たとえば、GKE のインストール)では、cassandra.hostNetworkfalse に設定します。

異なるクラスタの Pod 間で通信を行わないマルチリージョン インストール(GKE On-Prem、GKE on AWS、Anthos on bare metal、AKS、EKS、OpenShift のインストールなど)では、cassandra.hostNetworktrue に設定します。マルチリージョン デプロイ: 前提条件をご覧ください。

true の場合、DNS ポリシーは自動的に ClusterFirstWithHostNet に設定されます。

cassandra.image.pullPolicy 高度 導入バージョン: 1.0.0

デフォルト値: IfNotPresent

kubelet が Pod の Docker イメージを pull するタイミングを決定します。有効な値は次のとおりです。

  • IfNotPresent: イメージがすでに存在する場合、新しいイメージは pull しません。
  • Always: イメージがすでに存在するかどうかにかかわらず、常にイメージを pull します。

詳細については、イメージの更新をご覧ください。

cassandra.image.tag 高度 導入バージョン: 1.0.0

デフォルト値: 1.11.2

このサービスの Docker イメージのバージョン ラベル。

cassandra.image.url 高度 導入バージョン: 1.0.0

デフォルト値: なし

このサービスの Docker イメージの場所。

apigee-pull-push --list を使用して、このコンポーネントの現在のリポジトリ URL を確認できます。

cassandra.maxHeapSize 高度 導入バージョン: 1.0.0

デフォルト値: 512M

Cassandra のオペレーションに使用可能な JVM システムメモリの上限(MB 単位)。

cassandra.multiRegionSeedHost 基本 導入バージョン: 1.0.0

デフォルト値: なし

既存のクラスタを新しいリージョンに拡張するために使用される既存の Cassandra クラスタの IP アドレス。マルチリージョン シードホストを構成するをご覧ください。

cassandra.nodeSelector.key 高度 導入バージョン: 1.0.0

デフォルト値: なし

必須

cassandra データサービス専用の Kubernetes ノードを選択するために使用されるノードセレクタのラベルキー。

専用ノードプールの構成をご覧ください。

cassandra.nodeSelector.value 高度 導入バージョン: 1.0.0

デフォルト値: なし

(省略可)cassandra データサービス専用の Kubernetes ノードを選択して nodeSelector.apigeeData 設定をオーバーライドするために使用するノードセレクタのラベル値。

nodeSelector をご覧ください。

cassandra.port 高度 導入バージョン: 1.0.0

デフォルト値: 9042

Cassandra への接続に使用するポート番号。

cassandra.rack 基本 導入バージョン: 1.0.0

デフォルト値: ra-1

Cassandra ノードのラックを指定します。

cassandra.readinessProbe.failureThreshold 高度 導入バージョン: 1.0.0

デフォルト値: 2

Kubernetes が検出する readinessProbe の失敗回数。この数に達すると、Pod が「準備未完了」とマークされます。最小値は 1 です。

cassandra.readinessProbe.initialDelaySeconds 高度 導入バージョン: 1.0.0

デフォルト値: 0

コンテナが起動してから readinessProbe が開始されるまでの秒数。

cassandra.readinessProbe.periodSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 10

readinessProbe の実行頻度を秒単位で指定します。最小値は 1 です。

cassandra.readinessProbe.successThreshold 高度 導入バージョン: 1.0.0

デフォルト値: 1

失敗した readinessProbe が成功とみなされるために必要な最小の連続成功回数。最小値は 1 です。

cassandra.readinessProbe.timeoutSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 5

livenessProbe がタイムアウトするまでの秒数。最小値は 1 です。

cassandra.replicaCount 基本 導入バージョン: 1.0.0

デフォルト値: 1

Cassandra は複製されたデータベースです。このプロパティは、StatefulSet として使用される Cassandra ノードの数を指定します。

cassandra.resources.requests.cpu 高度 導入バージョン: 1.0.0

デフォルト値: 500m

Kubernetes コンテナ内のリソースの通常オペレーションに必要な CPU(ミリコア単位)。

cassandra.resources.requests.memory 高度 導入バージョン: 1.0.0

デフォルト値: 1Gi

Kubernetes コンテナ内のリソースの通常のオペレーションに必要なメモリ(メビバイト単位)。

cassandra.restore.cloudProvider 高度 導入バージョン: 1.0.0

デフォルト値: GCP

復元プロバイダの名前。サポートされている値: GCPHYBRIDCSI。以下の値を設定します。

  • GCP: Google Cloud Storage に保存されているバックアップからデータを復元します。
  • HYBRID: リモート SSH サーバーに保存されているバックアップからデータを復元します。
  • CSI(推奨): Kubernetes CSI ボリューム スナップショットを使用して復元します。Google Cloud、AWS、Azure などのクラウド プラットフォームにおける CSI のバックアップと復元については、CSI のバックアップと復元をご覧ください。
cassandra.restore.dbStorageBucket 高度 導入バージョン: 1.0.0

デフォルト値: なし

復元が有効で、cassandra.restore.cloudProviderGCP に設定されている場合は必須。

gs://BUCKET_NAME の形式にする必要があります(gs:// プレフィックスは必須です)。

データ復元に使用するバックアップ アーカイブを保存する Google Cloud Storage バケットの名前。

cassandra.restore.enabled 高度 導入バージョン: 1.0.0

デフォルト値: false

デフォルトでは、データの復元は有効になっていません。有効にするには、true に設定します。

Cassandra のバックアップと復元をご覧ください。

cassandra.restore.image.pullPolicy 高度 導入バージョン: 1.0.0

デフォルト値: IfNotPresent

kubelet が Pod の Docker イメージを pull するタイミングを決定します。有効な値は次のとおりです。

  • IfNotPresent: イメージがすでに存在する場合、新しいイメージは pull しません。
  • Always: イメージがすでに存在するかどうかにかかわらず、常にイメージを pull します。

詳細については、イメージの更新をご覧ください。

cassandra.restore.image.tag 高度 導入バージョン: 1.0.0

デフォルト値: 1.11.2

このサービスの Docker イメージのバージョン ラベル。

cassandra.restore.image.url 高度 導入バージョン: 1.0.0

デフォルト値: なし

このサービスの Docker イメージの場所。

apigee-pull-push --list を使用して、このコンポーネントの現在のリポジトリ URL を確認できます。

cassandra.restore.serviceAccountPath 高度 導入バージョン: 1.0.0

デフォルト値: なし

Storage オブジェクト管理者roles/storage.objectAdmin)ロールを持つ Google サービス アカウント キーファイルへのパス。この Google サービス アカウントは、指定された cassandra.restore.dbStorageBucket からバックアップ アーカイブをダウンロードするために使用されます。

復元が有効で、cassandra.restore.cloudProviderGCP に設定されている場合、Apigee ハイブリッドが Google Cloud Storage バケットにアクセスして復元用のバックアップ アーカイブをダウンロードできるようにするには、次のいずれかが必要です。

cassandra.restore.serviceAccountRef 詳細 導入バージョン: 1.2.0

デフォルト値: なし

Storage オブジェクト管理者roles/storage.objectAdmin)ロールを持つ Google サービス アカウント キーファイルのコンテンツを格納する既存の Kubernetes Secret の名前。この Google サービス アカウントは、指定された cassandra.restore.dbStorageBucket からバックアップ アーカイブをダウンロードするために使用されます。

復元が有効で、cassandra.restore.cloudProviderGCP に設定されている場合、Apigee ハイブリッドが Google Cloud Storage バケットにアクセスして復元用のバックアップ アーカイブをダウンロードできるようにするには、次のいずれかが必要です。

cassandra.restore.snapshotTimestamp 詳細 導入バージョン: 1.0.0

デフォルト値: なし

復元が有効な場合は必須。

復元するバックアップのタイムスタンプ。

cassandra.sslCertPath 基本 導入バージョン: 1.2.0

デフォルト値: なし

システム上の TLS 証明書ファイルへのパス。

cassandra.sslKeyPath 基本 導入バージョン: 1.2.0

デフォルト値: なし

システム上の TLS 秘密鍵ファイルへのパス。

cassandra.sslRootCAPath 基本 導入バージョン: 1.2.0

デフォルト値: なし

ルート CA(認証局)への証明書チェーン。

cassandra.storage.capacity 基本 導入バージョン: 1.0.0

デフォルト値: 10Gi

storage.storageclass が指定されている場合は必須

ディスクサイズをメビバイト(MiB)単位またはギビバイト(GiB)単位で指定します。

cassandra.storage.storageclass 基本 導入バージョン: 1.0.0

デフォルト値: なし

使用するオンプレミス ストレージのクラスを指定します。

cassandra.terminationGracePeriodSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 300

Pod の削除リクエストから実際に Pod が強制終了されるまでの時間(秒単位)。この期間中に停止前フックが実行され、動作中のすべてのプロセスが正常に終了します。

cassandra.tolerations.effect 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

effect は、taint と一致する toleration の効果を指定します。effect の値は次のいずれかです。

  • NoExecute
  • NoSchedule
  • PreferNoSchedule

詳細については、taint と toleration: コンセプトをご覧ください。

cassandra.tolerations.key 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

key は、toleration を適用できる Pod を識別します。

詳細については、taint と toleration: コンセプトをご覧ください。

cassandra.tolerations.operator 高度 導入バージョン: 1.10.1

デフォルト値: "Equal"

Kubernetes の taint と toleration 機能を使用するために必要です。

operator には、effect をトリガーするオペレーションを指定します。operator の値は次のいずれかです。

  • Equal は、value に設定された値と一致します。
  • Exists は、value に設定された値を無視します。

詳細については、taint と toleration: コンセプトをご覧ください。

cassandra.tolerations.tolerationSeconds 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

tolerationSeconds は、障害が発生しているノードまたは応答していないノードに Pod がバインドされている時間を秒単位で定義します。

詳細については、taint と toleration: コンセプトをご覧ください。

cassandra.tolerations.value 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

value は、operatorEqual に設定されている場合に effect をトリガーする値です。

詳細については、taint と toleration: コンセプトをご覧ください。

certManager

Apigee は証明書の検証に cert-manager を使用します。

次の表に、certManager オブジェクトのプロパティを示します。

プロパティ 説明
certManager.namespace 高度 導入バージョン: 1.9.0

デフォルト値: cert-manager

cert-manager の名前空間。

カスタム 名前空間での cert-manager の実行をご覧ください。

connectAgent

Apigee Connect を使用すると、インターネット上で MART エンドポイントを公開しなくても、Apigee Hybrid 管理プレーンをランタイム プレーンの MART サービスに安全に接続できます。

Apigee Connect をご覧ください。

次の表に、connectAgent オブジェクトのプロパティを示します。

プロパティ 説明
connectAgent.annotations 高度 導入バージョン: 1.5.0

デフォルト値: なし

(省略可)Pod にアノテーションを付けるために使用する Key-Value マップ。詳しくは、カスタム アノテーションをご覧ください。

connectAgent.gsa 高度 導入バージョン: 1.10.0

デフォルト値: なし

Helm のみ: Helm チャートを使用して GKE クラスタで Workload Identity を有効にするときに、対応する Kubernetes サービス アカウントに関連付ける connectAgent の Google IAM サービス アカウント(GSA)のメールアドレス。このプロパティは、gcp.workloadIdentity.enabledtrue に設定した場合に設定します。

通常、GSA のメールアドレスの形式は次のとおりです。

GSA_NAME@PROJECT_ID.iam.gserviceaccount.com

例:

apigee-mart@my-hybrid-project.iam.gserviceaccount.com

Enabling Workload Identity with Helm charts をご覧ください。

connectAgent.logLevel 高度 導入バージョン: 1.2.0

デフォルト値: INFO

ログレポートのレベル。次の値が表示されます。

  • INFO: 警告 / エラー / 致命的メッセージに加え、情報メッセージが含められます。デバッグで最も役立ちます。
  • WARNING: エラー / 致命的メッセージに加え、非致命的な警告が含められます。
  • ERROR: 致命的メッセージに加え、内部エラーと、ユーザーに返されなかったエラーが含められます。
  • FATAL: 回復不可能なエラーと、Apigee Connect のクラッシュの原因となったイベントが含められます。
connectAgent.image.pullPolicy 高度 導入バージョン: 1.2.0

デフォルト値: IfNotPresent

kubelet が Pod の Docker イメージを pull するタイミングを決定します。有効な値は次のとおりです。

  • IfNotPresent: イメージがすでに存在する場合、新しいイメージは pull しません。
  • Always: イメージがすでに存在するかどうかにかかわらず、常にイメージを pull します。

詳細については、イメージの更新をご覧ください。

connectAgent.image.tag 高度 導入バージョン: 1.2.0

デフォルト値: 1.11.2

このサービスの Docker イメージのバージョン ラベル。

connectAgent.image.url 高度 導入バージョン: 1.2.0

デフォルト値: なし

このサービスの Docker イメージの場所。

apigee-pull-push --list を使用して、このコンポーネントの現在のリポジトリ URL を確認できます。

connectAgent.replicaCountMax 基本 導入バージョン: 1.2.0

デフォルト値: 5

自動スケーリングに使用できるレプリカの最大数。

connectAgent.replicaCountMin 基本 導入バージョン: 1.2.0

デフォルト値: 1

自動スケーリングに使用できるレプリカの最小数。

本番環境では、replicaCountMin を 1 に増やしてコントロール プレーンへの接続数を増やし、信頼性とスケーラビリティを高めることができます。

connectAgent.resources.limits.cpu 高度 導入バージョン: 1.11.0

デフォルト値: 512m

Kubernetes コンテナ内のリソースの CPU 上限(ミリコア単位)。

connectAgent.resources.limits.memory 高度 導入バージョン: 1.11.0

デフォルト値: 512Mi

Kubernetes コンテナ内のリソースのメモリ上限(MiB 単位)。

connectAgent.resources.requests.cpu 高度 導入バージョン: 1.11.0

デフォルト値: 100m

Kubernetes コンテナ内のリソースの通常オペレーションに必要な CPU(ミリコア単位)。

connectAgent.resources.requests.memory 高度 導入バージョン: 1.2.0

デフォルト値: 30Mi

Kubernetes コンテナ内のリソースの通常のオペレーションに必要なメモリ(メビバイト単位)。

connectAgent.server 高度 導入バージョン: 1.2.0

デフォルト値: apigeeconnect.googleapis.com:443

このサービスのサーバーとポートの場所。

connectAgent.serviceAccountPath 基本 導入バージョン: 1.1.1

デフォルト値: なし

serviceAccountPath または serviceAccountRef のいずれか一方を指定する必要があります。

apigee-mart サービス アカウント用の Google サービス アカウント キーファイルのパスです。

ほとんどのインストールでは、connectAgent.serviceAccountPath の値は mart.serviceAccountPath の値と一致する必要があります。

connectAgent.serviceAccountRef 基本 導入バージョン: 1.2.0

デフォルト値: なし

serviceAccountPath または serviceAccountRef のいずれか一方を指定する必要があります。

ほとんどのインストールでは、connectAgent.serviceAccountRef の値は mart.serviceAccountRef の値と一致する必要があります。

connectAgent.targetCPUUtilizationPercentage 高度 導入バージョン: 1.2.0

デフォルト値: 75

Pod 上の Apigee Connect エージェントの CPU 使用率の目標値。CPU 使用率がこのフィールドの値に達すると、Apigee Connect が(replicaCountMax で指定された上限まで)自動スケーリングします。

connectAgent.terminationGracePeriodSeconds 高度 導入バージョン: 1.2.0

デフォルト値: 600

Pod の削除リクエストから実際に Pod が強制終了されるまでの時間(秒単位)。この期間中に停止前フックが実行され、動作中のすべてのプロセスが正常に終了します。

connectAgent.tolerations.effect 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

effect は、taint と一致する toleration の効果を指定します。effect の値は次のいずれかです。

  • NoExecute
  • NoSchedule
  • PreferNoSchedule

詳細については、taint と toleration: コンセプトをご覧ください。

connectAgent.tolerations.key 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

key は、toleration を適用できる Pod を識別します。

詳細については、taint と toleration: コンセプトをご覧ください。

connectAgent.tolerations.operator 高度 導入バージョン: 1.10.1

デフォルト値: "Equal"

Kubernetes の taint と toleration 機能を使用するために必要です。

operator には、effect をトリガーするオペレーションを指定します。operator の値は次のいずれかです。

  • Equal は、value に設定された値と一致します。
  • Exists は、value に設定された値を無視します。

詳細については、taint と toleration: コンセプトをご覧ください。

connectAgent.tolerations.tolerationSeconds 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

tolerationSeconds は、障害が発生しているノードまたは応答していないノードに Pod がバインドされている時間を秒単位で定義します。

詳細については、taint と toleration: コンセプトをご覧ください。

connectAgent.tolerations.value 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

value は、operatorEqual に設定されている場合に effect をトリガーする値です。

詳細については、taint と toleration: コンセプトをご覧ください。

defaults

Apigee ハイブリッド環境のデフォルトの暗号鍵。

次の表に、defaults オブジェクトのプロパティを示します。

プロパティ 説明
defaults.org.kmsEncryptionKey 基本 導入バージョン: 1.0.0

デフォルト値: aWxvdmVhcGlzMTIzNDU2Nw==

組織のデフォルトの KMS 暗号鍵。

defaults.org.kvmEncryptionKey 基本 導入バージョン: 1.0.0

デフォルト値: aWxvdmVhcGlzMTIzNDU2Nw==

組織のデフォルトの KVM 暗号鍵。

defaults.env.kmsEncryptionKey 基本 導入バージョン: 1.0.0

デフォルト値: aWxvdmVhcGlzMTIzNDU2Nw==

環境(env)のデフォルトの KMS 暗号鍵。

defaults.env.kvmEncryptionKey 基本 導入バージョン: 1.0.0

デフォルト値: aWxvdmVhcGlzMTIzNDU2Nw==

環境(env)のデフォルトの KVM 暗号鍵。

defaults.env.cacheEncryptionKey 基本 導入バージョン: 1.0.0

デフォルト値: aWxvdmVhcGlzMTIzNDU2Nw==

環境(env)のデフォルトのキャッシュ暗号鍵。

diagnostic

診断コレクタツールの設定。

診断コレクタの使用をご覧ください。

次の表に、diagnostic オブジェクトのプロパティを示します。

プロパティ 説明
diagnostic.bucket 基本 導入バージョン: 1.6.0

デフォルト値: なし

必須

診断データが付与される Google Cloud Storage バケットの名前。

ストレージ バケットの作成をご覧ください。

diagnostic.container 基本 導入バージョン: 1.6.0

デフォルト値: なし

必須

データをキャプチャする Pod のタイプを指定します。値は次のいずれかです。

  • "apigee-cassandra" の場合は、Cassandra データベースに関するデータがキャプチャされます。istio-cassandra Pod は apigee 名前空間で実行されます。
  • "apigee-mart-server" の場合は、MART に関するデータがキャプチャされます。apigee-mart-server Pod は apigee 名前空間で実行されます。
  • "apigee-runtime" の場合は、Message Processor に関するデータがキャプチャされます。apigee-runtime Pod は apigee 名前空間で実行されます。
  • "apigee-synchronizer" の場合は、Synchronizer に関するデータがキャプチャされます。apigee-synchronizer Pod は apigee 名前空間で実行されます。
  • "apigee-udca" の場合は、UDCA に関するデータがキャプチャされます。apigee-udca Pod は apigee 名前空間で実行されます。
  • "apigee-watcher" の場合は、Watcher に関するデータがキャプチャされます。apigee-watcher Pod は apigee 名前空間で実行されます。
  • "istio-proxy" の場合は、Istio Ingress ゲートウェイに関するデータがキャプチャされます。istio-proxy Pod は istio-system 名前空間で実行されます。
diagnostic.loggingDetails.logDuration 基本 導入バージョン: 1.6.0

デフォルト値: なし

診断コレクション オペレーションが「LOGGING」(operation: "LOGGING" で設定)の場合は必須

収集するログデータの期間(ミリ秒)。一般的な値は 30000 です。

diagnostic.operation を参照してください。

diagnostic.loggingDetails.loggerNames[] 基本 導入バージョン: 1.6.0

デフォルト値: なし

診断コレクション オペレーションが「LOGGING」(operation: "LOGGING" で設定)の場合は必須

データの収集元であるロガーの名前を指定します。Apigee ハイブリッド バージョン 1.6.0 でサポートされている値は ALL(すべてのロガー)のみです。次に例を示します。

diagnostic:
 loggingDetails:
   loggerNames:
   - ALL
diagnostic.loggingDetails.logLevel 基本 導入バージョン: 1.6.0

デフォルト値: なし

診断コレクション オペレーションが「LOGGING」(operation: "LOGGING" で設定)の場合は必須

収集するロギングデータの粒度を指定します。Apigee ハイブリッド 1.6 では、FINE のみがサポートされています。

diagnostic.namespace 基本 導入バージョン: 1.6.0

デフォルト値: なし

必須

データを収集する Pod が存在している Kubernetes Namespace。diagnostic.container で指定したコンテナ用の正しい Namespace を指定する必要があります。

以下の場合は apigee

  • apigee-runtime
  • apigee-synchronizer
  • apigee-udca
  • apigee-watcher
  • apigee-cassandra
  • apigee-mart-server

以下の場合は istio-system

  • istio-proxy
diagnostic.operation 基本 導入バージョン: 1.6.0

デフォルト値: なし

必須

すべての統計情報を収集するか、ログのみを収集するかを指定します。

以下のいずれかの値を設定します。

diagnostic.podNames[] 基本 導入バージョン: 1.6.0

デフォルト値: なし

必須

データを収集する Kubernetes Pod の名前。次に例を示します。

diagnostic:
 podNames:
 - apigee-runtime-eng-hybrid-example-3b2ebf3-150-8vfoj-2wcjn
 - apigee-runtime-eng-hybrid-example-3b2ebf3-150-8vfoj-6xzn2
diagnostic.serviceAccountPath 基本 導入バージョン: 1.6.0

デフォルト値: なし

必須

ストレージ管理者のロール(roles/storage.admin)を持つサービス アカウント(ほとんどの Apigee ハイブリッド インストールでは apigee-cassandra)のキーファイル(.json)へのパス。

サービス アカウントについてをご覧ください。

diagnostic.tcpDumpDetails.maxMsgs 基本 導入バージョン: 1.6.0

デフォルト値: なし

diagnostic.tcpDumpDetails を使用している場合、diagnostic.tcpDumpDetails.maxMsgs または diagnostic.tcpDumpDetails.timeoutInSeconds必須です。

収集する tcpDump メッセージの最大数を設定します。この最大値は 1000 以下にすることをおすすめします。

diagnostic.tcpDumpDetails.timeoutInSeconds 基本 導入バージョン: 1.6.0

デフォルト値: なし

diagnostic.tcpDumpDetails を使用している場合、diagnostic.tcpDumpDetails.maxMsgs または diagnostic.tcpDumpDetails.timeoutInSeconds必須です。

tcpDump がメッセージを返すのを待機する時間を秒単位で設定します。

diagnostic.threadDumpDetails.delayInSeconds 基本 導入バージョン: 1.6.0

デフォルト値: なし

diagnostic.threadDumpDetails を使用している場合は、diagnostic.threadDumpDetails.delayInSecondsdiagnostic.threadDumpDetails.iterations の両方が必須です。

各スレッドダンプを収集する間の遅延(秒)。

diagnostic.threadDumpDetails.iterations 基本 導入バージョン: 1.6.0

デフォルト値: なし

diagnostic.threadDumpDetails を使用している場合は、diagnostic.threadDumpDetails.delayInSecondsdiagnostic.threadDumpDetails.iterations の両方が必須です。

収集する jstack スレッドダンプの反復回数。

envs

API プロキシをデプロイできる環境の配列を定義します。各環境は、API プロキシを稼働させるための分離コンテキストまたは「サンドボックス」として使用できます。

ハイブリッド対応組織には少なくとも 1 つの環境が必要です。

詳しくは、環境についてをご覧ください。

次の表に、envs オブジェクトのプロパティを示します。

プロパティ 説明
envs[].cacheEncryptionKey 基本 導入バージョン: 1.0.0

デフォルト値: なし

cacheEncryptionKeycacheEncryptionPathcacheEncryptionSecret は、いずれか 1 つのみが必要です。

Base64 でエンコードされた暗号鍵。データの暗号化をご覧ください。

envs[].cacheEncryptionPath 基本 導入バージョン: 1.2.0

デフォルト値: なし

cacheEncryptionKeycacheEncryptionPathcacheEncryptionSecret は、いずれか 1 つのみが必要です。

Base64 でエンコードされた暗号鍵を含むファイルへのパス。データの暗号化をご覧ください。

envs[].cacheEncryptionSecret.key 基本 導入バージョン: 1.2.0

デフォルト値: なし

cacheEncryptionKeycacheEncryptionPathcacheEncryptionSecret は、いずれか 1 つのみが必要です。

Base64 でエンコードされた暗号鍵を含む Kubernetes Secret の鍵。データの暗号化をご覧ください。

envs[].cacheEncryptionSecret.name 基本 導入バージョン: 1.2.0

デフォルト値: なし

cacheEncryptionKeycacheEncryptionPathcacheEncryptionSecret のいずれかが必要です。

Base64 でエンコードされた暗号鍵を含む Kubernetes Secret の名前。データの暗号化をご覧ください。

envs[].components.runtime.replicaCountMax 基本 導入バージョン: 1.9.3

デフォルト値: 4

自動スケーリング用のレプリカの最大数。指定されている場合、runtime.replicaCountMax をオーバーライドします。

envs[].components.runtime.replicaCountMin 基本 導入バージョン: 1.9.3

デフォルト値: 1

自動スケーリング用のレプリカの最小数。指定されている場合、runtime.replicaCountMin をオーバーライドします。

envs[].components.synchronizer.replicaCountMax 基本 導入バージョン: 1.9.3

デフォルト値: 4

自動スケーリング用のレプリカの最大数。指定されている場合、synchronizer.replicaCountMax をオーバーライドします。

envs[].components.synchronizer.replicaCountMin 基本 導入バージョン: 1.9.3

デフォルト値: 1

自動スケーリング用のレプリカの最小数。指定されている場合、synchronizer.replicaCountMin をオーバーライドします。

envs[].components.udca.replicaCountMax 基本 導入バージョン: 1.9.3

デフォルト値: 4

自動スケーリング用のレプリカの最大数。指定されている場合、udca.replicaCountMax をオーバーライドします。

envs[].components.udca.replicaCountMin 基本 導入バージョン: 1.9.3

デフォルト値: 1

自動スケーリング用のレプリカの最小数。指定されている場合、udca.replicaCountMin をオーバーライドします。

envs.gsa.runtime 高度 導入バージョン: 1.10.0

デフォルト値: なし

Helm のみ: Helm チャートを使用して GKE クラスタで Workload Identity を有効にするときに、対応する Kubernetes サービス アカウントに関連付けるランタイム Google IAM サービス アカウントのメールアドレス。

Enabling Workload Identity with Helm charts をご覧ください。

envs.gsa.synchronizer 高度 導入バージョン: 1.10.0

デフォルト値: なし

Helm のみ: Helm チャートを使用して GKE クラスタで Workload Identity を有効にするときに、対応する Kubernetes サービス アカウントに関連付ける Synchronizer Google IAM サービス アカウントのメールアドレス。

Enabling Workload Identity with Helm charts をご覧ください。

envs.gsa.udca 高度 導入バージョン: 1.10.0

デフォルト値: なし

Helm のみ: Helm チャートを使用して GKE クラスタで Workload Identity を有効にするときに、対応する Kubernetes サービス アカウントに関連付ける env-scoped udca の udca Google IAM サービス アカウントのメールアドレス。

Enabling Workload Identity with Helm charts をご覧ください。

envs[].hostAliases[] 基本 導入バージョン: 1.2.0

デフォルト値: なし

Deprecated: ハイブリッド バージョン 1.4 以降では、ランタイム プレーンは管理プレーンからこの情報を受け取ります。環境と環境グループについてをご覧ください。

envs[].httpProxy.host 基本 導入バージョン: 1.2.0

デフォルト値: なし

HTTP プロキシが実行されているホスト名または IP アドレスを指定します。

httpProxy プロパティは、schemehostport の順に指定します。次に例を示します。

envs:
  - name: test
    httpProxy:
      scheme: HTTP
      host: 10.12.0.47
      port: 3128
      ...

API プロキシのフォワード プロキシを構成するもご覧ください。

envs[].httpProxy.port 基本 導入バージョン: 1.2.0

デフォルト値: なし

HTTP プロキシが実行されているポートを指定します。このプロパティを省略すると、HTTP の場合はポート 80、HTTPS の場合はポート 443 がデフォルトで使用されます。

envs[].httpProxy.scheme 基本 導入バージョン: 1.2.0

デフォルト値: なし

HTTP プロキシのタイプを HTTP または HTTPS として指定します。デフォルトでは "HTTP" が使用されます。

envs[].httpProxy.username 基本 導入バージョン: 1.2.0

デフォルト値: なし

HTTP プロキシで基本認証が必要な場合、このプロパティを使用してユーザー名を指定します。

envs[].httpProxy.password 基本 導入バージョン: 1.2.0

デフォルト値: なし

HTTP プロキシで基本認証が必要な場合、このプロパティを使用してパスワードを指定します。

envs[].name 基本 導入バージョン: 1.0.0

デフォルト値: なし

必須

同期する Apigee 環境名。

envs[].pollInterval 高度 導入バージョン: 1.0.0

デフォルト値: なし

組織と環境の同期を取るために変更をポーリングする間隔(秒単位)。

envs[].port 高度 導入バージョン: 1.0.0

デフォルト値: なし

HTTPS トラフィックの TCP ポート番号。

envs[].serviceAccountPaths.runtime 基本 導入バージョン: 1.4.0

デフォルト値: なし

ローカル システム上での、Cloud Trace エージェントのロールを持つ Google サービス アカウント(通常は apigee-runtime)のキーファイルへのパス。サービス アカウントのデフォルト名と割り当てられているロールについては、サービス アカウントについてをご覧ください。

envs[].serviceAccountPaths.synchronizer 基本 導入バージョン: 1.0.

デフォルト値: なし

ローカル システム上での、Apigee Synchronizer 管理者のロールを持つ Google サービス アカウントのキーファイルへのパス。

envs[].serviceAccountPaths.udca 基本 導入バージョン: 1.0.

デフォルト値: なし

ローカル システム上での、Apigee Analytics エージェントのロールを持つ Google サービス アカウントのキーファイルへのパス。

このプロパティは、orgScopedUDCAfalse に設定されている場合にのみ設定します。

envs[].serviceAccountSecretRefs.runtime 基本 導入バージョン: 1.4.0

デフォルト値: なし

Kubernetes Secret の名前。Cloud Trace エージェント ロールを持つ Google サービス アカウント キーを入力として使用し、Secret を作成する必要があります。

envs[].serviceAccountSecretRefs.synchronizer 基本 導入バージョン: 1.2.0

デフォルト値: なし

Kubernetes Secret の名前。Apigee Synchronizer 管理者ロールを持つ Google サービス アカウント キーを入力として使用し、Secret を作成する必要があります。

envs[].serviceAccountSecretRefs.udca 基本 導入バージョン: 1.2.0

デフォルト値: なし

Kubernetes Secret の名前。Apigee Analysis エージェントのロールを持つ Google サービス アカウント キーを入力として使用し、この Secret を作成する必要があります。

このプロパティは、orgScopedUDCAfalse に設定されている場合にのみ設定します。

envs[].sslCertPath 基本 導入バージョン: 1.2.0

デフォルト値: なし

sslCertPathsslKeyPath を設定するか、sslSecret を設定する必要があります

システム上の TLS 証明書ファイルへのパス。

envs[].sslKeyPath 基本 導入バージョン: 1.2.0

デフォルト値: なし

sslCertPathsslKeyPath を設定するか、sslSecret を設定する必要があります。

システム上の TLS 秘密鍵ファイルへのパス。

envs[].sslSecret 基本 導入バージョン: 1.2.0

デフォルト値: なし

sslCertPathsslKeyPath を設定するか、sslSecret を設定する必要があります

TLS 証明書と秘密鍵を含む、Kubernetes Secret に格納されているファイルの名前。TLS 証明書と鍵データを入力として使用し、この Secret を作成する必要があります。

関連項目:

gcp

apigee-loggerapigee-metrics がデータを push する Google Cloud プロジェクト ID とリージョンを識別します。

次の表に、gcp オブジェクトのプロパティを示します。

プロパティ 説明
gcp.region 基本 導入バージョン: 1.2.0

デフォルト値: us-central1

必須

apigee-loggerapigee-metrics がデータを push する Google Cloud リージョンを識別します。

gcp.projectID 基本 導入バージョン: 1.2.0

デフォルト値: なし

必須

apigee-loggerapigee-metrics がデータを push する Google Cloud プロジェクトを識別します。

gcp.projectIDRuntime 基本 導入バージョン: 1.2.0

デフォルト値: なし

ランタイム Kubernetes クラスタ プロジェクトを特定します。

projectIDRuntime プロパティは省略できます。使用しない場合、Apigee 組織の Google Cloud プロジェクトとランタイム K8s クラスタのプロジェクトの両方で projectID 値が使用されることが想定されます。

gcp.workloadIdentity.enabled 基本 導入バージョン: 1.10.0

デフォルト値: false

Helm のみ: Workload Identity の使用を有効にします。Workload Identity を使用すると、GKE クラスタ内のワークロードが Identity and Access Management(IAM)サービス アカウントの権限を借用して Google Cloud サービスにアクセスできます。

enabledfalse(デフォルト)の場合、Apigee は各 Apigee ハイブリッド コンポーネントで IAM サービス アカウントを使用します。サービス アカウントについてをご覧ください。

workloadIdentityEnabledtrue の場合、Apigee は Kubernetes サービス アカウントを使用し、コンポーネントごとに適切な IAM サービス アカウントに Kubernetes サービス アカウントをマッピングします。以下のプロパティを使用して、Kubernetes サービス アカウントにマッピングする IAM サービス アカウントを指定します。

gcp.workloadIdentity.gsa 高度 導入バージョン: 1.10.0

デフォルト値: なし

Helm のみ: Helm チャートを使用して GKE クラスタで Workload Identity を有効にするときに、対応する Kubernetes サービス アカウントに関連付けるすべてのコンポーネントの Google IAM サービス アカウント(GSA)のメールアドレス。このプロパティは、gcp.workloadIdentity.enabledtrue に設定した場合に設定します。

gcp.workloadIdentity.gsa は、すべてのハイブリッド コンポーネントに適用されます。gcp.workloadIdentity.gsa の値を指定する場合、個々のハイブリッド コンポーネントに GSA を指定する必要はありません。個々のコンポーネントに GSA を指定した場合、そのコンポーネントの GSA は、そのコンポーネントの gcp.workloadIdentity.gsa のみをオーバーライドします。

通常、GSA のメールアドレスの形式は次のとおりです。

GSA_NAME@PROJECT_ID.iam.gserviceaccount.com

例:

apigee-non-prod@my-hybrid-project.iam.gserviceaccount.com

Enabling Workload Identity with Helm charts をご覧ください。

gcp.workloadIdentityEnabled 基本 導入バージョン: 1.4.0

デフォルト値: false

apigeectl のみ: Workload Identity の使用を有効にします。Workload Identity を使用すると、GKE クラスタ内のワークロードが Identity and Access Management(IAM)サービス アカウントの権限を借用して Google Cloud サービスにアクセスできます。

workloadIdentityEnabledfalse(デフォルト)の場合、Apigee は各 Apigee ハイブリッド コンポーネントで IAM サービス アカウントを使用します。サービス アカウントについてをご覧ください。

workloadIdentityEnabledtrue の場合、Apigee は IAM サービス アカウントではなく Kubernetes サービス アカウントを使用します。次の構成プロパティは無視されます。

httpProxy

httpProxy では、HTTP 転送プロキシ サーバー用の構成パラメータを利用できます。overrides.yaml でプロキシ サーバーが構成されている場合、MART、Synchronizer、UDCA コンポーネントのインターネット通信はすべてプロキシ サーバーを通過します。

をご覧ください。

loggermartmetricssynchronizerudca もご覧ください。

次の表に、httpProxy オブジェクトのプロパティを示します。

プロパティ 説明
httpProxy.host 基本 導入バージョン: 1.1.1

デフォルト値: なし

HTTP プロキシのホスト名。

httpProxy.port 基本 導入バージョン: 1.1.1

デフォルト値: なし

HTTP プロキシのポート。

httpProxy.scheme 基本 導入バージョン: 1.1.1

デフォルト値: HTTPS

プロキシで使用されるスキーム。値は HTTP または HTTPS です。値に使用できるのは大文字のみです。

httpProxy.username 基本 導入バージョン: 1.1.1

デフォルト値: なし

HTTP プロキシで基本認証が必要な場合、このプロパティを使用してユーザー名を指定します。

httpProxy.password 基本 導入バージョン: 1.1.1

デフォルト値: なし

HTTP プロキシで基本認証が必要な場合、このプロパティを使用してパスワードを指定します。

ingressGateways

Apigee Ingress ゲートウェイの各インスタンスを構成します。これらのプロパティは、ingressGateways[].name で個別のインスタンスを独立して管理する場合に使用します。

Apigee Ingress ゲートウェイのすべてのインスタンスに共通の構成を適用するには、apigeeIngressGateway をご覧ください。

Helm で Apigee ハイブリッドを管理している場合は、apigee-org チャートで ingressGateways プロパティに変更を適用します。

次の表に、ingressGateways オブジェクトのプロパティを示します。

プロパティ 説明
ingressGateways[].name 基本 導入バージョン: 1.8.0

デフォルト値: なし

必須

Ingress ゲートウェイの名前。他のサービスは、この名前を使用してトラフィックをゲートウェイに対応付けます。この名前は次の要件を満たす必要があります。

  • 最大文字数が 17 文字
  • 小文字の英数字、「-」、「.」のみを使用する
  • 先頭が英数字である
  • 末尾が英数字である

詳細については、Kubernetes ドキュメントの DNS サブドメイン名をご覧ください。

ingressGateways[].resources.limits.cpu 高度 導入バージョン: 1.8.0

デフォルト値: 2000m

リソースの CPU 上限(ミリコア単位)。

ingressGateways[].resources.limits.memory 高度 導入バージョン: 1.8.0

デフォルト値: 1Gi

リソースのメモリ上限(メビバイト単位)。

ingressGateways[].resources.requests.cpu 高度 導入バージョン: 1.8.0

デフォルト値: 300m

リソースの通常オペレーションに必要な CPU(ミリコア単位)。

ingressGateways[].resources.requests.memory 高度 導入バージョン: 1.8.0

デフォルト値: 128Mi

リソースの通常オペレーションに必要なメモリ(MiB 単位)。

ingressGateways[].replicaCountMax 基本 導入バージョン: 1.8.0

デフォルト値: 10

ハイブリッドが自動スケーリングで使用できる Ingress ゲートウェイに自動的に追加できる Pod の最大数。

ingressGateways[].replicaCountMin 基本 導入バージョン: 1.8.0

デフォルト値: 2

自動スケーリングに使用できる Ingress ゲートウェイの Pod の最小数。

ingressGateways[].svcAnnotations 基本 導入バージョン: 1.8.0

デフォルト値: なし

(省略可)アノテーションをサポートするプラットフォームで Ingress ゲートウェイにアノテーションを付けるために使用される Key-Value マップ。次に例を示します。

ingressGateways:
  svcAnnotations:
    networking.gke.io/load-balancer-type: "Internal"
ingressGateways[].svcLoadBalancerIP 基本 導入バージョン: 1.8.0

デフォルト値: なし

ロードバランサの IP アドレスの指定をサポートするプラットフォームでは、この IP アドレスを使用してロードバランサが作成されます。ロードバランサの IP アドレスを指定できないプラットフォームでは、このプロパティは無視されます。

ingressGateways[].svcType 基本 導入バージョン: 1.8.1

デフォルト値: LoadBalancer

Ingress デプロイのデフォルトの K8s サービスのタイプを変更するために使用します。デフォルトのロードバランサの作成を無効にする場合は、値を ClusterIP に設定してください。値は次のいずれかです。

  • ClusterIP
  • LoadBalancer
ingressGateways[].targetCPUUtilizationPercentage 高度 導入バージョン: 1.10.5、1.11.2

デフォルト値: 75

ReplicaSet 内の Pod 数をスケーリングするために使用する CPU 使用率のしきい値(使用可能な CPU リソースの合計に対する割合)。

CPU 使用率がこの値を超えると、ReplicaSet 内の Pod 数が徐々に増加します(最大で ingressGateways[].replicaCountMax)。

Kubernetes でのスケーリングの詳細については、Kubernetes ドキュメントの水平 Pod 自動スケーリングをご覧ください。

ingressGateways[].tolerations.effect 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

effect は、taint と一致する toleration の効果を指定します。effect の値は次のいずれかです。

  • NoExecute
  • NoSchedule
  • PreferNoSchedule

詳細については、taint と toleration: コンセプトをご覧ください。

ingressGateways[].tolerations.key 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

key は、toleration を適用できる Pod を識別します。

詳細については、taint と toleration: コンセプトをご覧ください。

ingressGateways[].tolerations.operator 高度 導入バージョン: 1.10.1

デフォルト値: "Equal"

Kubernetes の taint と toleration 機能を使用するために必要です。

operator には、effect をトリガーするオペレーションを指定します。operator の値は次のいずれかです。

  • Equal は、value に設定された値と一致します。
  • Exists は、value に設定された値を無視します。

詳細については、taint と toleration: コンセプトをご覧ください。

ingressGateways[].tolerations.tolerationSeconds 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

tolerationSeconds は、障害が発生しているノードまたは応答していないノードに Pod がバインドされている時間を秒単位で定義します。

詳細については、taint と toleration: コンセプトをご覧ください。

ingressGateways[].tolerations.value 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

value は、operatorEqual に設定されている場合に effect をトリガーする値です。

詳細については、taint と toleration: コンセプトをご覧ください。

istiod

Apigee Ingress を構成します。

次の表に、istiod オブジェクトのプロパティを示します。

プロパティ 説明
istiod.accessLogFile 高度 導入バージョン: 1.8.0

デフォルト値: /dev/stdout

Ingress アクセスログのファイル アドレス(例: /dev/stdout)。

この値を未定義のままにすると、アクセス ロギングが無効になります。

istiod.accessLogFormat 高度 導入バージョン: 1.8.0

Ingress アクセスログの形式。

この値を未定義のままにすると、プロキシのデフォルトのアクセスログ形式が使用されます。

デフォルトのアクセスログの形式:

'{"start_time":"%START_TIME%","remote_address":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS%","user_agent":"%REQ(USER-AGENT)%","host":"%REQ(:AUTHORITY)%","request":"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%","request_time":"%DURATION%","status":"%RESPONSE_CODE%","status_details":"%RESPONSE_CODE_DETAILS%","bytes_received":"%BYTES_RECEIVED%","bytes_sent":"%BYTES_SENT%","upstream_address":"%UPSTREAM_HOST%","upstream_response_flags":"%RESPONSE_FLAGS%","upstream_response_time":"%RESPONSE_DURATION%","upstream_service_time":"%RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)%","upstream_cluster":"%UPSTREAM_CLUSTER%","x_forwarded_for":"%REQ(X-FORWARDED-FOR)%","request_method":"%REQ(:METHOD)%","request_path":"%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%","request_protocol":"%PROTOCOL%","tls_protocol":"%DOWNSTREAM_TLS_VERSION%","request_id":"%REQ(X-REQUEST-ID)%","sni_host":"%REQUESTED_SERVER_NAME%","apigee_dynamic_data":"%DYNAMIC_METADATA(envoy.lua)%"}'

以下は、読みやすくするために改行を加えたデフォルトのアクセスログ形式のコピーです。

'{"start_time":"%START_TIME%",
  "remote_address":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS%",
  "user_agent":"%REQ(USER-AGENT)%",
  "host":"%REQ(:AUTHORITY)%",
  "request":"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%",
  "request_time":"%DURATION%",
  "status":"%RESPONSE_CODE%",
  "status_details":"%RESPONSE_CODE_DETAILS%",
  "bytes_received":"%BYTES_RECEIVED%",
  "bytes_sent":"%BYTES_SENT%",
  "upstream_address":"%UPSTREAM_HOST%",
  "upstream_response_flags":"%RESPONSE_FLAGS%",
  "upstream_response_time":"%RESPONSE_DURATION%",
  "upstream_service_time":"%RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)%",
  "upstream_cluster":"%UPSTREAM_CLUSTER%",
  "x_forwarded_for":"%REQ(X-FORWARDED-FOR)%",
  "request_method":"%REQ(:METHOD)%",
  "request_path":"%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%",
  "request_protocol":"%PROTOCOL%",
  "tls_protocol":"%DOWNSTREAM_TLS_VERSION%",
  "request_id":"%REQ(X-REQUEST-ID)%",
  "sni_host":"%REQUESTED_SERVER_NAME%",
  "apigee_dynamic_data":"%DYNAMIC_METADATA(envoy.lua)%"}'
istiod.forwardClientCertDetails 高度 導入バージョン: 1.9.2

デフォルト値: SANITIZE_SET

Envoy プロキシ(Apigee Ingress ゲートウェイ用)で x-forwarded-client-cert(XFCC)HTTP ヘッダーを処理する方法を指定します。

有効な値は次のとおりです。

  • SANITIZE_SET: (デフォルト)クライアント接続が mTLS の場合に、クライアント証明書情報で XFCC ヘッダーをリセットしてネクストホップに送信します。
  • FORWARD_ONLY: クライアント接続が mTLS(相互 TLS)の場合に、リクエスト内の XFCC ヘッダーのみを転送します。
  • APPEND_FORWARD: クライアント接続が mTLS の場合に、クライアント証明書情報をリクエストの XFCC ヘッダーに追加して転送します。
  • SANITIZE: XFCC ヘッダーを転送しません。
  • ALWAYS_FORWARD_ONLY: クライアント接続が mTLS であるかどうかにかかわらず、リクエスト内の XFCC ヘッダーを常に転送します。

これらの値の詳細については、Envoy ドキュメントの Enum extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.ForwardClientCertDetails をご覧ください。

ハイブリッドのインストール後にこの設定を変更する場合は、apigeectl init を使用して設定を適用してから、Apigee Ingress ゲートウェイ Pod を再起動します。

istiod.image.pullPolicy 高度 導入バージョン: 1.8.0

デフォルト値: IfNotPresent

kubelet が Pod の Docker イメージを pull するタイミングを決定します。有効な値は次のとおりです。

  • IfNotPresent: イメージがすでに存在する場合、新しいイメージは pull しません。
  • Always: イメージがすでに存在するかどうかにかかわらず、常にイメージを pull します。

詳細については、イメージの更新をご覧ください。

istiod.image.tag 高度 導入バージョン: 1.8.0

デフォルト値: 1.18.7-asm.26-distroless

このサービスの Docker イメージのバージョン ラベル。

istiod.image.url 高度 導入バージョン: 1.8.0

デフォルト値: なし

このサービスの Docker イメージの場所。

apigee-pull-push --list を使用して、このコンポーネントの現在のリポジトリ URL を確認できます。

istiod.tolerations.effect 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

effect は、taint と一致する toleration の効果を指定します。effect の値は次のいずれかです。

  • NoExecute
  • NoSchedule
  • PreferNoSchedule

詳細については、taint と toleration: コンセプトをご覧ください。

istiod.tolerations.key 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

key は、toleration を適用できる Pod を識別します。

詳細については、taint と toleration: コンセプトをご覧ください。

istiod.tolerations.operator 高度 導入バージョン: 1.10.1

デフォルト値: "Equal"

Kubernetes の taint と toleration 機能を使用するために必要です。

operator には、effect をトリガーするオペレーションを指定します。operator の値は次のいずれかです。

  • Equal は、value に設定された値と一致します。
  • Exists は、value に設定された値を無視します。

詳細については、taint と toleration: コンセプトをご覧ください。

istiod.tolerations.tolerationSeconds 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

tolerationSeconds は、障害が発生しているノードまたは応答していないノードに Pod がバインドされている時間を秒単位で定義します。

詳細については、taint と toleration: コンセプトをご覧ください。

istiod.tolerations.value 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

value は、operatorEqual に設定されている場合に effect をトリガーする値です。

詳細については、taint と toleration: コンセプトをご覧ください。

k8sCluster

ハイブリッド ランタイムがインストールされている Kubernetes クラスタを識別します。

次の表に、k8sCluster オブジェクトのプロパティを示します。

プロパティ 説明
k8sCluster.name 基本 導入バージョン: 1.2.0

デフォルト値: なし

ハイブリッド ランタイムがインストールされている Kubernetes クラスタの名前。

k8sCluster.region 基本 導入バージョン: 1.2.0

デフォルト値: なし

Kubernetes クラスタが作成された Google Cloud リージョンを識別します。

kubeRBACProxy

Apigee が Kubernetes のロールベースのアクセス制御を探す場所を識別します。

次の表に、kubeRBACProxy オブジェクトのプロパティを示します。

プロパティ 説明
kubeRBACProxy.image.pullPolicy 高度 導入バージョン: 1.2.0

デフォルト値: IfNotPresent

kubelet が Pod の Docker イメージを pull するタイミングを決定します。有効な値は次のとおりです。

  • IfNotPresent: イメージがすでに存在する場合、新しいイメージは pull しません。
  • Always: イメージがすでに存在するかどうかにかかわらず、常にイメージを pull します。

詳細については、イメージの更新をご覧ください。

kubeRBACProxy.image.tag 高度 導入バージョン: 1.2.0

デフォルト値: v0.14.2

このサービスの Docker イメージのバージョン ラベル。

kubeRBACProxy.image.url 高度 導入バージョン: 1.2.0

デフォルト値: なし

このサービスの Docker イメージの場所。

apigee-pull-push --list を使用して、このコンポーネントの現在のリポジトリ URL を確認できます。

kubeRBACProxy.resources.limits.cpu 高度 導入バージョン: 1.11.0

デフォルト値: 500m

Kubernetes コンテナ内のリソースの CPU 上限(ミリコア単位)。

kubeRBACProxy.resources.limits.memory 高度 導入バージョン: 1.11.0

デフォルト値: 128Mi

Kubernetes コンテナ内のリソースのメモリ上限(MiB 単位)。

kubeRBACProxy.resources.requests.cpu 高度 導入バージョン: 1.11.0

デフォルト値: 5m

Kubernetes コンテナ内のリソースの通常オペレーションに必要な CPU(ミリコア単位)。

kubeRBACProxy.resources.requests.memory 高度 導入バージョン: 1.11.0

デフォルト値: 64Mi

Kubernetes コンテナ内のリソースの通常のオペレーションに必要なメモリ(メビバイト単位)。

logger

運用ログを管理するサービスを定義します。この情報は、Kubernetes クラスタで実行されるすべての Apigee Hybrid サービスから出力されます。

詳しくは、ロギングの概要をご覧ください。

次の表に、logger オブジェクトのプロパティを示します。

プロパティ 説明
logger.annotations 高度 導入バージョン: 1.5.0

デフォルト値: なし

(省略可)Pod にアノテーションを付けるために使用する Key-Value マップ。詳しくは、カスタム アノテーションをご覧ください。

logger.enabled 基本 導入バージョン: 1.0.0

デフォルト値: false

クラスタでのロギングを有効または無効にします。GKE 以外の場合は true に設定し、Anthos または GKE の場合は false に設定します。

logger.envVars 基本 導入バージョン: 1.8.5

デフォルト値: なし

Fluent Bit 環境変数の NO_PROXY を含めることができます。この環境変数は、HTTP プロキシ経由でトラフィックをルーティングしない URL を指定します。NO_PROXY 変数は、ホスト名のカンマ区切り文字列として次の形式で定義する必要があります。

logger:
  ...
  envVars:
    NO_PROXY: '<comma-separated-values>'

次に例を示します。

  envVars:
    NO_PROXY: 'kubernetes.default.svc,oauth2.googleapis.com,logging.googleapis.com'

HTTP 転送プロキシを有効にしている場合は、必要に応じて envVars: NO_PROXY を使用します。

Fluent Bit ドキュメントの NO_PROXY をご覧ください。

logger.fluentd.buffer_chunk_limit 高度 導入バージョン: 1.0.0

デフォルト値: 512k

バッファ チャンクの許容される最大サイズ(KB 単位)。この上限を超えるチャンクは出力キューに自動的にフラッシュされます。

logger.fluentd.buffer_queue_limit 上級 導入バージョン: 1.0.0

デフォルト値: 6

出力キューの最大長。デフォルトの上限は 256 チャンクです。

logger.fluentd.flush_interval 上級 導入バージョン: 1.0.0

デフォルト値: 5s

次のバッファ フラッシュを呼び出すまでの待機時間(秒単位)。

logger.fluentd.max_retry_wait 上級 導入バージョン: 1.0.0

デフォルト値: 30

書き込み再試行の最大間隔(秒単位)。

logger.fluentd.num_threads 上級 導入バージョン: 1.0.0

デフォルト値: 2

バッファのフラッシュに使用されるスレッドの数。デフォルトは 1 です。

logger.image.pullPolicy 上級 導入バージョン: 1.0.0

デフォルト値: IfNotPresent

kubelet が Pod の Docker イメージを pull するタイミングを決定します。有効な値は次のとおりです。

  • IfNotPresent: イメージがすでに存在する場合、新しいイメージは pull しません。
  • Always: イメージがすでに存在するかどうかにかかわらず、常にイメージを pull します。

詳細については、イメージの更新をご覧ください。

logger.gsa 高度 導入バージョン: 1.10.0

デフォルト値: なし

Helm のみ: Helm チャートを使用して GKE クラスタで Workload Identity を有効にするときに、対応する Kubernetes サービス アカウントに関連付ける apigee-logger Google IAM サービス アカウント(GSA)のメールアドレス。このプロパティは、gcp.workloadIdentity.enabledtrue に設定した場合に設定します。

通常、GSA のメールアドレスの形式は次のとおりです。

GSA_NAME@PROJECT_ID.iam.gserviceaccount.com

例:

apigee-logger@my-hybrid-project.iam.gserviceaccount.com

Enabling Workload Identity with Helm charts をご覧ください。

logger.image.tag 高度 導入バージョン: 1.0.0

デフォルト値: 1.9.9

このサービスの Docker イメージのバージョン ラベル。

logger.image.url 高度 導入バージョン: 1.0.0

デフォルト値: なし

このサービスの Docker イメージの場所。

apigee-pull-push --list を使用して、このコンポーネントの現在のリポジトリ URL を確認できます。

logger.livenessProbe.failureThreshold 高度 導入バージョン: 1.0.0

デフォルト値: 3

Kubernetes が検出する livenessProbe の失敗回数。この数に達すると、コンテナが再起動されます。最小値は 1 です。

logger.livenessProbe.initialDelaySeconds 高度 導入バージョン: 1.0.0

デフォルト値: 0

コンテナが起動してから livenessProbe が開始されるまでの秒数。

logger.livenessProbe.periodSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 60

livenessProbe を実行する頻度を秒単位で指定します。最小値は 1 です。

logger.livenessProbe.successThreshold 高度 導入バージョン: 1.0.0

デフォルト値: 1

失敗した livenessProbe が成功とみなされるために必要な最小の連続成功回数。最小値は 1 です。

logger.livenessProbe.timeoutSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 1

livenessProbe がタイムアウトするまでの秒数。最小値は 1 です。

logger.nodeSelector.key 基本 導入バージョン: 1.0.0

デフォルト値: apigee.com/apigee-logger-enabled

必須

logger ランタイム サービス専用の Kubernetes ノードの選択に使用するノードセレクタのラベルキー。

専用ノードプールの構成をご覧ください。

logger.nodeSelector.value 基本 導入バージョン: 1.0.0

デフォルト値: true

必須

logger ランタイム サービス専用の Kubernetes ノードの選択に使用するノードセレクタのラベル値。

専用ノードプールの構成をご覧ください。

logger.proxyURL 基本 導入バージョン: 1.0.0

デフォルト値: なし

お客様のプロキシ サーバーの URL。

logger.resources.limits.cpu 上級 導入バージョン: 1.0.0

デフォルト値: 200m

Kubernetes コンテナ内のリソースの CPU 上限(ミリコア単位)。

logger.resources.limits.memory 高度 導入バージョン: 1.0.0

デフォルト値: 500Mi

Kubernetes コンテナ内のリソースのメモリ上限(MiB 単位)。

logger.resources.requests.cpu 高度 導入バージョン: 1.0.0

デフォルト値: 100m

Kubernetes コンテナ内のリソースの通常オペレーションに必要な CPU(ミリコア単位)。

logger.resources.requests.memory 高度 導入バージョン: 1.0.0

デフォルト値: 250Mi

Kubernetes コンテナ内のリソースの通常のオペレーションに必要なメモリ(メビバイト単位)。

logger.serviceAccountPath 基本 導入バージョン: 1.0.0

デフォルト値: なし

serviceAccountPathserviceAccountRef は、いずれか 1 つのみが必要です。

ログ書き込みのロールを持つ Google サービス アカウントのキーファイルへのパス。

logger.serviceAccountRef 基本 導入バージョン: 1.2.0

デフォルト値: なし

serviceAccountPathserviceAccountRef は、いずれか 1 つのみが必要です。

logger.terminationGracePeriodSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 30

Pod の削除リクエストから実際に Pod が強制終了されるまでの時間(秒単位)。この期間中に停止前フックが実行され、動作中のすべてのプロセスが正常に終了します。

logger.tolerations.effect 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

effect は、taint と一致する toleration の効果を指定します。effect の値は次のいずれかです。

  • NoExecute
  • NoSchedule
  • PreferNoSchedule

詳細については、taint と toleration: コンセプトをご覧ください。

logger.tolerations.key 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

key は、toleration を適用できる Pod を識別します。

詳細については、taint と toleration: コンセプトをご覧ください。

logger.tolerations.operator 高度 導入バージョン: 1.10.1

デフォルト値: "Equal"

Kubernetes の taint と toleration 機能を使用するために必要です。

operator には、effect をトリガーするオペレーションを指定します。operator の値は次のいずれかです。

  • Equal は、value に設定された値と一致します。
  • Exists は、value に設定された値を無視します。

詳細については、taint と toleration: コンセプトをご覧ください。

logger.tolerations.tolerationSeconds 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

tolerationSeconds は、障害が発生しているノードまたは応答していないノードに Pod がバインドされている時間を秒単位で定義します。

詳細については、taint と toleration: コンセプトをご覧ください。

logger.tolerations.value 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

value は、operatorEqual に設定されている場合に effect をトリガーする値です。

詳細については、taint と toleration: コンセプトをご覧ください。

mart

MART(Management API for RunTime データ)サービスを定義します。MART はパブリック Apigee API の API プロバイダとして機能します。ユーザーはこのサービスを介して KMS(API キーと OAuth トークン)、KVM、割り当て、API プロダクトなどのランタイム データ エンティティにアクセスし、これらを管理できます。

次の表に、mart オブジェクトのプロパティを示します。

プロパティ 説明
mart.annotations 高度 導入バージョン: 1.5.0

デフォルト値: なし

(省略可)Pod にアノテーションを付けるために使用する Key-Value マップ。詳しくは、カスタム アノテーションをご覧ください。

mart.gsa 高度 導入バージョン: 1.10.0

デフォルト値: なし

Helm のみ: Helm チャートを使用して GKE クラスタで Workload Identity を有効にするときに、対応する Kubernetes サービス アカウントに関連付ける apigee-mart Google IAM サービス アカウント(GSA)のメールアドレス。このプロパティは、gcp.workloadIdentity.enabledtrue に設定した場合に設定します。

通常、GSA のメールアドレスの形式は次のとおりです。

GSA_NAME@PROJECT_ID.iam.gserviceaccount.com

例:

apigee-mart@my-hybrid-project.iam.gserviceaccount.com

Enabling Workload Identity with Helm charts をご覧ください。

mart.hostAlias 基本 導入バージョン: 1.0.0

デフォルト値: なし

MART オブジェクトを参照するホスト エイリアス。このプロパティは * または完全修飾ドメイン名に設定できます。

mart.image.pullPolicy 高度 導入バージョン: 1.0.0

デフォルト値: IfNotPresent

kubelet が Pod の Docker イメージを pull するタイミングを決定します。有効な値は次のとおりです。

  • IfNotPresent: イメージがすでに存在する場合、新しいイメージは pull しません。
  • Always: イメージがすでに存在するかどうかにかかわらず、常にイメージを pull します。

詳細については、イメージの更新をご覧ください。

mart.image.tag 高度 導入バージョン: 1.0.0

デフォルト値: 1.11.2

このサービスの Docker イメージのバージョン ラベル。

mart.image.url 高度 導入バージョン: 1.0.0

デフォルト値: なし

このサービスの Docker イメージの場所。

apigee-pull-push --list を使用して、このコンポーネントの現在のリポジトリ URL を確認できます。

mart.initCheckCF.resources.requests.cpu 高度 導入バージョン: 1.0.0

デフォルト値: 10m

Cloud Foundry プロセスの初期化チェックに割り当てられる CPU リソースの量。

mart.livenessProbe.failureThreshold 高度 導入バージョン: 1.0.0

デフォルト値: 12

Kubernetes が検出する livenessProbe の失敗回数。この数に達すると、コンテナが再起動されます。最小値は 1 です。

mart.livenessProbe.initialDelaySeconds 高度 導入バージョン: 1.0.0

デフォルト値: 15

コンテナが起動してから livenessProbe が開始されるまでの秒数。

mart.livenessProbe.periodSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 5

livenessProbe を実行する頻度を秒単位で指定します。最小値は 1 です。

mart.livenessProbe.timeoutSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 1

livenessProbe がタイムアウトするまでの秒数。最小値は 1 です。

mart.metricsURL 基本 導入バージョン: 1.0.0

デフォルト値: /v1/server/metrics

mart.nodeSelector.key 基本 導入バージョン: 1.0.0

デフォルト値: なし

mart ランタイム サービス用の Kubernetes ノードのターゲティングに使用されるノードセレクタのラベルキー(任意指定)。mart.nodeselector のキーが指定されていない場合、ランタイムでは nodeSelector オブジェクトで指定されたノードが使用されます。

専用ノードプールの構成をご覧ください。

mart.nodeSelector.value 基本 導入バージョン: 1.0.0

デフォルト値: なし

(省略可)mart ランタイム サービス用の Kubernetes ノードの選択に使用するノードセレクタのラベル値。nodeSelector オブジェクトもご覧ください。

専用ノードプールの構成をご覧ください。

mart.readinessProbe.failureThreshold 高度 導入バージョン: 1.0.0

デフォルト値: 2

Kubernetes が検出する readinessProbe の失敗回数。この数に達すると、Pod が「準備未完了」とマークされます。最小値は 1 です。

mart.readinessProbe.initialDelaySeconds 高度 導入バージョン: 1.0.0

デフォルト値: 15

コンテナが起動してから readinessProbe が開始されるまでの秒数。

mart.readinessProbe.periodSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 5

readinessProbe の実行頻度を秒単位で指定します。最小値は 1 です。

mart.readinessProbe.successThreshold 高度 導入バージョン: 1.0.0

デフォルト値: 1

失敗した readinessProbe が成功とみなされるために必要な最小の連続成功回数。最小値は 1 です。

mart.readinessProbe.timeoutSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 1

livenessProbe がタイムアウトするまでの秒数。最小値は 1 です。

mart.replicaCountMax 基本 導入バージョン: 1.0.0

デフォルト値: 5

自動スケーリングに使用できるレプリカの最大数。

mart.replicaCountMin 基本 導入バージョン: 1.0.0

デフォルト値: 1

自動スケーリングに使用できるレプリカの最小数。

mart.resources.limits.cpu 高度 導入バージョン: 1.11.0

デフォルト値: 2000m

Kubernetes コンテナ内のリソースの CPU 上限(ミリコア単位)。

mart.resources.limits.memory 高度 導入バージョン: 1.11.0

デフォルト値: 5Gi

Kubernetes コンテナ内のリソースのメモリ上限(MiB 単位)。

mart.resources.requests.cpu 高度 導入バージョン: 1.0.0

デフォルト値: 500m

Kubernetes コンテナ内のリソースの通常オペレーションに必要な CPU(ミリコア単位)。

mart.resources.requests.memory 高度 導入バージョン: 1.0.0

デフォルト値: 512Mi

Kubernetes コンテナ内のリソースの通常のオペレーションに必要なメモリ(メビバイト単位)。

mart.serviceAccountPath 基本 導入バージョン: 1.1.1

デフォルト値: なし

serviceAccountPath または serviceAccountRef のいずれか一方を指定する必要があります。

ロールなしの Google サービス アカウントのキーファイルへのパス。

mart.serviceAccountRef 基本 導入バージョン: 1.2.0

デフォルト値: なし

serviceAccountPath または serviceAccountRef のいずれか一方を指定する必要があります。

mart.sslCertPath 基本 導入バージョン: 1.0.0

デフォルト値: なし

sslCertPathsslKeyPath を設定するか、sslSecret を設定する必要があります。

SSL 証明書を Secret に読み込んでエンコードするためのローカル ファイル システム上のパス。

mart.sslKeyPath 基本 導入バージョン: 1.0.0

デフォルト値: なし

sslCertPathsslKeyPath を設定するか、sslSecret を設定する必要があります

SSL 鍵を Secret に読み込んでエンコードするためのローカル ファイル システムのパス。

mart.sslSecret 基本 導入バージョン: 1.2.0

デフォルト値: なし

sslCertPathsslKeyPath を設定するか、sslSecret を設定する必要があります。

TLS 証明書と秘密鍵を含む、Kubernetes Secret に格納されているファイルの名前。TLS 証明書と鍵データを入力として使用し、この Secret を作成する必要があります。

関連項目:

mart.targetCPUUtilizationPercentage 高度 導入バージョン: 1.0.0

デフォルト値: 75

Pod 上の MART プロセスのターゲット CPU 使用率。CPU 使用率がこのフィールドの値に達すると、MART が(最大で replicaCountMax まで)自動的にスケールします。

mart.terminationGracePeriodSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 30

Pod の削除リクエストから実際に Pod が強制終了されるまでの時間(秒単位)。この期間中に停止前フックが実行され、動作中のすべてのプロセスが正常に終了します。

mart.tolerations.effect 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

effect は、taint と一致する toleration の効果を指定します。effect の値は次のいずれかです。

  • NoExecute
  • NoSchedule
  • PreferNoSchedule

詳細については、taint と toleration: コンセプトをご覧ください。

mart.tolerations.key 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

key は、toleration を適用できる Pod を識別します。

詳細については、taint と toleration: コンセプトをご覧ください。

mart.tolerations.operator 高度 導入バージョン: 1.10.1

デフォルト値: "Equal"

Kubernetes の taint と toleration 機能を使用するために必要です。

operator には、effect をトリガーするオペレーションを指定します。operator の値は次のいずれかです。

  • Equal は、value に設定された値と一致します。
  • Exists は、value に設定された値を無視します。

詳細については、taint と toleration: コンセプトをご覧ください。

mart.tolerations.tolerationSeconds 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

tolerationSeconds は、障害が発生しているノードまたは応答していないノードに Pod がバインドされている時間を秒単位で定義します。

詳細については、taint と toleration: コンセプトをご覧ください。

mart.tolerations.value 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

value は、operatorEqual に設定されている場合に effect をトリガーする値です。

詳細については、taint と toleration: コンセプトをご覧ください。

metrics

オペレーション指標を収集するサービスを定義します。この指標データは、ハイブリッド サービスの状態のモニタリングやアラートの設定などの用途に使用できます。

詳細については、指標の収集の概要をご覧ください。

次の表に、metrics オブジェクトのプロパティを示します。

プロパティ 説明
metrics.adapter.image.pullPolicy 高度 導入バージョン: 1.8.1

デフォルト値: IfNotPresent

kubelet が Pod の Docker イメージを pull するタイミングを決定します。有効な値は次のとおりです。

  • IfNotPresent: イメージがすでに存在する場合、新しいイメージは pull しません。
  • Always: イメージがすでに存在するかどうかにかかわらず、常にイメージを pull します。

詳細については、イメージの更新をご覧ください。

metrics.adapter.image.tag 高度 導入バージョン: 1.8.1

デフォルト値: v0.11.0

このサービスの Docker イメージのバージョン ラベル。

metrics.adapter.image.url 高度 導入バージョン: 1.8.1

デフォルト値: なし

このサービスの Docker イメージの場所。

apigee-pull-push --list を使用して、このコンポーネントの現在のリポジトリ URL を確認できます。

metrics.aggregator.resources.requests.cpu 高度 導入バージョン: 1.4.0

デフォルト値: 500m

Kubernetes コンテナ内のアグリゲータの通常オペレーションに必要な CPU(ミリコア単位)。

metrics.aggregator.resources.requests.memory 高度 導入バージョン: 1.4.0

デフォルト値: 512Mi

Kubernetes コンテナ内のアグリゲータの通常オペレーションに必要なメモリ(メビバイト単位)。

metrics.aggregator.resources.limits.cpu 高度 導入バージョン: 1.4.0

デフォルト値: 500m

Kubernetes コンテナ内のアグリゲータ リソースの CPU 上限(ミリコア単位)。

metrics.aggregator.resources.limits.memory 高度 導入バージョン: 1.4.0

デフォルト値: 3Gi

Kubernetes コンテナ内のアグリゲータ リソースのメモリ上限(GiB 単位)。

metrics.annotations 高度 導入バージョン: 1.5.0

デフォルト値: なし

(省略可)Pod にアノテーションを付けるために使用する Key-Value マップ。詳しくは、カスタム アノテーションをご覧ください。

metrics.app.resources.requests.cpu 高度 導入バージョン: 1.4.0

デフォルト値: 500m

Kubernetes コンテナ内のアプリの通常オペレーションに必要な CPU(ミリコア単位)。

metrics.app.resources.requests.memory 高度 導入バージョン: 1.4.0

デフォルト値: 512Mi

Kubernetes コンテナ内のアプリの通常オペレーションに必要なメモリ(メビバイト単位)。

metrics.app.resources.limits.cpu 高度 導入バージョン: 1.4.0

デフォルト値: 500m

Kubernetes コンテナ内のアプリリソースの CPU 上限(ミリコア単位)。

metrics.app.resources.limits.memory 高度 導入バージョン: 1.4.0

デフォルト値: 1Gi

Kubernetes コンテナ内のアプリリソースのメモリ上限(GiB 単位)。

metrics.appStackdriverExporter.resources.requests.cpu 高度 導入バージョン: 1.7.0

デフォルト値: 128m

Kubernetes コンテナ内の stackdriverExporter の通常オペレーションに必要な CPU(ミリコア単位)。

metrics.appStackdriverExporter.resources.requests.memory 高度 導入バージョン: 1.7.0

デフォルト値: 512Mi

Kubernetes コンテナ内の stackdriverExporter の通常オペレーションに必要なメモリ(メビバイト単位)。

metrics.appStackdriverExporter.resources.limits.cpu 高度 導入バージョン: 1.7.0

デフォルト値: 500m

Kubernetes コンテナ内の stackdriverExporter リソースの CPU 上限(ミリコア単位)。

metrics.appStackdriverExporter.resources.limits.memory 高度 導入バージョン: 1.7.0

デフォルト値: 1Gi

Kubernetes コンテナ内の stackdriverExporter リソースのメモリ上限(GiB 単位)。

metrics.enabled 基本 導入バージョン: 1.0.0

デフォルト値: true

Apigee の指標を有効にします。true に設定すると、指標が有効になります。false に設定すると、指標が無効になります。

metrics.gsa 高度 導入バージョン: 1.10.0

デフォルト値: なし

Helm のみ: Helm チャートを使用して GKE クラスタで Workload Identity を有効にするときに、対応する Kubernetes サービス アカウントに関連付ける apigee-metrics Google IAM サービス アカウント(GSA)のメールアドレス。このプロパティは、gcp.workloadIdentity.enabledtrue に設定した場合に設定します。

通常、GSA のメールアドレスの形式は次のとおりです。

GSA_NAME@PROJECT_ID.iam.gserviceaccount.com

例:

apigee-metrics@my-hybrid-project.iam.gserviceaccount.com

Enabling Workload Identity with Helm charts をご覧ください。

metrics.nodeSelector.key 基本 導入バージョン: 1.0.0

デフォルト値: なし

必須

metrics ランタイム サービス専用の Kubernetes ノードの選択に使用するノードセレクタのラベルキー。

専用ノードプールの構成をご覧ください。

metrics.nodeSelector.value 基本 導入バージョン: 1.0.0

デフォルト値: なし

必須

metrics ランタイム サービス専用の Kubernetes ノードの選択に使用するノードセレクタのラベル値。

専用ノードプールの構成をご覧ください。

metrics.prometheus.args.storage_tsdb_retention 高度 導入バージョン: 1.0.0

デフォルト値: 48h

Prometheus がローカル ストレージにデータを保持する時間(時間単位)。

metrics.prometheus.containerPort 上級 導入バージョン: 1.0.0

デフォルト値: 9090

Prometheus 指標サービスに接続するためのポート。

metrics.prometheus.image.pullPolicy 高度 導入バージョン: 1.0.0

デフォルト値: IfNotPresent

kubelet が Pod の Docker イメージを pull するタイミングを決定します。有効な値は次のとおりです。

  • IfNotPresent: イメージがすでに存在する場合、新しいイメージは pull しません。
  • Always: イメージがすでに存在するかどうかにかかわらず、常にイメージを pull します。

詳細については、イメージの更新をご覧ください。

metrics.prometheus.image.tag 高度 導入バージョン: 1.0.0

デフォルト値: v2.45.0

このサービスの Docker イメージのバージョン ラベル。

metrics.prometheus.image.url 高度 導入バージョン: 1.0.0

デフォルト値: なし

このサービスの Docker イメージの場所。

apigee-pull-push --list を使用して、このコンポーネントの現在のリポジトリ URL を確認できます。

metrics.prometheus.livenessProbe.failureThreshold 高度 導入バージョン: 1.0.0

デフォルト値: 6

Kubernetes が検出する livenessProbe の失敗回数。この数に達すると、コンテナが再起動されます。最小値は 1 です。

metrics.prometheus.livenessProbe.periodSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 5

livenessProbe を実行する頻度を秒単位で指定します。最小値は 1 です。

metrics.prometheus.livenessProbe.timeoutSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 3

livenessProbe がタイムアウトするまでの秒数。最小値は 1 です。

metrics.prometheus.readinessProbe.failureThreshold 高度 導入バージョン: 1.0.0

デフォルト値: 120

Kubernetes が検出する readinessProbe の失敗回数。この数に達すると、Pod が「準備未完了」とマークされます。最小値は 1 です。

metrics.prometheus.readinessProbe.periodSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 5

readinessProbe の実行頻度を秒単位で指定します。最小値は 1 です。

metrics.prometheus.readinessProbe.timeoutSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 3

livenessProbe がタイムアウトするまでの秒数。最小値は 1 です。

metrics.prometheus.sslCertPath 基本 導入バージョン: 1.0.0

デフォルト値: なし

必須

Prometheus 指標収集プロセス用の SSL 証明書のパス。Prometheus は、Apigee の指標の収集と処理に使用できるツールです。

詳しくは、以下をご覧ください。

metrics.prometheus.sslKeyPath 基本 導入バージョン: 1.0.0

デフォルト値: なし

必須

Prometheus 指標収集プロセス用の SSL 鍵のパス。Prometheus は、Apigee の指標の収集と処理に使用できるツールです。

詳しくは、以下をご覧ください。

metrics.proxy.resources.requests.cpu 高度 導入バージョン: 1.4.0

デフォルト値: 500m

Kubernetes コンテナ内のプロキシの通常オペレーションに必要な CPU(ミリコア単位)。

metrics.proxy.resources.requests.memory 高度 導入バージョン: 1.4.0

デフォルト値: 512Mi

Kubernetes コンテナ内のプロキシの通常オペレーションに必要なメモリ(MiB 単位)。

metrics.proxy.resources.limits.cpu 高度 導入バージョン: 1.4.0

デフォルト値: 500m

Kubernetes コンテナ内のプロキシ リソースの CPU 上限(ミリコア単位)。

metrics.proxy.resources.limits.memory 高度 導入バージョン: 1.4.0

デフォルト値: 1Gi

Kubernetes コンテナ内のプロキシ リソースのメモリ上限(GiB 単位)。

metrics.proxyStackdriverExporter.resources.requests.cpu 高度 導入バージョン: 1.7.0

デフォルト値: 128m

Kubernetes コンテナ内の stackdriverExporter の通常オペレーションに必要な CPU(ミリコア単位)。

metrics.proxyStackdriverExporter.resources.requests.memory 高度 導入バージョン: 1.7.0

デフォルト値: 512Mi

Kubernetes コンテナ内の stackdriverExporter の通常オペレーションに必要なメモリ(メビバイト単位)。

metrics.proxyStackdriverExporter.resources.limits.cpu 高度 導入バージョン: 1.7.0

デフォルト値: 500m

Kubernetes コンテナ内の stackdriverExporter リソースの CPU 上限(ミリコア単位)。

metrics.proxyStackdriverExporter.resources.limits.memory 高度 導入バージョン: 1.7.0

デフォルト値: 1Gi

Kubernetes コンテナ内の stackdriverExporter リソースのメモリ上限(GiB 単位)。

metrics.proxyURL 基本 導入バージョン: 1.0.0

デフォルト値: なし

Kubernetes クラスタ内の指標プロセス サイドカー プロキシの URL。

metrics.sdSidecar.containerPort 高度 導入バージョン: 1.0.0

デフォルト値: 9091

Cloud Monitoring 指標サービスに接続するためのポート。

metrics.sdSidecar.image.pullPolicy 高度 導入バージョン: 1.0.0

デフォルト値: IfNotPresent

kubelet がこのサービスの Docker イメージをいつ pull するかを指定します。有効な値は次のとおりです。

  • IfNotPresent: イメージがすでに存在する場合は新しいイメージを pull しません。
  • Always: ポリシーがすでに存在する場合でも、常に pull します。

    詳細については、イメージの更新をご覧ください。

metrics.sdSidecar.image.tag 高度 導入バージョン: 1.0.0

デフォルト値: v0.9.0

このサービスの Docker イメージのバージョン ラベル。

metrics.sdSidecar.image.url 高度 導入バージョン: 1.0.0

デフォルト値: なし

このサービスの Docker イメージの場所。

apigee-pull-push --list を使用して、このコンポーネントの現在のリポジトリ URL を確認できます。

metrics.serviceAccountPath 基本 導入バージョン: 1.0.0

デフォルト値: なし

serviceAccountPathserviceAccountRef は、いずれか 1 つのみが必要です。

モニタリング指標の書き込みのロールを持つ Google サービス アカウントのキーファイルへのパス。

metrics.serviceAccountRef 基本 導入バージョン: 1.2.0

デフォルト値: なし

serviceAccountPathserviceAccountRef は、いずれか 1 つのみが必要です。

metrics.stackdriverExporter.resources.requests.cpu 高度 導入バージョン: 1.4.0

Deprecated: ハイブリッド バージョン 1.8 以降、metrics:stackdriverExportermetrics:appStackdriverExportermetrics:proxyStackdriverExporter に置き換えられました。以下をご覧ください。

metrics.stackdriverExporter.resources.requests.memory 高度 導入バージョン: 1.4.0

Deprecated: ハイブリッド バージョン 1.8 以降、metrics:stackdriverExportermetrics:appStackdriverExportermetrics:proxyStackdriverExporter に置き換えられました。以下をご覧ください。

metrics.stackdriverExporter.resources.limits.cpu 高度 導入バージョン: 1.4.0

Deprecated: ハイブリッド バージョン 1.8 以降、metrics:stackdriverExportermetrics:appStackdriverExportermetrics:proxyStackdriverExporter に置き換えられました。以下をご覧ください。

metrics.stackdriverExporter.resources.limits.memory 高度 導入バージョン: 1.4.0

Deprecated: ハイブリッド バージョン 1.8 以降、metrics:stackdriverExportermetrics:appStackdriverExportermetrics:proxyStackdriverExporter に置き換えられました。以下をご覧ください。

metrics.terminationGracePeriodSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 300

Pod の削除リクエストから実際に Pod が強制終了されるまでの時間(秒単位)。この期間中に停止前フックが実行され、動作中のすべてのプロセスが正常に終了します。

metrics.tolerations.effect 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

effect は、taint と一致する toleration の効果を指定します。effect の値は次のいずれかです。

  • NoExecute
  • NoSchedule
  • PreferNoSchedule

詳細については、taint と toleration: コンセプトをご覧ください。

metrics.tolerations.key 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

key は、toleration を適用できる Pod を識別します。

詳細については、taint と toleration: コンセプトをご覧ください。

metrics.tolerations.operator 高度 導入バージョン: 1.10.1

デフォルト値: "Equal"

Kubernetes の taint と toleration 機能を使用するために必要です。

operator には、effect をトリガーするオペレーションを指定します。operator の値は次のいずれかです。

  • Equal は、value に設定された値と一致します。
  • Exists は、value に設定された値を無視します。

詳細については、taint と toleration: コンセプトをご覧ください。

metrics.tolerations.tolerationSeconds 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

tolerationSeconds は、障害が発生しているノードまたは応答していないノードに Pod がバインドされている時間を秒単位で定義します。

詳細については、taint と toleration: コンセプトをご覧ください。

metrics.tolerations.value 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

value は、operatorEqual に設定されている場合に effect をトリガーする値です。

詳細については、taint と toleration: コンセプトをご覧ください。

mintTaskScheduler

mintTaskScheduler は、繰り返し発生する料金の計算など、収益化タスクをスケジューリングする cron ジョブです。

次の表に、mintTaskScheduler オブジェクトのプロパティを示します。

プロパティ 説明
mintTaskScheduler.image.pullPolicy 高度 導入バージョン: 1.7.0

デフォルト値: IfNotPresent

kubelet が Pod の Docker イメージを pull するタイミングを決定します。有効な値は次のとおりです。

  • IfNotPresent: イメージがすでに存在する場合、新しいイメージは pull しません。
  • Always: イメージがすでに存在するかどうかにかかわらず、常にイメージを pull します。

詳細については、イメージの更新をご覧ください。

mintTaskScheduler.image.tag 高度 導入バージョン: 1.7.0

デフォルト値: 1.11.2

このサービスの Docker イメージのバージョン ラベル。

mintTaskScheduler.image.url 高度 導入バージョン: 1.7.0

デフォルト値: なし

このサービスの Docker イメージの場所。

apigee-pull-push --list を使用して、このコンポーネントの現在のリポジトリ URL を確認できます。

mintTaskScheduler.resources.limits.cpu 高度 導入バージョン: 1.1.0

デフォルト値: 2000m

Kubernetes コンテナ内のリソースの CPU 上限(ミリコア単位)。

mintTaskScheduler.resources.limits.memory 高度 導入バージョン: 1.1.0

デフォルト値: 4Gi

Kubernetes コンテナ内のリソースのメモリ上限(MiB 単位)。

mintTaskScheduler.resources.requests.cpu 高度 導入バージョン: 1.7.0

デフォルト値: 500m

Kubernetes コンテナ内のリソースの通常オペレーションに必要な CPU(ミリコア単位)。

mintTaskScheduler.resources.requests.memory 高度 導入バージョン: 1.7.0

デフォルト値: 512Mi

Kubernetes コンテナ内のリソースの通常のオペレーションに必要なメモリ(メビバイト単位)。

mintTaskScheduler.tolerations.effect 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

effect は、taint と一致する toleration の効果を指定します。effect の値は次のいずれかです。

  • NoExecute
  • NoSchedule
  • PreferNoSchedule

詳細については、taint と toleration: コンセプトをご覧ください。

mintTaskScheduler.tolerations.key 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

key は、toleration を適用できる Pod を識別します。

詳細については、taint と toleration: コンセプトをご覧ください。

mintTaskScheduler.tolerations.operator 高度 導入バージョン: 1.10.1

デフォルト値: "Equal"

Kubernetes の taint と toleration 機能を使用するために必要です。

operator には、effect をトリガーするオペレーションを指定します。operator の値は次のいずれかです。

  • Equal は、value に設定された値と一致します。
  • Exists は、value に設定された値を無視します。

詳細については、taint と toleration: コンセプトをご覧ください。

mintTaskScheduler.tolerations.tolerationSeconds 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

tolerationSeconds は、障害が発生しているノードまたは応答していないノードに Pod がバインドされている時間を秒単位で定義します。

詳細については、taint と toleration: コンセプトをご覧ください。

mintTaskScheduler.tolerations.value 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

value は、operatorEqual に設定されている場合に effect をトリガーする値です。

詳細については、taint と toleration: コンセプトをご覧ください。

nodeSelector

nodeSelector オブジェクトは Apigee インスタンスのノードを定義します。apigeectl が実行されると、内部で apigeeRuntimeapigeeData のラベルの Key-Value が個々の Istio コンポーネントと MART コンポーネントにマッピングされます。この設定は、mart:nodeSelector プロパティに含まれる個々のオブジェクトでオーバーライドできます。

次の表に、nodeSelector オブジェクトのプロパティを示します。

プロパティ 説明
nodeSelector.apigeeData.key 高度 導入バージョン: 1.0.0

デフォルト値: cloud.google.com/gke-nodepool

ApigeeData は Cassandra データベース用のノードです。これは、Apigee サービスデータを操作するための Kubernetes ノードの選択に使用するノードセレクタのラベルキーです。

専用ノードプールの構成をご覧ください。

nodeSelector.apigeeData.value 高度 導入バージョン: 1.0.0

デフォルト値: apigee-data

apigee-data は Cassandra データベース用のノードです。これは、Apigee サービスデータを操作するための Kubernetes ノードの選択に使用するノードセレクタのラベル値です。

専用ノードプールの構成をご覧ください。

nodeSelector.apigeeRuntime.key 高度 導入バージョン: 1.0.0

デフォルト値: cloud.google.com/gke-nodepool

Apigee Runtime はプロジェクトのランタイム環境用のノードです。これは、Apigee ランタイム サービス用の Kubernetes ノードの選択に使用するノードセレクタのラベルキーです。

専用ノードプールの構成をご覧ください。

nodeSelector.apigeeRuntime.value 高度 導入バージョン: 1.0.0

デフォルト値: apigee-runtime

apigee-runtime はプロジェクトのランタイム環境用のノードです。これは、Apigee ランタイム サービス用の Kubernetes ノードの選択に使用するノードセレクタのラベル値です。

専用ノードプールの構成をご覧ください。

nodeSelector.requiredForScheduling 高度 導入バージョン: 1.0.0

デフォルト値: false

requiredForScheduling プロパティはデフォルトで false に設定されています。この値を true にオーバーライドすると、構成されたラベルキーまたは値を持つノードが見つからない場合に、基盤となる Pod は VM ワーカーノードでスケジュールされません。

本番環境では、nodeSelector.requiredForScheduling を true に設定する必要があります。

専用ノードプールの構成をご覧ください。

redis

次の表に、redis オブジェクトのプロパティを示します。

プロパティ 説明
redis.auth.password 基本 導入バージョン: 1.6.0

デフォルト値: iloveapis123

必須

Redis 管理者のパスワード。この管理者ユーザーは、Cassandra クラスタで行われる管理アクティビティに使用されます。

redis.auth.secret 基本 導入バージョン: 1.9.1

デフォルト値: なし

Redis 管理者のパスワードを含む Kubernetes Secret に格納されているファイルの名前。シークレット ファイルには次のキーが含まれている必要があります。

data:
    redis.auth.password: encoded_value

関連項目:

redis.envoy.image.pullPolicy 高度 導入バージョン: 1.6.0

デフォルト値: IfNotPresent

kubelet が Pod の Docker イメージを pull するタイミングを決定します。有効な値は次のとおりです。

  • IfNotPresent: イメージがすでに存在する場合、新しいイメージは pull しません。
  • Always: イメージがすでに存在するかどうかにかかわらず、常にイメージを pull します。

詳細については、イメージの更新をご覧ください。

redis.envoy.image.tag 高度 導入バージョン: 1.6.0

デフォルト値: v1.27.0

このサービスの Docker イメージのバージョン ラベル。

redis.envoy.image.url 高度 導入バージョン: 1.6.0

デフォルト値: なし

このサービスの Docker イメージの場所。

apigee-pull-push --list を使用して、このコンポーネントの現在のリポジトリ URL を確認できます。

redis.image.pullPolicy 高度 導入バージョン: 1.6.0

デフォルト値: IfNotPresent

kubelet が Pod の Docker イメージを pull するタイミングを決定します。有効な値は次のとおりです。

  • IfNotPresent: イメージがすでに存在する場合、新しいイメージは pull しません。
  • Always: イメージがすでに存在するかどうかにかかわらず、常にイメージを pull します。

詳細については、イメージの更新をご覧ください。

redis.image.tag 高度 導入バージョン: 1.6.0

デフォルト値: 1.11.2

このサービスの Docker イメージのバージョン ラベル。

redis.image.url 高度 導入バージョン: 1.6.0

デフォルト値: なし

このサービスの Docker イメージの場所。

apigee-pull-push --list を使用して、このコンポーネントの現在のリポジトリ URL を確認できます。

redis.replicaCount 基本 導入バージョン: 1.6.0

デフォルト値: 2

Redis は複製されたストレージです。このプロパティは、StatefulSet として使用される Redis ノードの数を指定します。

redis.resources.requests.cpu 高度 導入バージョン: 1.6.0

デフォルト値: 500m

Kubernetes コンテナ内のリソースの正常な動作に必要な CPU(ミリコア単位)。

redis.tolerations.effect 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

effect は、taint と一致する toleration の効果を指定します。effect の値は次のいずれかです。

  • NoExecute
  • NoSchedule
  • PreferNoSchedule

詳細については、taint と toleration: コンセプトをご覧ください。

redis.tolerations.key 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

key は、toleration を適用できる Pod を識別します。

詳細については、taint と toleration: コンセプトをご覧ください。

redis.tolerations.operator 高度 導入バージョン: 1.10.1

デフォルト値: "Equal"

Kubernetes の taint と toleration 機能を使用するために必要です。

operator には、effect をトリガーするオペレーションを指定します。operator の値は次のいずれかです。

  • Equal は、value に設定された値と一致します。
  • Exists は、value に設定された値を無視します。

詳細については、taint と toleration: コンセプトをご覧ください。

redis.tolerations.tolerationSeconds 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

tolerationSeconds は、障害が発生しているノードまたは応答していないノードに Pod がバインドされている時間を秒単位で定義します。

詳細については、taint と toleration: コンセプトをご覧ください。

redis.tolerations.value 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

value は、operatorEqual に設定されている場合に effect をトリガーする値です。

詳細については、taint と toleration: コンセプトをご覧ください。

runtime

次の表に、runtime オブジェクトのプロパティを示します。

プロパティ 説明
runtime.annotations 高度 導入バージョン: 1.5.0

デフォルト値: なし

(省略可)Pod にアノテーションを付けるために使用する Key-Value マップ。詳しくは、カスタム アノテーションをご覧ください。

runtime.image.pullPolicy 高度 導入バージョン: 1.0.0

デフォルト値: IfNotPresent

kubelet が Pod の Docker イメージを pull するタイミングを決定します。有効な値は次のとおりです。

  • IfNotPresent: イメージがすでに存在する場合、新しいイメージは pull しません。
  • Always: イメージがすでに存在するかどうかにかかわらず、常にイメージを pull します。

詳細については、イメージの更新をご覧ください。

runtime.image.tag 高度 導入バージョン: 1.0.0

デフォルト値: 1.11.2

このサービスの Docker イメージのバージョン ラベル。

runtime.image.url 高度 導入バージョン: 1.0.0

デフォルト値: なし

このサービスの Docker イメージの場所。

apigee-pull-push --list を使用して、このコンポーネントの現在のリポジトリ URL を確認できます。

runtime.livenessProbe.failureThreshold 高度 導入バージョン: 1.0.0

デフォルト値: 2

Kubernetes が検出する livenessProbe の失敗回数。この数に達すると、コンテナが再起動されます。最小値は 1 です。

runtime.livenessProbe.initialDelaySeconds 高度 導入バージョン: 1.0.0

デフォルト値: 60

コンテナが起動してから livenessProbe が開始されるまでの秒数。

runtime.livenessProbe.periodSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 5

livenessProbe を実行する頻度を秒単位で指定します。最小値は 1 です。

runtime.livenessProbe.timeoutSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 1

livenessProbe がタイムアウトするまでの秒数。最小値は 1 です。

runtime.nodeSelector.key 基本 導入バージョン: 1.0.0

デフォルト値: なし

(省略可)runtime サービス用の Kubernetes ノードの選択に使用するノードセレクタのラベルキー。

nodeSelector のプロパティをご覧ください。

runtime.nodeSelector.value 基本 導入バージョン: 1.0.0

デフォルト値: なし

runtime サービス用の Kubernetes ノードの選択に使用するノードセレクタのラベル値。

専用ノードプールの構成をご覧ください。

runtime.readinessProbe.failureThreshold 高度 導入バージョン: 1.0.0

デフォルト値: 2

Kubernetes が検出する readinessProbe の失敗回数。この数に達すると、Pod が「準備未完了」とマークされます。最小値は 1 です。

runtime.readinessProbe.initialDelaySeconds 高度 導入バージョン: 1.0.0

デフォルト値: 60

コンテナが起動してから readinessProbe が開始されるまでの秒数。

runtime.readinessProbe.periodSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 5

readinessProbe の実行頻度を秒単位で指定します。最小値は 1 です。

runtime.readinessProbe.successThreshold 高度 導入バージョン: 1.0.0

デフォルト値: 1

失敗した readinessProbe が成功とみなされるために必要な最小の連続成功回数。最小値は 1 です。

runtime.readinessProbe.timeoutSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 1

livenessProbe がタイムアウトするまでの秒数。最小値は 1 です。

runtime.replicaCountMax 基本 導入バージョン: 1.0.0

デフォルト値: 4

自動スケーリングに使用できるレプリカの最大数。

runtime.replicaCountMin 基本 導入バージョン: 1.0.0

デフォルト値: 1

自動スケーリングに使用できるレプリカの最小数。

runtime.resources.limits.cpu 高度 導入バージョン: 1.11.0

デフォルト値: 4000m

Kubernetes コンテナ内のリソースの CPU 上限(ミリコア単位)。

runtime.resources.limits.memory 高度 導入バージョン: 1.11.0

デフォルト値: 6Gi

Kubernetes コンテナ内のリソースのメモリ上限(MiB 単位)。

runtime.resources.requests.cpu 高度 導入バージョン: 1.0.0

デフォルト値: 500m

Kubernetes コンテナ内のリソースの通常オペレーションに必要な CPU(ミリコア単位)。

runtime.resources.requests.memory 高度 導入バージョン: 1.0.0

デフォルト値: 512Mi(下記の注を参照)

Kubernetes コンテナ内のリソースの通常オペレーションに必要なメモリ。単位はメビバイト(Mi)またはギビバイト(Gi)です。

runtime.service.type 高度 導入バージョン: 1.0.0

デフォルト値: ClusterIP

サービスのタイプ。ClusterIP 以外のサービス(例: LoadBalancer)に設定することもできます。

runtime.targetCPUUtilizationPercentage 高度 導入バージョン: 1.0.0

デフォルト値: 75

Pod 上のランタイム プロセスのターゲット CPU 使用率。CPU 使用率がこのフィールドの値に達すると、ランタイムが(最大で replicaCountMax まで)自動的にスケールします。

runtime.terminationGracePeriodSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 180

Pod の削除リクエストから実際に Pod が強制終了されるまでの時間(秒単位)。この期間中に停止前フックが実行され、動作中のすべてのプロセスが正常に終了します。

runtime.tolerations.effect 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

effect は、taint と一致する toleration の効果を指定します。effect の値は次のいずれかです。

  • NoExecute
  • NoSchedule
  • PreferNoSchedule

詳細については、taint と toleration: コンセプトをご覧ください。

runtime.tolerations.key 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

key は、toleration を適用できる Pod を識別します。

詳細については、taint と toleration: コンセプトをご覧ください。

runtime.tolerations.operator 高度 導入バージョン: 1.10.1

デフォルト値: "Equal"

Kubernetes の taint と toleration 機能を使用するために必要です。

operator には、effect をトリガーするオペレーションを指定します。operator の値は次のいずれかです。

  • Equal は、value に設定された値と一致します。
  • Exists は、value に設定された値を無視します。

詳細については、taint と toleration: コンセプトをご覧ください。

runtime.tolerations.tolerationSeconds 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

tolerationSeconds は、障害が発生しているノードまたは応答していないノードに Pod がバインドされている時間を秒単位で定義します。

詳細については、taint と toleration: コンセプトをご覧ください。

runtime.tolerations.value 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

value は、operatorEqual に設定されている場合に effect をトリガーする値です。

詳細については、taint と toleration: コンセプトをご覧ください。

synchronizer

デプロイされた最新の API プロキシ バンドルに同期して Message Processor を最新の状態に維持します。これを行うため、Synchronizer は管理プレーンに対してポーリングを行い、検出した新しい契約をランタイム プレーンに送信します。デフォルトでは、Synchronizer は環境構成データを Cassandra に保存します。

詳細については、Synchronizer を構成するをご覧ください。

次の表に、synchronizer オブジェクトのプロパティを示します。

プロパティ 説明
synchronizer.annotations 高度 導入バージョン: 1.5.0

デフォルト値: なし

(省略可)Pod にアノテーションを付けるために使用する Key-Value マップ。詳しくは、カスタム アノテーションをご覧ください。

synchronizer.image.pullPolicy 高度 導入バージョン: 1.0.0

デフォルト値: IfNotPresent

kubelet が Pod の Docker イメージを pull するタイミングを決定します。有効な値は次のとおりです。

  • IfNotPresent: イメージがすでに存在する場合、新しいイメージは pull しません。
  • Always: イメージがすでに存在するかどうかにかかわらず、常にイメージを pull します。

詳細については、イメージの更新をご覧ください。

synchronizer.image.tag 高度 導入バージョン: 1.0.0

デフォルト値: 1.11.2

このサービスの Docker イメージのバージョン ラベル。

synchronizer.image.url 高度 導入バージョン: 1.0.0

デフォルト値: なし

このサービスの Docker イメージの場所。

apigee-pull-push --list を使用して、このコンポーネントの現在のリポジトリ URL を確認できます。

synchronizer.livenessProbe.failureThreshold 高度 導入バージョン: 1.0.0

デフォルト値: 2

Kubernetes が検出する livenessProbe の失敗回数。この数に達すると、コンテナが再起動されます。最小値は 1 です。

synchronizer.livenessProbe.initialDelaySeconds 高度 導入バージョン: 1.0.0

デフォルト値: 0

コンテナが起動してから livenessProbe が開始されるまでの秒数。

synchronizer.livenessProbe.periodSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 5

livenessProbe を実行する頻度を秒単位で指定します。最小値は 1 です。

synchronizer.livenessProbe.timeoutSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 1

livenessProbe がタイムアウトするまでの秒数。最小値は 1 です。

synchronizer.nodeSelector.key 基本 導入バージョン: 1.0.0

デフォルト値: なし

必須

synchronizer ランタイム サービス用の Kubernetes ノードのターゲティングに使用されるノードセレクタのラベルキー(任意指定)。

nodeSelector をご覧ください。

synchronizer.nodeSelector.value 基本 導入バージョン: 1.0.0

デフォルト値: なし

(省略可)synchronizer ランタイム サービス用の Kubernetes ノードの選択に使用するノードセレクタのラベル値。

nodeSelector をご覧ください。

synchronizer.pollInterval 高度 導入バージョン: 1.0.0

デフォルト値: 60

Synchronizer がポーリングを行う間隔。Synchronizer は Apigee コントロール プレーン サービスに対してポーリングを行い、検出した新しいランタイム契約を pull します。

synchronizer.readinessProbe.failureThreshold 高度 導入バージョン: 1.0.0

デフォルト値: 2

Kubernetes が検出する readinessProbe の失敗回数。この数に達すると、Pod が「準備未完了」とマークされます。最小値は 1 です。

synchronizer.readinessProbe.initialDelaySeconds 高度 導入バージョン: 1.0.0

デフォルト値: 0

コンテナが起動してから readinessProbe が開始されるまでの秒数。

synchronizer.readinessProbe.periodSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 5

readinessProbe の実行頻度を秒単位で指定します。最小値は 1 です。

synchronizer.readinessProbe.successThreshold 高度 導入バージョン: 1.0.0

デフォルト値: 1

失敗した readinessProbe が成功とみなされるために必要な最小の連続成功回数。最小値は 1 です。

synchronizer.readinessProbe.timeoutSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 1

livenessProbe がタイムアウトするまでの秒数。最小値は 1 です。

synchronizer.replicaCount 基本 導入バージョン: 1.0.0

Deprecated: ハイブリッド バージョン 1.2 以降では、synchronizer.replicaCountMaxsynchronizer.replicaCountMin を使って Synchronizer のレプリカ数を管理します。

synchronizer.replicaCountMax 基本 導入バージョン: 1.2.0

デフォルト値: 4

自動スケーリング用のレプリカの最大数。

synchronizer.replicaCountMin 基本 導入バージョン: 1.2.0

デフォルト値: 1

自動スケーリング用のレプリカの最小数。

synchronizer.resources.limits.cpu 高度 導入バージョン: 1.11.0

デフォルト値: 2000m

Kubernetes コンテナ内のリソースの CPU 上限(ミリコア単位)。

synchronizer.resources.limits.memory 高度 導入バージョン: 1.11.0

デフォルト値: 5Gi

Kubernetes コンテナ内のリソースのメモリ上限(MiB 単位)。

synchronizer.resources.requests.cpu 高度 導入バージョン: 1.0.0

デフォルト値: 100m

Kubernetes コンテナ内のリソースの通常オペレーションに必要な CPU(ミリコア単位)。

synchronizer.resources.requests.memory 高度 導入バージョン: 1.0.0

デフォルト値: 1Gi

Kubernetes コンテナ内のリソースの通常のオペレーションに必要なメモリ(ギガバイト単位)。

synchronizer.serviceAccountPath 基本 導入バージョン: 1.0.0

デフォルト値: なし

serviceAccountPathserviceAccountRef は、いずれか 1 つのみが必要です。

Apigee Synchronizer 管理者のロールを持つ Google サービス アカウントのキーファイルへのパス。

synchronizer.serviceAccountRef 基本 導入バージョン: 1.2.0

デフォルト値: なし

serviceAccountPathserviceAccountRef は、いずれか 1 つのみが必要です。

synchronizer.targetCPUUtilizationPercentage 高度 導入バージョン: 1.0.0

デフォルト値: 75

Pod 上の Synchronizer プロセスのターゲット CPU 使用率。CPU 使用率がこのフィールドの値に達すると、Synchronizer が(最大で replicaCountMax まで)自動的にスケールします。

synchronizer.terminationGracePeriodSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 30

Pod の削除リクエストから実際に Pod が強制終了されるまでの時間(秒単位)。この期間中に停止前フックが実行され、動作中のすべてのプロセスが正常に終了します。

synchronizer.tolerations.effect 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

effect は、taint と一致する toleration の効果を指定します。effect の値は次のいずれかです。

  • NoExecute
  • NoSchedule
  • PreferNoSchedule

詳細については、taint と toleration: コンセプトをご覧ください。

synchronizer.tolerations.key 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

key は、toleration を適用できる Pod を識別します。

詳細については、taint と toleration: コンセプトをご覧ください。

synchronizer.tolerations.operator 高度 導入バージョン: 1.10.1

デフォルト値: "Equal"

Kubernetes の taint と toleration 機能を使用するために必要です。

operator には、effect をトリガーするオペレーションを指定します。operator の値は次のいずれかです。

  • Equal は、value に設定された値と一致します。
  • Exists は、value に設定された値を無視します。

詳細については、taint と toleration: コンセプトをご覧ください。

synchronizer.tolerations.tolerationSeconds 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

tolerationSeconds は、障害が発生しているノードまたは応答していないノードに Pod がバインドされている時間を秒単位で定義します。

詳細については、taint と toleration: コンセプトをご覧ください。

synchronizer.tolerations.value 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

value は、operatorEqual に設定されている場合に effect をトリガーする値です。

詳細については、taint と toleration: コンセプトをご覧ください。

udca

(Universal Data Collection Agent)ランタイム プレーンのデータ収集 Pod で実行されるサービスを定義します。このサービスは、アナリティクスとデプロイのステータスデータを抽出し、統合アナリティクス プラットフォーム(UAP)に送信します。

詳細については、分析とデプロイのステータス データの収集をご覧ください。

次の表に、udca オブジェクトのプロパティを示します。

プロパティ 説明
udca.annotations 高度 導入バージョン: 1.5.0

デフォルト値: なし

(省略可)Pod にアノテーションを付けるために使用する Key-Value マップ。詳しくは、カスタム アノテーションをご覧ください。

udca.fluentd.image.pullPolicy 高度 導入バージョン: 1.0.0

デフォルト値: IfNotPresent

kubelet が Pod の Docker イメージを pull するタイミングを決定します。有効な値は次のとおりです。

  • IfNotPresent: イメージがすでに存在する場合、新しいイメージは pull しません。
  • Always: イメージがすでに存在するかどうかにかかわらず、常にイメージを pull します。

詳細については、イメージの更新をご覧ください。

udca.fluentd.image.tag 高度 導入バージョン: 1.0.0

デフォルト値: 1.9.12-2

このサービスの Docker イメージのバージョン ラベル。

udca.fluentd.image.url 高度 導入バージョン: 1.0.0

デフォルト値: なし

このサービスの Docker イメージの場所。

apigee-pull-push --list を使用して、このコンポーネントの現在のリポジトリ URL を確認できます。

udca.fluentd.resources.limits.cpu 高度 導入バージョン: 1.11.0

デフォルト値: 1000m

Kubernetes コンテナ内のリソースのメモリ上限(MiB 単位)。

udca.fluentd.resources.limits.memory 高度 導入バージョン: 1.11.0

デフォルト値: 500Mi

Kubernetes コンテナ内のリソースのメモリ上限(MiB 単位)。

udca.fluentd.resources.requests.cpu 高度 導入バージョン: 1.0.0

デフォルト値: 500m

Kubernetes コンテナ内のリソースの通常オペレーションに必要な CPU(ミリコア単位)。

udca.fluentd.resources.requests.memory 高度 導入バージョン: 1.0.0

デフォルト値: 250Mi

Kubernetes コンテナ内のリソースの通常のオペレーションに必要なメモリ(メビバイト単位)。

udca.gsa 高度 導入バージョン: 1.10.0

デフォルト値: なし

Helm のみ: Helm チャートを使用して GKE クラスタで Workload Identity を有効にするときに、対応する Kubernetes サービス アカウントに関連付ける apigee-udca Google IAM サービス アカウント(GSA)のメールアドレス。このプロパティは、gcp.workloadIdentity.enabledtrue に設定した場合に設定します。

通常、GSA のメールアドレスの形式は次のとおりです。

GSA_NAME@PROJECT_ID.iam.gserviceaccount.com

例:

apigee-udca@my-hybrid-project.iam.gserviceaccount.com

Enabling Workload Identity with Helm charts をご覧ください。

udca.image.pullPolicy 高度 導入バージョン: 1.0.0

デフォルト値: IfNotPresent

kubelet が Pod の Docker イメージを pull するタイミングを決定します。有効な値は次のとおりです。

  • IfNotPresent: イメージがすでに存在する場合、新しいイメージは pull しません。
  • Always: イメージがすでに存在するかどうかにかかわらず、常にイメージを pull します。

詳細については、イメージの更新をご覧ください。

udca.image.tag 高度 導入バージョン: 1.0.0

デフォルト値: 1.11.2

このサービスの Docker イメージのバージョン ラベル。

udca.image.url 高度 導入バージョン: 1.0.0

デフォルト値: なし

このサービスの Docker イメージの場所。

apigee-pull-push --list を使用して、このコンポーネントの現在のリポジトリ URL を確認できます。

udca.jvmXms 高度 導入バージョン: 1.0.0

Deprecated: ハイブリッド バージョン 1.8 以降、udca.jvmXms は使用されなくなりました。

udca.jvmXmx 高度 導入バージョン: 1.0.0

Deprecated: ハイブリッド バージョン 1.8 以降、udca.jvmXmx は使用されなくなりました。

udca.livenessProbe.failureThreshold 高度 導入バージョン: 1.0.0

デフォルト値: 2

Kubernetes が検出する livenessProbe の失敗回数。この数に達すると、コンテナが再起動されます。最小値は 1 です。

udca.livenessProbe.initialDelaySeconds 高度 導入バージョン: 1.0.0

デフォルト値: 0

コンテナが起動してから livenessProbe が開始されるまでの秒数。

udca.livenessProbe.periodSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 5

livenessProbe を実行する頻度を秒単位で指定します。最小値は 1 です。

udca.livenessProbe.timeoutSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 1

livenessProbe がタイムアウトするまでの秒数。最小値は 1 です。

udca.nodeSelector.key 基本 導入バージョン: 1.0.0

デフォルト値: なし

必須

udca ランタイム サービス専用の Kubernetes ノードの選択に使用するノードセレクタのラベルキー。

専用ノードプールの構成をご覧ください。

udca.nodeSelector.value 基本 導入バージョン: 1.0.0

デフォルト値: なし

必須

udca ランタイム サービス専用の Kubernetes ノードの選択に使用するノードセレクタのラベル値。

専用ノードプールの構成をご覧ください。

udca.pollingIntervalInSec 高度 導入バージョン: 1.0.0

デフォルト値: 1

UDCA がポーリングを行う間隔(秒単位)。UDCA は、データ収集 Pod のファイル システム上のデータ ディレクトリをポーリングして、アップロードする新しいファイルを検出します。

udca.replicaCountMax 基本 導入バージョン: 1.0.0

デフォルト値: 4

ハイブリッドが UDCA デプロイ用に自動的に追加できる Pod の最大数。UDCA は ReplicaSet として実装されているため、これらの Pod はレプリカです。

udca.replicaCountMax には、環境あたりの最大レプリカ数に Apigee 組織の環境数を乗じた値を設定することをおすすめします。たとえば 3 つの環境があり、環境ごとに最大 4 つのレプリカを許可する場合は、udca.replicaCountMax: 12 を設定します。

udca.replicaCountMin 基本 導入バージョン: 1.0.0

デフォルト値: 1

UDCA デプロイ用の Pod の最小数。UDCA は ReplicaSet として実装されているため、これらの Pod はレプリカです。

CPU 使用率が udca.targetCPUUtilizationPercentage を超えると、Pod の数は(最大で udca.replicaCountMax まで)徐々に増加します。

udca.resources.limits.cpu 高度 導入バージョン: 1.11.0

デフォルト値: 1000m

Kubernetes コンテナ内のリソースのメモリ上限(MiB 単位)。

udca.resources.limits.memory 高度 導入バージョン: 1.11.0

デフォルト値: 2Gi

Kubernetes コンテナ内のリソースのメモリ上限(MiB 単位)。

udca.resources.requests.cpu 高度 導入バージョン: 1.0.0

デフォルト値: 250m

Kubernetes コンテナ内のリソースの通常オペレーションに必要な CPU(ミリコア単位)。

udca.resources.requests.memory 高度 導入バージョン: 1.0.0

デフォルト値: 250Mi

Kubernetes コンテナ内のリソースの通常のオペレーションに必要なメモリ(メビバイト単位)。

udca.revision 高度 導入バージョン: 1.0.0

デフォルト値: v1

カナリア デプロイを有効にするためにラベルに挿入される静的な値。

udca.serviceAccountPath 基本 導入バージョン: 1.0.0

デフォルト値: なし

serviceAccountPathserviceAccountRef は、いずれか 1 つのみが必要です。

Apigee Analytics エージェントのロールを持つ Google サービス アカウントのキーファイルへのパス。

udca.serviceAccountRef 基本 導入バージョン: 1.2.0

デフォルト値: なし

serviceAccountPathserviceAccountRef は、いずれか 1 つのみが必要です。

udca.targetCPUUtilizationPercentage 高度 導入バージョン: 1.0.0

デフォルト値: 75

ReplicaSet 内の Pod 数のスケーリングに使用する CPU 使用率のしきい値。使用可能な CPU リソースの総量に対する割合で指定します。現在の CPU 使用率は、データ収集 Pod(fluentd と UDCA の両方)内のすべてのコンテナの CPU 使用率を集計して計算されます。

CPU 使用率がこの値を超えると、ReplicaSet 内の Pod の数が(最大で udca.replicaCountMax まで)徐々に増加します。

udca.terminationGracePeriodSeconds 高度 導入バージョン: 1.0.0

デフォルト値: 600

Pod の削除リクエストから実際に Pod が強制終了されるまでの時間(秒単位)。この期間中に停止前フックが実行され、動作中のすべてのプロセスが正常に終了します。

udca.tolerations.effect 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

effect は、taint と一致する toleration の効果を指定します。effect の値は次のいずれかです。

  • NoExecute
  • NoSchedule
  • PreferNoSchedule

詳細については、taint と toleration: コンセプトをご覧ください。

udca.tolerations.key 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

key は、toleration を適用できる Pod を識別します。

詳細については、taint と toleration: コンセプトをご覧ください。

udca.tolerations.operator 高度 導入バージョン: 1.10.1

デフォルト値: "Equal"

Kubernetes の taint と toleration 機能を使用するために必要です。

operator には、effect をトリガーするオペレーションを指定します。operator の値は次のいずれかです。

  • Equal は、value に設定された値と一致します。
  • Exists は、value に設定された値を無視します。

詳細については、taint と toleration: コンセプトをご覧ください。

udca.tolerations.tolerationSeconds 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

tolerationSeconds は、障害が発生しているノードまたは応答していないノードに Pod がバインドされている時間を秒単位で定義します。

詳細については、taint と toleration: コンセプトをご覧ください。

udca.tolerations.value 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

value は、operatorEqual に設定されている場合に effect をトリガーする値です。

詳細については、taint と toleration: コンセプトをご覧ください。

virtualhosts

virtualhosts プロパティは必須の構成プロパティです。仮想ホストにより、Apigee ハイブリッドは指定された環境グループに対する API リクエストを処理できます。

詳細については、仮想ホストを構成するをご覧ください。

次の表に、virtualhosts オブジェクトのプロパティを示します。

プロパティ 説明
virtualhosts[].additionalGateways 基本 導入バージョン: 1.2.0

デフォルト値: なし

トラフィックのルーティング先となる Istio ゲートウェイのリスト。

virtualhosts[].cipherSuites[] 高度 導入バージョン: 1.9.2

デフォルト値: なし

このプロパティは、Ingress ゲートウェイで使用される TLS 暗号を構成します。デフォルトで有効になっている OpenSSL 形式の暗号の一覧を以下に示します。サポートされている暗号の詳細については、Envoy の Boring FIPS ビルドに関するドキュメントをご覧ください。空の値の場合は、Envoy の Boring FIPS ビルドでサポートされている暗号スイートがデフォルトで使用されます。

TLS v.1.3 でデフォルトで有効(TLS 1.3 暗号スイートをオーバーライドすることはできません):

  • TLS_AES_128_GCM_SHA256
  • TLS_AES_256_GCM_SHA384
  • TLS_CHACHA20_POLY1305_SHA256

TLS v.1.2 ではデフォルトで有効になっています。

  • ECDHE-ECDSA-AES128-GCM-SHA256
  • ECDHE-RSA-AES128-GCM-SHA256
  • ECDHE-ECDSA-AES256-GCM-SHA384
  • ECDHE-RSA-AES256-GCM-SHA384

Apigee Ingress ゲートウェイのデプロイで古いバージョンの TLS を有効にする場合は、virtualhosts.cipherSuites プロパティとともに virtualhosts.minTLSProtocolVersion を使用します。

たとえば、TLS v.1.1 を有効にするには:

virtualhosts:
- name: ENV_GROUP_NAME
  minTLSProtocolVersion: "1.1"
  cipherSuites:
  - "ECDHE-ECDSA-AES128-GCM-SHA256"
  - "ECDHE-RSA-AES128-GCM-SHA256"
  - "ECDHE-ECDSA-AES256-GCM-SHA384"
  - "ECDHE-RSA-AES256-GCM-SHA384"
  - "ECDHE-ECDSA-CHACHA20-POLY1305"
  - "ECDHE-RSA-CHACHA20-POLY1305"
  - "ECDHE-ECDSA-AES128-SHA"
  - "ECDHE-RSA-AES128-SHA"
  - "ECDHE-ECDSA-AES256-SHA"
  - "ECDHE-RSA-AES256-SHA"
...
virtualhosts[].name 基本 導入バージョン: 1.2.0

デフォルト値: なし

必須

仮想ホストの名前。

virtualhosts[].maxTLSProtocolVersion 基本 導入バージョン: 1.3.0

デフォルト値: なし

Envoy で選択できる TLS プロトコルの最大バージョン。Envoy では、virtualhosts[].minTLSProtocolVersionvirtualhosts[].maxTLSProtocolVersion の間の最適な TLS プロトコル バージョンが自動的に使用されます。Apigee ハイブリッドは TLSv1.0~TLSv1.3 をサポートしています。

値は数値の形式にする必要があります。次に例を示します。

virtualhosts:
  - name: default
    maxTLSProtocolVersion: "1.3"

この数値は、#.# という形式で TLS バージョン番号を表します。上記の例では、"1.3" は Istio TLS バージョン TLSV1_3 を表しています。

Istio ドキュメントの ServerTLSSettings.TLSProtocol もご覧ください。

virtualhosts[].minTLSProtocolVersion 基本 導入バージョン: 1.3.0

デフォルト値: なし

Envoy で選択できる TLS プロトコルの最小バージョン。Envoy では、virtualhosts[].minTLSProtocolVersionvirtualhosts[].maxTLSProtocolVersion の間の最適な TLS プロトコル バージョンが自動的に使用されます。Apigee ハイブリッドは TLSv1.0~TLSv1.3 をサポートしています。

値は数値の形式にする必要があります。次に例を示します。

virtualhosts:
  - name: default
    minTLSProtocolVersion: "1.2"

この数値は、#.# という形式で TLS バージョン番号を表します。上記の例では、1.2 は Istio TLS バージョン TLSV1_2 を表しています。

Istio ドキュメントの ServerTLSSettings.TLSProtocol もご覧ください。

virtualhosts[].selector 基本 導入バージョン: 1.2.0

デフォルト値: app: apigee-ingressgateway

必須

各種の Ingress セレクタを指す、Key-Value のセレクタと値のペア。

  • apigee-ingressgateway: Apigee Ingress ゲートウェイを使用する Apigee ハイブリッド インストールの場合。
  • istio-ingressgateway: Anthos Service Mesh を使用する Apigee ハイブリッド インストール(Apigee ハイブリッド バージョン 1.8 以前)の場合。

セレクタラベルが指定されていない場合、構成は Apigee Ingress ゲートウェイに渡されます。

virtualhosts[].sslCertPath 基本 導入バージョン: 1.2.0

デフォルト値: なし

sslCertPathsslKeyPath を設定するか、sslSecret を設定する必要があります。

システム上の TLS 証明書ファイルへのパス。

virtualhosts[].sslKeyPath 基本 導入バージョン: 1.2.0

デフォルト値: なし

sslCertPathsslKeyPath を設定するか、sslSecret を設定する必要があります。

システム上の TLS 秘密鍵ファイルへのパス。

virtualhosts[].sslSecret 基本 導入バージョン: 1.2.0

デフォルト値: なし

sslCertPathsslKeyPath を設定するか、sslSecret を設定する必要があります

TLS 証明書と秘密鍵を含む、Kubernetes Secret に格納されているファイルの名前。TLS 証明書と鍵データを入力として使用し、この Secret を作成する必要があります。

関連項目:

watcher

watcher プロパティは必須の構成プロパティです。ウォッチャーは、構成の変更を監視し、アプリケーションをランタイム プレーンにトリガーするプロセスです。

次の表に、watcher オブジェクトのプロパティを示します。

プロパティ 説明
watcher.annotations 高度 導入バージョン: 1.5.0

デフォルト値: なし

(省略可)Pod にアノテーションを付けるために使用する Key-Value マップ。詳しくは、カスタム アノテーションをご覧ください。

watcher.args.enableIssueScanning 高度 導入バージョン: 1.10.0

デフォルト値: true

問題の自動表示を有効または無効にします。true の場合、Watcher はコントロール プレーンと Kubernetes API サーバーの状態を自動的にスキャンして、構成の問題があるかどうかを確認します。

問題の自動表示を無効にするには、false に設定します。詳しくは、問題の自動表示をご覧ください。

watcher.args.issueScanInterval 高度 導入バージョン: 1.10.0

デフォルト値: 60

Watcher が自動化された問題を表示するためにランタイム プレーンをスキャンする間隔(秒単位)。詳しくは、問題の自動表示をご覧ください。

watcher.gsa 高度 導入バージョン: 1.10.0

デフォルト値: なし

Helm のみ: Helm チャートを使用して GKE クラスタで Workload Identity を有効にするときに、対応する Kubernetes サービス アカウントに関連付ける apigee-watcher Google IAM サービス アカウント(GSA)のメールアドレス。このプロパティは、gcp.workloadIdentity.enabledtrue に設定した場合に設定します。

通常、GSA のメールアドレスの形式は次のとおりです。

GSA_NAME@PROJECT_ID.iam.gserviceaccount.com

例:

apigee-watcher@my-hybrid-project.iam.gserviceaccount.com

Enabling Workload Identity with Helm charts をご覧ください。

watcher.image.pullPolicy 高度 導入バージョン: 1.4.0

デフォルト値: IfNotPresent

kubelet が Pod の Docker イメージを pull するタイミングを決定します。有効な値は次のとおりです。

  • IfNotPresent: イメージがすでに存在する場合、新しいイメージは pull しません。
  • Always: イメージがすでに存在するかどうかにかかわらず、常にイメージを pull します。

詳細については、イメージの更新をご覧ください。

watcher.image.tag 高度 導入バージョン: 1.4.0

デフォルト値: 1.11.2

このサービスの Docker イメージのバージョン ラベル。

watcher.image.url 高度 導入バージョン: 1.4.0

デフォルト値: なし

このサービスの Docker イメージの場所。

apigee-pull-push --list を使用して、このコンポーネントの現在のリポジトリ URL を確認できます。

watcher.replicaCountMax 基本 導入バージョン: 1.3.0

デフォルト値: 1

ウォッチャー レプリカの最大数。競合を避けるため、1 のままにしてください。

watcher.replicaCountMin 基本 導入バージョン: 1.3.0

デフォルト値: 1

ウォッチャー レプリカの最小数。

watcher.resources.limits.cpu 高度 導入バージョン: 1.11.0

デフォルト値: 1000m

Kubernetes コンテナ内のリソースの CPU 上限(ミリコア単位)。

watcher.resources.limits.memory 高度 導入バージョン: 1.11.0

デフォルト値: 2Gi

Kubernetes コンテナ内のリソースのメモリ上限(MiB 単位)。

watcher.serviceAccountPath 基本 導入バージョン: 1.3.0

デフォルト値: なし

必須

Apigee ランタイム エージェントのロールを持つ Google サービス アカウントのキーファイルへのパス。

watcher.serviceAccountRef 高度 導入バージョン: 1.3.0

デフォルト値: なし

serviceAccountPath と serviceAccountRef のいずれかが必要です。

watcher.tolerations.effect 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

effect は、taint と一致する toleration の効果を指定します。effect の値は次のいずれかです。

  • NoExecute
  • NoSchedule
  • PreferNoSchedule

詳細については、taint と toleration: コンセプトをご覧ください。

watcher.tolerations.key 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能を使用するために必要です。

key は、toleration を適用できる Pod を識別します。

詳細については、taint と toleration: コンセプトをご覧ください。

watcher.tolerations.operator 高度 導入バージョン: 1.10.1

デフォルト値: "Equal"

Kubernetes の taint と toleration 機能を使用するために必要です。

operator には、effect をトリガーするオペレーションを指定します。operator の値は次のいずれかです。

  • Equal は、value に設定された値と一致します。
  • Exists は、value に設定された値を無視します。

詳細については、taint と toleration: コンセプトをご覧ください。

watcher.tolerations.tolerationSeconds 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

tolerationSeconds は、障害が発生しているノードまたは応答していないノードに Pod がバインドされている時間を秒単位で定義します。

詳細については、taint と toleration: コンセプトをご覧ください。

watcher.tolerations.value 高度 導入バージョン: 1.10.1

デフォルト値: なし

Kubernetes の taint と toleration 機能で使用します。

value は、operatorEqual に設定されている場合に effect をトリガーする値です。

詳細については、taint と toleration: コンセプトをご覧ください。