Cluster リソース
必須
変更可
authentication
このセクションには、OpenID Connect(OIDC)の使用に必要な設定が含まれています。OIDC では、既存の ID プロバイダを使用して、Google Distributed Cloud クラスタでのユーザーとグループの認証を管理できます。
Cluster リソース
—
—
authentication.oidc.certificateAuthorityData
省略可。base64
でエンコードされた OIDC プロバイダの PEM エンコード証明書 。文字列を作成するには、ヘッダーを含めた証明書を base64
でエンコードします。結果の文字列は certificateAuthorityData
に 1 行で含めます。
例(サンプルは表に合わせて折り返されています):
certificateAuthorityData :
LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tC
...k1JSUN2RENDQWFT==
Cluster リソース
省略可
変更不可
authentication.oidc.clientID
省略可。文字列。OpenID プロバイダへの認証リクエストを行うクライアント アプリケーションの ID。
Cluster リソース
省略可
変更不可
authentication.oidc.clientSecret
省略可。文字列。OIDC クライアント アプリケーションと OIDC プロバイダ間の共有シークレット。
Cluster リソース
省略可
変更不可
authentication.oidc.deployCloudConsoleProxy
省略可。ブール値(true
| false
)。インターネット経由でアクセスできないオンプレミスの ID プロバイダに Google Cloud コンソールを接続するために、クラスタにリバース プロキシをデプロイするかどうかを指定します。ID プロバイダに公共のインターネット経由でアクセスできない場合は、このフィールドを true
に設定して Google Cloud コンソールで認証します。デフォルトでは false
に設定されます。
Cluster リソース
省略可
変更不可
省略可。カンマ区切りのリスト。OpenID プロバイダに送信する追加の Key-Value パラメータ。
Cluster リソース
省略可
変更不可
authentication.oidc.groupPrefix
省略可。文字列。既存の名前と競合しないように、グループ クレームの先頭に付加される接頭辞。たとえば、グループ dev
と接頭辞 oidc:
が指定されている場合、oidc:dev
となります。
Cluster リソース
省略可
変更不可
authentication.oidc.group
省略可。文字列。プロバイダがセキュリティ グループを返すために使用する JWT クレーム。
Cluster リソース
省略可
変更不可
authentication.oidc.issuerURL
省略可。URL 文字列。認可リクエストが OpenID に送信される URL(https://example.com/adfs
など)。Kubernetes API サーバーは、この URL を使用してトークン検証用の公開鍵を検出します。URL は HTTPS を使用する必要があります。
Cluster リソース
省略可
変更不可
authentication.oidc.kubectlRedirectURL
省略可。URL 文字列。kubectl
が認証に使用するリダイレクト URL。OIDC を有効にする場合は、kubectlRedirectURL
値を指定する必要があります。
Cluster リソース
省略可
変更不可
authentication.oidc.proxy
省略可。URL 文字列。クラスタが OIDC プロバイダに接続するために使用するプロキシ サーバー(該当する場合)。この値には、ホスト名 / IP アドレスと、必要に応じてポート、ユーザー名、パスワードを含める必要があります。例: http://user:password@10.10.10.10:8888
。
Cluster リソース
省略可
変更不可
authentication.oidc.scopes
省略可。カンマ区切りのリスト。OpenID プロバイダに送信する追加のスコープ。Microsoft Azure と Okta には offline_access
スコープが必要です。
Cluster リソース
省略可
変更不可
authentication.oidc.usernamePrefix
省略可。文字列。ユーザー名のクレームの先頭に付加される接頭辞。
Cluster リソース
省略可
変更不可
authentication.oidc.username
省略可。文字列。ユーザー名として使用する JWT クレーム。指定しない場合、デフォルトで sub
になります。
Cluster リソース
省略可
変更不可
bypassPreflightCheck
省略可。ブール値(true
| false
)。true
に設定すると、既存のクラスタにリソースを適用するときに内部プリフライト チェックが無視されます。デフォルトは false
です。
変更可能かどうか: 既存クラスタの場合、この値は bmctl update
コマンドで変更できます。
Cluster リソース
省略可
変更可
clusterNetwork
このセクションには、クラスタのネットワーク設定が含まれます。
Cluster リソース
必須
変更可
clusterNetwork.advancedNetworking
ブール値。高度なネットワーク機能(BGP を使用するバンドルされたロード バランシングや下り(外向き)NAT ゲートウェイなど)を有効にするには、このフィールドを true
に設定します。どちらの機能も Network Gateway for GDC を使用します。Network Gateway for GDC は、GKE Enterprise と Google Kubernetes Engine(GKE)で高度なネットワーク機能を実現するための重要な要素です。Network Gateway for GDC の主なメリットの一つは、NetworkGatewayGroup
カスタム リソースで指定した一連のアドレスから、フローティング IP アドレスを動的に割り振ることができる点です。
Network Gateway for GDC と、それに関連する高度なネットワーク機能の詳細については、下り(外向き)NAT ゲートウェイを構成する と BGP を使用してバンドルされたロードバランサを構成する をご覧ください。
Cluster リソース
省略可
変更不可
clusterNetwork.bundledIngress
ブール値。Google Distributed Cloud にバンドルされている Ingress 機能を無効にするには、このフィールドを false
に設定します。クラスタにバンドルされている Ingress 機能は、上り(内向き)のみをサポートします。完全に機能するサービス メッシュを活用するために Istio または Cloud Service Mesh と統合する場合は、バンドルされた Ingress を無効にすることをおすすめします。このフィールドはデフォルトで true
に設定されています。このフィールドは、生成されたクラスタ構成ファイルに存在しません。バンドルされた Ingress を無効にできるのは、バージョン 1.13.0 以降のクラスタのみです。
バンドルされた Ingress 機能の詳細については、サービスと Ingress の作成 をご覧ください。
Cluster リソース
省略可
変更可
clusterNetwork.flatIPv4
ブール値。フラットモードのクラスタ ネットワーク モデルを有効にするには、このフィールドを true
に設定します。フラットモードでは、各 Pod に一意の IP アドレスがあります。Pod は、中間ゲートウェイやネットワーク アドレス変換(NAT)なしで互いに直接通信できます。flatIPv4
のデフォルトは、false
です。フラットモードは、クラスタの作成時にのみ有効にできます。クラスタで有効にしたフラットモードを無効にすることはできません。
Cluster リソース
省略可
変更不可
clusterNetwork.forwardMode
省略可。文字列。Dataplane V2 ロード バランシングのネットワーク モードを指定します。デフォルトのネットワーキング モードは、送信元ネットワーク アドレス変換(SNAT)です。Direct Server Return(DSR)モードは、SNAT ロード バランシングの問題を解決します。DSR モード(forwardMode: dsr
)では、ロードバランサ ノードが IP オプションを使用してクライアントの送信元アドレスを保存します。Dataplane V2 ロード バランシングのネットワーク モードは、クラスタ作成時にのみ構成できます。
使用できる値: dsr
| snat
詳細については、ロード バランシング ネットワーク モードを構成する をご覧ください。
Cluster リソース
省略可
変更不可
clusterNetwork.multipleNetworkInterfaces
省略可。ブール値。Pod の複数のネットワーク インターフェースを有効にするには、このフィールドを true
に設定します。
複数のネットワーク インターフェースの設定と使用方法の詳細については、Pod の複数のネットワーク インターフェースを構成する をご覧ください。
Cluster リソース
省略可
変更不可
clusterNetwork.pods.cidrBlocks
必須。IPv4 アドレスの範囲(CIDR ブロック形式)。pods には、Pod ネットワークが割り振られる IP 範囲を指定します。
最小 Pod CIDR 範囲: 14 ビットのサイズ(16,384 件の IP アドレス)に対応する /18
のマスク値。
最大 Pod CIDR 範囲: 24 ビットのサイズ(16,777,216 件の IP アドレス)に対応する /8
のマスク値。
例:
pods :
cidrBlocks :
- 192.168.0.0/16
Cluster リソース
必須
変更不可
clusterNetwork.sriovOperator
省略可。ブール値。クラスタで SR-IOV ネットワークを有効にするには、このフィールドを true
に設定します。
SR-IOV ネットワークの構成と使用方法については、SR-IOV ネットワークを設定する をご覧ください。
Cluster リソース
省略可
変更可
clusterNetwork.services.cidrBlocks
必須。IPv4 アドレスの範囲(CIDR ブロック形式)。Service の仮想 IP(VIP)アドレスが割り振られる IP アドレスの範囲を指定します。この範囲は、ネットワークから到達可能なサブネットと重複してはなりません。プライベート インターネットのアドレスの割り振りについては、RFC 1918 をご覧ください。
Google Distributed Cloud リリース 1.15.0 以降では、このフィールドは変更可能です。必要に応じて、クラスタの作成後にサービスに割り振る IP アドレスの数を増やすことができます。詳細については、Service のネットワーク範囲を拡張する をご覧ください。拡張できるのは、IPv4 サービスの CIDR 範囲のみです。ネットワークの範囲は縮小できません。つまり、マスク(/ 後の値)を増やすことはできません。
最小 Service CIDR 範囲: 8 ビットのサイズ(256 件のアドレス)に対応する /24
のマスク値。
最大 Service CIDR 範囲: 20 ビットのサイズ(1,048,576 件の IP アドレス)に対応する /12
のマスク値。
例:
services :
cidrBlocks :
- 10.96.0.0/12
Cluster リソース
必須
変更可
clusterOperations
このセクションには、Cloud Logging と Cloud Monitoring の情報が含まれます。
Cluster リソース
必須
変更可
clusterOperations.enableApplication
このフィールドは使用されなくなっており、効果はありません。Stackdriver のカスタム リソースでは、アプリケーションのロギングとモニタリングが有効になっています。アプリケーションのロギングとモニタリングを有効にする方法については、アプリケーションのロギングとモニタリングを有効にする をご覧ください。
Cluster リソース
NoOps
変更可
clusterOperations.disableCloudAuditLogging
ブール値。Cloud Audit Logs は、不審な API リクエストの調査や統計情報の収集を行う際に有効です。Cloud Audit Logs は、デフォルトで有効(disableCloudAuditLogging: false
)になっています。Cloud Audit Logs を無効にするには、true
に設定します。
詳細については、監査ロギングの使用 をご覧ください。
Cluster リソース
省略可
変更可
clusterOperations.location
文字列。Logging のログと Monitoring の指標を保存する Google Cloud リージョン。オンプレミスのデータセンターに近いリージョンを選択することをおすすめします。詳細については、グローバル ロケーション をご覧ください。
例:
location : us-central1
Cluster リソース
必須
変更不可
clusterOperations.projectID
文字列。ログと指標を表示する Google Cloud プロジェクトのプロジェクト ID。
Cluster リソース
必須
変更不可
controlPlane
このセクションには、コントロール プレーンとそのコンポーネントに関する情報が含まれます。
Cluster リソース
必須
変更可
省略可。文字列の配列(ドメイン名と IP アドレス)。サブジェクト代替名(SAN)は SSL 証明書の機能で、証明書を有効にするドメイン名とサブドメインを定義できます。Google Distributed Cloud クラスタでは、API サーバー証明書の SAN にデフォルトでコントロール プレーン ノードの IP アドレスと VIP アドレス、Kubernetes DNS 名が含まれています。このフィールドを使用して、クラスタの API サーバー証明書に SAN を追加します。ドメイン名は RFC 1035 に準拠している必要があります。詳細については、API サーバー証明書にドメインを追加する をご覧ください。
例:
...
controlPlane :
apiServerCertExtraSANs :
- "demo-dns.example.com"
- "sample-dns.com"
nodePoolSpec :
...
このフィールドはいつでも追加または変更できます。
Cluster リソース
省略可
変更可
controlPlane.nodePoolSpec
このセクションには、コントロール プレーンとそのコンポーネントで使用されるノードプールの IP アドレスを指定します。コントロール プレーンのノードプールの仕様(ロードバランサ ノードプールの仕様 など)は特別なものです。この仕様では、重要なクラスタ リソースを宣言し、制御します。このリソースの正規のソースは、クラスタ構成ファイル内のこのセクションです。最上位のコントロール プレーン ノードプール リソースは直接変更しないでください。代わりに、クラスタ構成ファイル内の関連するセクションを変更してください。
Cluster リソース
必須
変更可
controlPlane.nodePoolSpec.nodes
必須。IP アドレスの配列。通常、この配列は 1 台のマシンの IP アドレスか、高可用性(HA)デプロイ用の 3 台のマシンの IP アドレスです。
例:
controlPlane :
nodePoolSpec :
nodes :
- address : 192.168.1.212
- address : 192.168.1.213
- address : 192.168.1.214
このフィールドは、クラスタを更新またはアップグレードするたびに変更できます。
Cluster リソース
必須
変更可
controlPlane.nodePoolSpec.nodes.address
必須。文字列(IPv4 アドレス)。ノードプールを指定する場合は、address
フィールドを使用して、各ノードの SSH アクセスのデフォルトの IPv4 アドレスを指定します。SSH アクセスは、インストールやアップグレードなどのクラスタ管理オペレーションに必要です。デフォルトでは、この IP アドレスはデータと Kubernetes トラフィックに使用されます。ただし、特定のノードに k8sIP
アドレスを指定すると、トラフィックはノードの 2 つのアドレス間で分割され、k8sIP
アドレスはデータと Kubernetes トラフィックにのみ使用されます。
次に例を示します。
controlPlane :
nodePoolSpec :
nodes :
- address : 192.168.1.212
- address : 192.168.1.213
- address : 192.168.1.214
このフィールドは、クラスタを更新またはアップグレードするたびに変更できます。
Cluster リソース
必須
変更可
controlPlane.nodePoolSpec.nodes.k8sIP
省略可。文字列(IPv4 アドレス)。ノードのオプションの k8sIP
アドレスを指定すると、Kubernetes API、kubelet、ワークロードのリクエストやレスポンスなど、ノードのデータと Kubernetes トラフィックの処理専用になります。k8sIP
を指定すると、ノードへの SSH 接続にのみ標準ノードの IP アドレス nodePoolSpec.nodes.address
が使用されます。k8sIP
アドレスを指定しない場合、標準ノードの IP アドレスがノードのすべてのトラフィックを処理します。
次に例を示します。
controlPlane :
nodePoolSpec :
nodes :
- address : 192.168.2.212
k8sIP : 192.168.1.212
- address : 192.168.1.213
- address : 192.168.1.214
このフィールドは、クラスタの作成後に変更することはできません。
Cluster リソース
省略可
変更不可
controlPlane.nodePoolSpec.kubeletConfig
省略可。このセクションには、コントロール プレーン ノードプール内のすべてのノードで kubelet を構成するためのフィールドが含まれています。
例:
controlPlane :
nodePoolSpec :
kubeletConfig :
registryBurst : 15
registryPullQPS : 10
serializeImagePulls : false
Cluster リソース
省略可
変更可
controlPlane.nodePoolSpec.kubeletConfig.registryBurst
省略可。整数(負ではない)リクエストの急増に対応するために、処理キューに追加できるイメージの pull リクエストの最大数を指定します。pull が開始すると、新しいリクエストをキューに追加できます。デフォルト値は 10 です。このフィールドは、registryBurst
kubelet 構成(v1beta1)オプションに対応しています。
registryPullQPS
の値は、この設定よりも優先されます。たとえば、デフォルトの設定では、最大 10 件の同時クエリのバーストが許可されていますが、デフォルトのレート(秒間クエリ数 5 件)で処理する必要があります。このバースト動作は、registryPullQPS
が 0
より大きい場合にのみ使用されます。
このフィールドは、クラスタを作成、更新、アップグレードするたびに設定できます。設定はクラスタのアップグレード後も保持されます。詳細については、kubelet イメージの pull 設定を構成する をご覧ください。
Cluster リソース
省略可
変更可
controlPlane.nodePoolSpec.kubeletConfig.registryPullQPS
省略可。整数(負ではない)Container Registry イメージの pull に対するクエリの処理速度を秒間クエリ数(QPS)で指定します。registryPullQPS
が 0 より大きい値に設定されている場合、クエリレートは秒間クエリ数の数値に制限されます。registryPullQPS
が 0
に設定されている場合、クエリレートに制限はありません。デフォルト値は 5
です。
このフィールドは、registryPullQPS
kubelet 構成(v1beta1)オプションに対応しています。
このフィールドは、クラスタを作成、更新、アップグレードするたびに設定できます。設定はクラスタのアップグレード後も保持されます。詳細については、kubelet イメージの pull 設定を構成する をご覧ください。
Cluster リソース
省略可
変更可
controlPlane.nodePoolSpec.kubeletConfig.serializeImagePulls
省略可。ブール値(true
| false
)。このフィールドは、Container Registry の pull が並列処理されるか、一度に 1 つずつ処理されるかを指定します。デフォルトは true
で、pull を 1 つずつ処理するように指定します。false
に設定すると、kubelet はイメージを並列で pull します。このフィールドは、serializeImagePulls
kubelet 構成(v1beta1)オプションに対応しています。
このフィールドは、クラスタを作成、更新、アップグレードするたびに設定できます。設定はクラスタのアップグレード後も保持されます。詳細については、kubelet イメージの pull 設定を構成する をご覧ください。
Cluster リソース
省略可
変更可
gkeConnect
このセクションには、クラスタを Google Cloud に接続するために使用する Google Cloud プロジェクトに関する情報が含まれます。
Cluster リソース
必須
変更不可
gkeConnect.projectID
必須: 文字列クラスタを Google Cloud に接続するために使用する Google Cloud プロジェクトの ID。これは、フリート ホスト プロジェクト とも呼ばれます。
例:
spec :
...
gkeConnect :
projectID : "my-connect-project-123"
既存のクラスタの場合、この値は変更できません。
Cluster リソース
必須
変更不可
gkeConnect.location
省略可。文字列。デフォルト値: global
。クラスタのフリート メンバーシップは、Fleet サービス(gkehub.googleapis.com
)と Connect サービス(gkeconnect.googleapis.com
)で管理されます。フリート メンバーシップはグローバルまたはリージョンにできます。必要に応じて、gkeConnect.location
を使用して、Fleet サービスと Connect サービスが実行される Google Cloud リージョンを指定して、トラフィックが自分のリージョンに制限されるようにできます。
サポートされているリージョンの一覧については、GKE On-Prem API でサポートされているリージョン をご覧ください。指定しない場合は、サービスのグローバル インスタンスが使用されます。
次の点にご注意ください。
バージョン 1.28 より前のバージョンで作成されたクラスタは、グローバルな Fleet サービスと Connect サービスによって管理されます。
GKE On-Prem API クライアント(Google Cloud コンソール、Google Cloud CLI、Terraform)を使用して作成された新しいクラスタは、GKE On-Prem API に指定したリージョンと同じリージョンを使用します。
新しいクラスタでこのフィールドを指定する場合、指定するリージョンは gkeOnPremAPI.location
に構成されたリージョンと同じでなければなりません。リージョンが同じでない場合、クラスタの作成は失敗します。
例:
spec :
...
gkeConnect :
projectID : "my-connect-project-123"
location : "us-central1"
既存のクラスタの場合、この値は変更できません。
Cluster リソース
省略可
変更不可
gkeOnPremAPI
1.16 以降では、Google Cloud プロジェクトで GKE On-Prem API が有効になっている場合、プロジェクト内のすべてのクラスタが、clusterOperations.location
で構成されたリージョンの GKE On-Prem API に自動的に登録 されます。
GKE On-Prem API のプロジェクトにすべてのクラスタを登録する場合は、始める前に の手順に沿って、プロジェクト内の GKE On-Prem API を有効にしてから使用します。
GKE On-Prem API にクラスタを登録しない場合は、このセクションを追加して、gkeOnPremAPI.enabled
を false
に設定します。プロジェクトにクラスタを登録しない場合は、プロジェクトで gkeonprem.googleapis.com
(GKE On-Prem API のサービス名)を無効にします。手順については、サービスの無効化 をご覧ください。
GKE On-Prem API のプロジェクトにすべてのクラスタを登録する場合は、始める前に の手順に沿って、プロジェクト内の GKE On-Prem API を有効にしてから使用します。
GKE On-Prem API にクラスタを登録しない場合は、このセクションを追加して、gkeOnPremAPI.enabled
を false
に設定します。プロジェクトにクラスタを登録しない場合は、プロジェクトで gkeonprem.googleapis.com
(GKE On-Prem API のサービス名)を無効にします。手順については、サービスの無効化 をご覧ください。
GKE On-Prem API に管理クラスタまたはユーザー クラスタを登録すると、標準ツール(Google Cloud コンソール、Google Cloud CLI、Terraform )を使用してクラスタの詳細を表示し、クラスタのライフサイクルを管理できます。たとえば、gcloud CLI コマンドを実行して、クラスタに関する情報を取得 できます。
GKE On-Prem API は、クラスタの状態メタデータを Google Cloud に保存します。このメタデータにより、API でクラスタのライフサイクルを管理できるようになります。標準ツールは GKE On-Prem API を使用します。これらのツールは、総称して GKE On-Prem API クライアントと呼ばれています。
gkeOnPremAPI.enabled
を true
に設定した場合、bmctl
を使用してクラスタを作成または更新する前に、GKE On-Prem API を有効にして初期化するために、始める前に の手順に沿って操作してください。
このセクションを追加してクラスタを作成または更新した後に、セクションを削除してクラスタを更新すると、更新が失敗します。
bmctl
ではなく、標準ツールでクラスタを作成する場合は、以下をご覧ください。
標準ツールを使用してユーザー クラスタを作成すると、クラスタは GKE On-Prem API に自動的に登録されます。
Cluster リソース
省略可
gkeOnPremAPI.enabled
デフォルトでは、プロジェクトで GKE On-Prem API が有効になっている場合、クラスタは GKE On-Prem API に登録されます。クラスタを登録しない場合は false
に設定します。
クラスタを GKE On-Prem API に登録した後、クラスタの登録を解除する必要がある場合は、次の変更を行い、クラスタを更新します。
gkeOnPremAPI :
enabled : false
Cluster リソース
必須
変更可
gkeOnPremAPI.location
GKE On-Prem API が実行され、クラスタ メタデータが保存される Google Cloud リージョン。サポートされているリージョン のいずれかを選択します。gkeOnPremAPI.enabled
が true
の場合、空でない文字列にする必要があります。gkeOnPremAPI.enabled
が false
の場合、このフィールドを含めないでください。
このセクションが構成ファイルに含まれていない場合、このフィールドは clusterOperations.location
に設定されます。
Cluster リソース
省略可
変更不可
kubevirt.useEmulation
(非推奨)
非推奨 。リリース 1.11.2 時点では、VMRuntime カスタム リソースのみを更新することで、GDC上の VM ランタイムを有効または無効にできます。ブール値。仮想マシンの実行にソフトウェア エミュレーションを使用するかどうかを指定します。ノードがハードウェア仮想化をサポートしている場合は、パフォーマンスを向上させるために useEmulation
を false
に設定します。ハードウェア仮想化がサポートされていない場合、またはサポートされているかどうか不明な場合は、true
に設定します。
Cluster リソース
省略可
変更可
loadBalancer
このセクションには、クラスタ ロード バランシングの設定が含まれます。
Cluster リソース
必須
変更可
loadBalancer.addressPools
オブジェクト。クラスタ ロードバランサ プールの名前と IP アドレスの配列。アドレスプールの構成は、非管理クラスタの bundled
LB モードでのみ有効です。新しいアドレスプールはいつでも追加できますが、既存のアドレスプールの変更や削除はできません。既存のアドレスプールは、avoidBuggyIPs
フィールドと manualAssign
フィールドのみを変更する場合に編集できます。
Cluster リソース
省略可
変更不可
loadBalancer.addressPools.addresses
IP アドレス範囲の配列。データプレーン ロードバランサの重複しない IP 範囲のリストを指定します。すべてのアドレスが、ロードバランサ ノードと同じサブネット内にある必要があります。
例:
addressPools :
- name : pool1
addresses :
- 192.168.1.0-192.168.1.4
- 192.168.1.240/28
Cluster リソース
省略可
変更不可
loadBalancer.addressPools.name
文字列。クラスタ ロードバランサ プールに付ける名前。
Cluster リソース
必須
変更不可
loadBalancer.addressPools.avoidBuggyIPs
省略可。ブール値(true
| false
)。true
の場合、.0
と .255
で終わる IP アドレスは除外されます。一部のネットワーク ハードウェアは、これらの特別なアドレスへのトラフィックをドロップします。このフィールドは省略できます。デフォルト値は false
です。
Cluster リソース
省略可
変更可
loadBalancer.addressPools.manualAssign
省略可。ブール値(true
| false
)。true
の場合、このプール内のアドレスは Kubernetes Services に自動的に割り当てられません。true
の場合、このプール内の IP アドレスは、Service によって明示的に指定された場合にのみ使用されます。このフィールドは省略できます。デフォルト値は false
です。
Cluster リソース
省略可
変更可
loadBalancer.mode
必須。文字列。ロード バランシング モードを指定します。bundled
モードでは、クラスタの作成時に Google Distributed Cloud がロードバランサ ノードにロードバランサをインストールします。manual
モードでは、クラスタは手動で構成された外部ロードバランサに依存します。詳細については、ロードバランサの概要 をご覧ください。
使用できる値: bundled
| manual
Cluster リソース
必須
変更不可
loadBalancer.type
省略可。文字列。使用するバンドルされたロード バランシングのタイプ、レイヤ 2 または境界ゲートウェイ プロトコル(BGP)を指定します。標準のバンドルされたロード バランシング を使用している場合は、type
を layer2
に設定します。BGP を使用するバンドルされたロード バランシング を使用している場合は、type
を bgp
に設定します。type
を設定しない場合、デフォルトで layer2
になります。
使用できる値: layer2
| bgp
Cluster リソース
省略可
変更不可
loadBalancer.nodePoolSpec
省略可。このセクションは、ロードバランサのノードプールを構成するために使用します。指定するノードは Kubernetes クラスタの一部であり、通常のワークロードとロードバランサを実行します。ノードプールを指定しない場合は、コントロール プレーン ノードがロード バランシングに使用されます。このセクションは、ロード バランシング モードが bundled
に設定されている場合にのみ適用されます。
重要: loadBalancer.nodePoolSpec
を指定せずにクラスタを作成した場合、後から nodePoolSpec
を追加することはできません。loadBalancer.nodePoolSpec
で構成されたクラスタの場合は、いつでも nodePoolSpec
を更新できます。
ロードバランサ ノードプール内のノードでワークロードが実行されないようにするには、次の taint をノードに追加します。
node-role.kubernetes.io/load-balancer:NoSchedule
Google Distributed Cloud は、ロード バランシングに必要な Pod にこの taint の toleration を追加します。
Cluster リソース
省略可
変更可
loadBalancer.nodePoolSpec.nodes
このセクションには、ロードバランサ ノードプール内のノードの IP アドレスの配列が含まれます。
デフォルトでは、ロードバランサ ノードプール内のすべてのノードは、構成ファイルの loadBalancer.addressPools
セクションで構成されているロードバランサの VIP と同じレイヤ 2 サブネット内にある必要があります。ただし、ノードに Kubernetes IP アドレス k8sIP
を指定する場合は、そのアドレスのみが他のロードバランサの VIP と同じレイヤ 2 サブネットに存在する必要があります。
Cluster リソース
省略可
変更可
loadBalancer.nodePoolSpec.nodes.address
省略可。文字列(IPv4 アドレス)。ノードプールを指定する場合は、address
フィールドを使用して、各ノードの SSH アクセスのデフォルトの IPv4 アドレスを指定します。SSH アクセスは、インストールやアップグレードなどのクラスタ管理オペレーションに必要です。デフォルトでは、この IP アドレスはデータと Kubernetes トラフィックに使用されます。ただし、特定のノードに k8sIP
アドレスを指定すると、トラフィックはノードの 2 つのアドレス間で分割され、k8sIP
アドレスはデータと Kubernetes トラフィックにのみ使用されます。
ロードバランサ ノードプール内のノードはワークロードを実行できますが、ワーカー ノードプール内のノードとは分離されています。特定のクラスタノードを複数のノードプールに含めることはできません。ノード IP アドレスが重複すると、クラスタの作成などのクラスタ オペレーションがブロックされます。
次に例を示します。
loadBalancer :
mode : bundled
...
nodePoolSpec :
nodes :
- address : 10.200.0.25
- address : 10.200.0.26
- address : 10.200.0.27
Cluster リソース
省略可
変更可
loadBalancer.nodePoolSpec.nodes.k8sIP
省略可。文字列(IPv4 アドレス)。ノードのオプションの k8sIP
アドレスを指定すると、Kubernetes API、kubelet、ワークロードのリクエストやレスポンスなど、ノードのデータと Kubernetes トラフィックの処理専用になります。k8sIP
を指定すると、ノードへの SSH 接続にのみ標準ノードの IP アドレス nodePoolSpec.nodes.address
が使用されます。k8sIP
アドレスを指定しない場合、標準ノードの IP アドレスがノードのすべてのトラフィックを処理します。
注: ベアメタル上の Google Distributed Cloud(ソフトウェアのみ)では、管理クラスタの作成など、一部のクラスタ オペレーションでブートストラップ クラスタがデプロイされます。k8sIP
アドレスが指定されている場合、この一時的なブートストラップ クラスタは、クラスタの処理中に両方のノードアドレスにアクセスします。
次に例を示します。
loadBalancer :
mode : bundled
...
addressPools :
- name : pool1
addresses :
- 10.200.0.92-10.200.0.100
nodePoolSpec :
nodes :
- address : 10.200.1.25
k8sIP : 10.200.0.25
- address : 10.200.0.26
- address : 10.200.0.27
このフィールドは、クラスタの作成後に変更することはできません。
Cluster リソース
省略可
変更不可
loadBalancer.nodePoolSpec.kubeletConfig
省略可。このセクションには、コントロール プレーン ノードプール内のすべてのノードで kubelet を構成するためのフィールドが含まれています。
例:
loadBalancer :
nodePoolSpec :
kubeletConfig :
registryBurst : 15
registryPullQPS : 10
serializeImagePulls : false
Cluster リソース
省略可
変更可
loadBalancer.nodePoolSpec.kubeletConfig.registryBurst
省略可。整数(負ではない)リクエストの急増に対応するために、処理キューに追加できるイメージの pull リクエストの最大数を指定します。pull が開始すると、新しいリクエストをキューに追加できます。デフォルト値は 10 です。このフィールドは、registryBurst
kubelet 構成(v1beta1)オプションに対応しています。
registryPullQPS
の値は、この設定よりも優先されます。たとえば、デフォルトの設定では、最大 10 件の同時クエリのバーストが許可されていますが、デフォルトのレート(秒間クエリ数 5 件)で処理する必要があります。このバースト動作は、registryPullQPS
が 0
より大きい場合にのみ使用されます。
このフィールドは、クラスタを作成、更新、アップグレードするたびに設定できます。設定はクラスタのアップグレード後も保持されます。詳細については、kubelet イメージの pull 設定を構成する をご覧ください。
Cluster リソース
省略可
変更可
loadBalancer.nodePoolSpec.kubeletConfig.registryPullQPS
省略可。整数(負ではない)Container Registry イメージの pull に対するクエリの処理速度を秒間クエリ数(QPS)で指定します。registryPullQPS
が 0 より大きい値に設定されている場合、クエリレートは秒間クエリ数の数値に制限されます。registryPullQPS
が 0
に設定されている場合、クエリレートに制限はありません。デフォルト値は 5
です。
このフィールドは、registryPullQPS
kubelet 構成(v1beta1)オプションに対応しています。
このフィールドは、クラスタを作成、更新、アップグレードするたびに設定できます。設定はクラスタのアップグレード後も保持されます。詳細については、kubelet イメージの pull 設定を構成する をご覧ください。
Cluster リソース
省略可
変更可
loadBalancer.nodePoolSpec.kubeletConfig.serializeImagePulls
省略可。ブール値(true
| false
)。このフィールドは、Container Registry の pull が並列処理されるか、一度に 1 つずつ処理されるかを指定します。デフォルトは true
で、pull を 1 つずつ処理するように指定します。false
に設定すると、kubelet はイメージを並列で pull します。このフィールドは、serializeImagePulls
kubelet 構成(v1beta1)オプションに対応しています。
このフィールドは、クラスタを作成、更新、アップグレードするたびに設定できます。設定はクラスタのアップグレード後も保持されます。詳細については、kubelet イメージの pull 設定を構成する をご覧ください。
Cluster リソース
省略可
変更可
loadBalancer.ports.controlPlaneLBPort
数値。Kubernetes コントロール プレーン(Kubernetes API サーバー)に送信されるトラフィックに使用される宛先ポート
Cluster リソース
必須
変更不可
Cluster リソース
必須
変更不可
loadBalancer.vips.ingressVIP
省略可。文字列(IPv4 アドレス)。上り(内向き)トラフィックのロードバランサに構成するよう選択した IP アドレス。
Cluster リソース
省略可
変更不可
loadBalancer.localASN
省略可。文字列。作成するクラスタの自律システム番号(ASN)を指定します。このフィールドは、境界ゲートウェイ プロトコル(BGP)を使用するバンドルされたロード バランシング ソリューションを設定するときに使用されます。詳細については、BGP を使用するバンドルされたロードバランサを構成する をご覧ください。
Cluster リソース
省略可
変更可
loadBalancer.bgpPeers
省略可。オブジェクト(マッピングのリスト)。このセクションでは、(クラスタの外部にある)ローカル ネットワークの 1 つ以上の Border Gateway Protocol(BGP)ピアを指定します。BGP ピアは、BGP を使用するバンドルされたロード バランシング ソリューションのコントロール プレーンのロード バランシング部分を設定するときに指定します。各ピアは、IP アドレス、自律システム番号(ASN)、コントロール プレーン ノードの 1 つ以上の IP アドレス(必要な場合)のリストで構成されるマッピングで指定されます。クラスタの作成後に、コントロール プレーン ロード バランシングの BGP ピアリング構成は更新できません。
例:
loadBalancer :
mode : bundled
type : bgp
localASN : 65001
bgpPeers :
- ip : 10.0.1.254
asn : 65002
controlPlaneNodes :
- 10.0.1.10
- 10.0.1.11
- ip : 10.0.2.254
asn : 65002
controlPlaneNodes :
- 10.0.2.10
詳細については、BGP を使用するバンドルされたロードバランサを構成する をご覧ください。
Cluster リソース
省略可
変更可
Cluster リソース
省略可
変更可
loadBalancer.bgpPeers.asn
省略可。文字列。外部ピアデバイスを含むネットワークの自律システム番号(ASN)。BGP を使用するバンドルされたロード バランシング ソリューションを設定するときに、コントロール プレーン ロード バランシング用に設定したすべての BGP ピアに ASN を指定します。詳細については、BGP を使用するバンドルされたロードバランサを構成する をご覧ください。
Cluster リソース
省略可
変更可
loadBalancer.bgpPeers.controlPlaneNodes
省略可。IP(IPv4)アドレスの配列。BGP を使用するバンドルされたロード バランシング ソリューションを設定するときに、外部 BGP ピアに接続するコントロール プレーン ノードの IP アドレス。コントロール プレーン ノードを指定しない場合、すべてのコントロール プレーン ノードが外部ピアに接続できます。1 つ以上の IP アドレスを指定すると、指定したノードのみがピアリング セッションに参加します。詳細については、BGP を使用するバンドルされたロードバランサを構成する をご覧ください。
Cluster リソース
省略可
変更可
maintenanceBlocks.cidrBlocks
省略可。単一の IPv4 アドレスまたは IPv4 アドレスの範囲。メンテナンス モードにするノードマシンの IP アドレスを指定します。詳細については、ノードをメンテナンス モードにする をご覧ください。
例:
maintenanceBlocks :
cidrBlocks :
- 192.168.1.200 # Single machine
- 192.168.1.100-192.168.1.109 # Ten machines
Cluster リソース
省略可
変更可
nodeAccess.loginUser
省略可。文字列。クラスタ内のノードマシンにパスワードなしでアクセスする SUDO 機能を許可する root 以外のユーザー名を指定します。SSH 認証鍵 sshPrivateKeyPath
は、指定したユーザーに対して機能する必要があります。クラスタの作成と更新のオペレーションでは、指定されたユーザーと SSH 認証鍵を使用してノードマシンにアクセスできることを確認します。
Cluster リソース
省略可
変更可
osEnvironmentConfig.addPackageRepo
省略可。ブール値(true
| false
)。デフォルトの Docker apt
リポジトリではなく、独自のパッケージ リポジトリ サーバーを使用するかどうかを指定します。独自のパッケージ リポジトリを使用するには、addPackageRepo
を false
に設定します。この機能を使用すると、Deployment 内の各ベアメタル マシンへのパッケージ リポジトリの追加が省略されます。詳細については、プライベート パッケージ リポジトリ サーバーを使用する をご覧ください。
Cluster リソース
省略可
変更不可
nodeConfig
このセクションには、クラスタノード構成の設定が含まれます。
Cluster リソース
省略可
変更可(アップグレードのみ)
nodeConfig.containerRuntime
(非推奨)
非推奨です。リリース 1.13.0 以降、Google Distributed Cloud は containerd
をコンテナ ランタイムとしてのみサポートしています。containerRuntime
フィールドは非推奨となっており、生成されたクラスタ構成ファイルから削除されています。Google Distributed Cloud バージョン 1.13.0 以降で、このフィールドがクラスタ構成ファイルに含まれている場合は、値が containerd
である必要があります。
Cluster リソース
省略可
変更可(アップグレードのみ)
nodeConfig.podDensity
このセクションでは、Pod の密度の構成を指定します。
Cluster リソース
省略可
変更不可
nodeConfig.podDensity.maxPodsPerNode
省略可。整数。単一ノードで実行できる Pod の最大数を指定します。セルフマネージド クラスタで maxPodsPerNode
に使用できる値は、32
~250
(高可用性(HA)クラスタの場合)または 64
~250
(HA 以外のクラスタの場合)です。ユーザー クラスタの場合、maxPodsPerNode
に使用できる値は 32
~250
です。指定しない場合のデフォルト値は 110
です。クラスタの作成後に、この値を更新することはできません。
Kubernetes は、各 Pod に一意の IP アドレスが指定されるように、クラスレス ドメイン間ルーティング(CIDR)ブロック を各ノードに割り当てます。CIDR ブロックのサイズは、ノードあたりの最大 Pod 数に対応します。ノードあたりの最大 Pod 数の設定の詳細については、Pod ネットワーキング をご覧ください。
Cluster リソース
省略可
変更不可
nodeConfig.privateRegistries
プレビュー
このセクションでは、ユーザー クラスタのノードレベルの非公開レジストリ構成を指定します。ノードレベルの非公開レジストリは、ワークロードを使用してイメージの pull とそれに関連するセキュリティをより細かく制御できるようにすることを目的としています。
例:
spec:
bypassPreflightCheck: false
...
nodeConfig:
containerRuntime: containerd
podDensity:
maxPodsPerNode: 250
privateRegistries:
- caCertSecretRef:
name: ca-9dd74fd308bac6df562c7a7b220590b5
namespace: some-namespace
host: 10 .200.0.2:5007
pullCredentialSecretRef:
name: pull-creds-9dd74fd308bac6df562c7a7b220590b5
namespace: some-namespace
...
管理クラスタの場合、ノードレベルの非公開レジストリは、管理クラスタ構成ファイルの認証情報セクション で指定します。
非公開レジストリへのノードアクセスの構成の詳細については、非公開レジストリに対して認証を行うノードを構成する をご覧ください。
ノードレベルの非公開レジストリの構成は、バージョン 1.29 クラスタのプレビュー版 でのみ利用できます。
Cluster リソース
省略可
変更可
nodeConfig.privateRegistries.caCertSecretRef
プレビュー
必要に応じて、このセクションを使用して、非公開レジストリの CA 証明書(サーバールート CA)を保存するために作成された Secret の名前と Namespace を指定します。ローカル レジストリでプライベート TLS 証明書が不要な場合、このブロックは省略できます。
ノードレベルの非公開レジストリの構成は、バージョン 1.29 クラスタのプレビュー版 でのみ利用できます。
Cluster リソース
省略可
変更可
nodeConfig.privateRegistries.caCertSecretRef.name
プレビュー
省略可。文字列。非公開レジストリの CA 証明書を保存するために作成された Secret の名前。
非公開レジストリへのノードアクセスの構成の詳細については、非公開レジストリに対して認証を行うノードを構成する をご覧ください。
ノードレベルの非公開レジストリの構成は、バージョン 1.29 クラスタのプレビュー版 でのみ利用できます。
Cluster リソース
省略可
変更可
nodeConfig.privateRegistries.caCertSecretRef.namespace
プレビュー
省略可。文字列。非公開レジストリの CA 証明書を保存するために作成された Secret の Namespace。
非公開レジストリへのノードアクセスの構成の詳細については、非公開レジストリに対して認証を行うノードを構成する をご覧ください。
ノードレベルの非公開レジストリの構成は、バージョン 1.29 クラスタのプレビュー版 でのみ利用できます。
Cluster リソース
省略可
変更可
nodeConfig.privateRegistries.host
プレビュー
文字列。このフィールドには、単一の非公開レジストリのホストとポートを指定します。ホストは、ドメイン名または IP アドレスで指定できます。http
または https
接頭辞は含めないでください。
ユーザー クラスタに非公開レジストリを指定する場合、host
フィールドは必須です。
ノードレベルの非公開レジストリの構成は、バージョン 1.29 クラスタのプレビュー版 でのみ利用できます。
Cluster リソース
省略可
変更可
nodeConfig.privateRegistries.pullCredentialSecretRef
プレビュー
必要に応じて、このセクションを使用して、非公開レジストリの認証情報を保存するために作成された Secret の名前と Namespace を指定します。
認証が必要な非公開レジストリへのアクセスをノードに許可するようにユーザー クラスタを構成するときに、pullCredentialSecretRef
ブロックを使用します。
ノードレベルの非公開レジストリの構成は、バージョン 1.29 クラスタのプレビュー版 でのみ利用できます。
Cluster リソース
省略可
変更可
nodeConfig.privateRegistries.pullCredentialSecretRef.name
プレビュー
省略可。文字列。非公開レジストリの認証情報を保存するために作成された Secret の名前。
非公開レジストリへのノードアクセスの構成の詳細については、非公開レジストリに対して認証を行うノードを構成する をご覧ください。
ノードレベルの非公開レジストリの構成は、バージョン 1.29 クラスタのプレビュー版 でのみ利用できます。
Cluster リソース
省略可
変更可
nodeConfig.privateRegistries.pullCredentialSecretRef.namespace
プレビュー
省略可。文字列。非公開レジストリの認証情報を保存するために作成された Secret の Namespace。
非公開レジストリへのノードアクセスの構成の詳細については、非公開レジストリに対して認証を行うノードを構成する をご覧ください。
ノードレベルの非公開レジストリの構成は、バージョン 1.29 クラスタのプレビュー版 でのみ利用できます。
Cluster リソース
省略可
変更可
nodePoolUpgradeStrategy
省略可。このセクションには、クラスタ内のワーカー ノードプールのアップグレード方法を構成するための設定が含まれます。詳細については、並列アップグレード をご覧ください。
Cluster リソース
省略可
変更可
nodePoolUpgradeStrategy.concurrentNodePools
省略可。ブール値(0
または 1
)。デフォルト: 1
。このフィールドには、1 つのクラスタのすべてのワーカー ノードプールを同時にアップグレードするかどうかを指定します。デフォルト(1
)では、順次アップグレードが実行されます。concurrentNodePools
を 0
に設定すると、クラスタ内のすべてのワーカー ノードプールが並行してアップグレードされます。
apiVersion : baremetal.cluster.gke.io/v1
kind : Cluster
metadata :
name : cluster1
namespace : cluster-cluster1
spec :
...
nodePoolUpgradeStrategy :
concurrentNodePools : 0
...
詳細については、ノードプールのアップグレード戦略 をご覧ください。
各ワーカー ノードプール内のノードは、対応する NodePool 仕様のアップグレード戦略 に従ってアップグレードされます。
Cluster リソース
省略可
変更可
nodePoolUpgradeStrategy.pause
省略可。ブール値(true
または false
)。デフォルト: false
。このフィールドには、アクティブなクラスタ アップグレードを一時停止または再開するかどうかを指定します。
Google Distributed Cloud 1.29
アップグレードの一時停止と再開の機能は、すべてのコントロール プレーン ノードがマイナー バージョン 1.29 以降であるクラスタで一般提供されています。バージョン 1.29 のクラスタの場合、この機能はデフォルトで有効になっています。
Google Distributed Cloud 1.28
アップグレードの一時停止と再開機能は、すべてのコントロール プレーン ノードがマイナー バージョン 1.28 以降であるクラスタではプレビュー版 として提供されています。バージョン 1.28 のクラスタでこの機能を有効にするには、preview.baremetal.cluster.gke.io/upgrade-pause-and-resume
アノテーションを使用します。
アクティブなクラスタ アップグレードを一時停止するには、nodePoolUpgradeStrategy.pause
の値を true
に更新します。
apiVersion : baremetal.cluster.gke.io/v1
kind : Cluster
metadata :
name : cluster1
namespace : cluster-cluster1
annotations : preview.baremetal.cluster.gke.io/upgrade-pause-and-resume
spec :
...
nodePoolUpgradeStrategy :
pause : true
...
詳しくは、アップグレードの一時停止と再開 をご覧ください。
Cluster リソース
省略可
変更可
periodicHealthCheck
このセクションには、定期的なヘルスチェックの構成情報が含まれます。クラスタ リソースで定期的なヘルスチェックに使用できる設定は enable
フィールドのみです。詳細については、定期的なヘルスチェック をご覧ください。
Cluster リソース
省略可
変更可
periodicHealthCheck.enable
省略可。ブール値(true
| false
)。クラスタの定期的なヘルスチェックを有効または無効にします。定期的なヘルスチェックは、すべてのクラスタでデフォルトで有効になっています。クラスタの定期的なヘルスチェックを無効にするには、periodicHealthCheck.enable
フィールドを false
に設定します。詳細については、定期的なヘルスチェックを無効にする をご覧ください。
Cluster リソース
省略可
変更可
profile
省略可。文字列。スタンドアロン クラスタの profile
が edge
に設定されている場合、クラスタのリソース消費は最小限に抑えられます。Edge プロファイルはスタンドアロン クラスタでのみ使用できます。Edge プロファイルはシステム リソースの要件が軽減されているため、リソースの制約が厳しい Edge デバイスにおすすめします。Edge プロファイルに関連するハードウェア要件については、Edge プロファイルを使用するスタンドアロン クラスタのリソース要件 をご覧ください。
Cluster リソース
省略可
変更不可
proxy
ネットワークがプロキシ サーバーの背後にある場合は、このセクションを設定します。それ以外の場合は、このセクションを削除します。
Cluster リソース
省略可
変更可
proxy.noProxy
文字列。プロキシ サーバーを経由しない IP アドレス、IP アドレス範囲、ホスト名、ドメイン名のカンマ区切りのリスト。Google Distributed Cloud がこれらのアドレス、ホスト、ドメインのいずれかにリクエストを送信する場合、そのリクエストは直接送信されます。
Cluster リソース
省略可
変更不可
proxy.url
文字列。プロキシ サーバーの HTTP アドレス。スキームのデフォルト ポートと同じ場合でも、ポート番号を含めます。
例:
proxy :
url : "http://my-proxy.example.local:80"
noProxy : "10.151.222.0/24, my-host.example.local,10.151.2.1"
Cluster リソース
省略可
変更可
clusterSecurity
このセクションでは、クラスタのセキュリティ関連の設定を指定します。
Cluster リソース
省略可
変更可
clusterSecurity.enableSeccomp
(プレビュー )
プレビュー
このプロダクトまたは機能には、サービス固有の利用規約 の「一般的なサービス規約」の「pre-GA サービス規約」が適用されます。
一般提供前のプロダクトと機能は「現状のまま」ご利用いただけますが、サポートが制限される場合があります。
詳しくは、リリース ステージの説明 をご覧ください。
省略可。ブール値(true
| false
)。クラスタ全体の seccomp
を有効または無効にします。このフィールドを無効にすると、クラスタ構成ファイルに seccomp
プロファイルのないコンテナが無制限で実行されます。このフィールドを有効にすると、同じコンテナがコンテナ ランタイムのデフォルトの seccomp
プロファイルを使用して保護されます。この機能はデフォルトで有効になっています。クラスタ作成後、このフィールドはアップグレード中にのみ切り替えることができます。詳細については、seccomp
を使用してコンテナを制限する をご覧ください。
Cluster リソース
省略可
変更可(アップグレードのみ)
clusterSecurity.enableRootlessContainers
省略可。ブール値(true
| false
)。ルートレス ベアメタル システム コンテナを有効または無効にします。このフィールドが有効になっている場合、ベアメタル システム コンテナは、2000~5000 の範囲のユーザー ID を持つ root 以外のユーザーとして実行されます。無効にすると、root ユーザーとしてベアメタル システム コンテナが実行されます。この機能はデフォルトで有効になっています。root ユーザーとしてコンテナを実行すると、セキュリティ リスクが生じるため、この機能をオフにしないことを強くおすすめします。クラスタ作成後、このフィールドはアップグレード中にのみ切り替えることができます。詳細については、コンテナを root ユーザーとして実行しない をご覧ください。
Cluster リソース
省略可
変更可(アップグレードのみ)
clusterSecurity.authorization
省略可。認可により、クラスタへのユーザー アクセスが構成されます。
Cluster リソース
省略可
変更可
clusterSecurity.authorization.clusterAdmin
省略可。このクラスタのクラスタ管理者を指定します。
Cluster リソース
省略可
変更可
clusterSecurity.authorization.clusterAdmin.gcpAccounts
省略可。gcpAccounts
フィールドには、Kubernetes ロールベース アクセス制御(RBAC)のロール clusterrole/cluster-admin
が付与されたアカウントのリストを指定します。このロールがあるアカウントには、すべての Namespace のクラスタ内のすべてのリソースに対する完全アクセス権があります。このフィールドでは、指定したアカウントで Connect Gateway を使用してクラスタに kubectl
コマンドを実行できるようにする RBAC ポリシーも構成します。これは特に、GKE とオンプレミス クラスタの両方があるハイブリッド環境で複数のクラスタを管理する場合に便利です。
これらの RBAC ポリシーを使用すると、コンソールへのアクセスに必要な Identity and Access Management ロール があれば、Google ID で Google Cloud コンソールにログインすることもできます。
このフィールドには、アカウント名の配列を指定します。ユーザー アカウントとサービス アカウントがサポートされています。ユーザーの場合は、Google Cloud アカウントのメールアドレスを指定します。サービス アカウントの場合は、SERVICE_ACCOUNT @PROJECT_ID .iam.gserviceaccount.com
の形式でメールアドレスを指定します。例:
...
clusterSecurity:
authorization:
clusterAdmin:
gcpAccounts:
- alex@example.com
- hao@example.com
- my-sa@example-project-123.iam.gserviceaccount.com
...
クラスタを更新してアカウントを追加する場合は、必ずすべてのアカウント(既存および新規アカウント)をリストに含めてください。これは、update コマンドが、更新に指定した内容でリストを上書きするためです。
このフィールドは、ワークロードを実行できるクラスタにのみ適用されます。たとえば、管理クラスタに gcpAccounts
を指定することはできません。
Cluster リソース
省略可
変更可
clusterSecurity.startUIDRangeRootlessContainers
省略可。整数。デフォルト値: 2000
。Google Distributed Cloud のシステム コンテナは、クラスタのインストールと管理に役立ちます。これらのコンテナで使用されるユーザー ID(UID)とグループ ID(GID)は、クラスタ仕様の startUIDRangeRootlessContainers
フィールドで制御できます。システム コンテナは、startUIDRangeRootlessContainers
~startUIDRangeRootlessContainers
+ 2999 の範囲(デフォルトでは 2000
4999
の範囲)の UID と GID を使用します。startUIDRangeRootlessContainers
を更新するときは、システム コンテナで使用される UID と GID のスペースが、ユーザー ワークロードに割り当てられた UID と GID のスペースと重複しないように値を選択します。startUIDRangeRootlessContainers
値はアップグレード時にのみ変更できます。
使用できる値: 1000
~57000
例:
apiVersion : baremetal.cluster.gke.io/v1
kind : Cluster
metadata :
name : name-of-cluster
spec :
clusterSecurity :
startUIDRangeRootlessContainers : 5000
...
詳細については、コンテナを root ユーザーとして実行しない をご覧ください。
Cluster リソース
省略可
変更可(アップグレードのみ)
storage.lvpNodeMounts.path
必須。文字列。path
フィールドは、マウントされたディスクを検出できるホストマシンのパスを指定するために使用します。それぞれのマウントに対してローカル PersistentVolume(PV)が作成されます。デフォルトのパスは /mnt/localpv-share
です。ノードマウントを構成する手順については、LVP ノードマウントの構成 をご覧ください。
Cluster リソース
必須
変更不可
storage
このセクションには、クラスタ ストレージの設定が含まれます。
Cluster リソース
必須
変更不可
storage.lvpNodeMounts
このセクションでは、マウントされたディスクで使用するローカル永続ボリュームの構成(パス)を指定します。これらのディスクは、自身でフォーマットしてマウントする必要があります。このタスクは、クラスタの作成前でも作成後でも行えます。詳細については、LVP ノードのマウント をご覧ください。
Cluster リソース
必須
変更不可
storage.lvpShare
このセクションでは、共有ファイル システムのサブディレクトリで使用するローカル永続ボリュームの構成を指定します。これらのサブディレクトリは、クラスタの作成時に自動的に作成されます。詳細については、LVP 共有 をご覧ください。
Cluster リソース
必須
変更不可
storage.lvpShare.path
必須。文字列。path
フィールドは、サブディレクトリを作成できるホストマシンのパスを指定するために使用します。サブディレクトリごとにローカル PersistentVolume(PV)が作成されます。LVP 共有を構成する手順については、LVP 共有の構成 をご覧ください。
Cluster リソース
必須
変更不可
storage.lvpShare.numPVUnderSharedPath
必須。文字列。lvpShare.path
内に作成するサブディレクトリの数を指定します。デフォルト値は 5
です。LVP 共有を構成する手順については、LVP 共有の構成 をご覧ください。
Cluster リソース
必須
変更不可
storage.lvpShare.storageClassName
必須。文字列。永続ボリュームの作成に使用する StorageClass を指定します。StorageClass はクラスタの作成時に作成されます。デフォルト値は local-shared
です。LVP 共有を構成する手順については、LVP 共有の構成 をご覧ください。
Cluster リソース
省略可
変更不可
type
必須。文字列。クラスタのタイプを指定します。標準デプロイモデルは、単一の管理クラスタと、管理クラスタが管理する 1 つ以上のユーザー クラスタで構成されます。Google Distributed Cloud は次のタイプのクラスタをサポートしています。
管理 - ユーザー クラスタの管理に使用されるクラスタ
ユーザー - ワークロードの実行に使用されるクラスタ。
ハイブリッド - 管理とワークロード両方に使用される単一のクラスタ。ユーザー クラスタの管理も可能
スタンドアロン - 自身を管理でき、ワークロードを実行できるが、他のユーザー クラスタの作成または管理はできない単一クラスタ。
クラスタタイプはクラスタの作成時に指定されます。更新やアップグレードでは変更できません。クラスタの作成方法については、クラスタの作成: 概要 をご覧ください。
使用できる値: admin
| user
| hybrid
| standalone
既存のクラスタの場合、この値は変更できません。
Cluster リソース
必須
変更不可
name
必須。文字列。通常、Namespace の名前は cluster-CLUSTER_NAME
のパターンを使用しますが、Google Distributed Cloud リリース 1.7.2 以降では、cluster-
接頭辞は必ずしも必須ではありません。
既存のクラスタの場合、この値は変更できません。
Namespace リソース
必須
変更不可
clusterName
文字列。必須。ノードプールを追加するクラスタの名前。関連付けられたクラスタと同じ Namespace にノードプール リソースを作成し、このフィールドでクラスタ名を参照します。詳細については、クラスタ内のノードプールの追加と削除 をご覧ください。
例:
apiVersion : baremetal.cluster.gke.io/v1
kind : NodePool
metadata :
name : node-pool-new
namespace : cluster-my-cluster
spec :
clusterName : my-cluster
nodes :
- address : 10.200.0.10
- address : 10.200.0.11
- address : 10.200.0.12
NodePool リソース
必須
変更不可
nodes
省略可。IP(IPv4)アドレスの配列。これにより、ワーカーノードのノードプールが定義されます。
NodePool リソース
省略可
変更可
nodes.address
省略可。文字列(IPv4 アドレス)。ワーカーノードのプールを構成するノードの 1 つ以上の IP アドレス。
NodePool リソース
省略可
変更可
kubeletConfig
省略可。このセクションには、コントロール プレーン ノードプール内のすべてのノードで kubelet を構成するためのフィールドが含まれています。
例:
apiVersion : baremetal.cluster.gke.io/v1
kind : NodePool
metadata :
name : node-pool-new
namespace : cluster-my-cluster
spec :
clusterName : my-cluster
...
kubeletConfig :
serializeImagePulls : true
registryBurst : 20
registryPullQPS : 10
NodePool リソース
省略可
変更可
kubeletConfig.registryBurst
省略可。整数(負ではない)リクエストの急増に対応するために、処理キューに追加できるイメージの pull リクエストの最大数を指定します。pull が開始すると、新しいリクエストをキューに追加できます。デフォルト値は 10 です。このフィールドは、registryBurst
kubelet 構成(v1beta1)オプションに対応しています。
registryPullQPS
の値は、この設定よりも優先されます。たとえば、デフォルトの設定では、最大 10 件の同時クエリのバーストが許可されていますが、デフォルトのレート(秒間クエリ数 5 件)で処理する必要があります。このバースト動作は、registryPullQPS
が 0
より大きい場合にのみ使用されます。
このフィールドは、クラスタを作成、更新、アップグレードするたびに設定できます。設定はクラスタのアップグレード後も保持されます。詳細については、kubelet イメージの pull 設定を構成する をご覧ください。
NodePool リソース
省略可
変更可
kubeletConfig.registryPullQPS
省略可。整数(負ではない)Container Registry イメージの pull に対するクエリの処理速度を秒間クエリ数(QPS)で指定します。registryPullQPS
が 0 より大きい値に設定されている場合、クエリレートは秒間クエリ数の数値に制限されます。registryPullQPS
が 0
に設定されている場合、クエリレートに制限はありません。デフォルト値は 5
です。
このフィールドは、registryPullQPS
kubelet 構成(v1beta1)オプションに対応しています。
このフィールドは、クラスタを作成、更新、アップグレードするたびに設定できます。設定はクラスタのアップグレード後も保持されます。詳細については、kubelet イメージの pull 設定を構成する をご覧ください。
NodePool リソース
省略可
変更可
kubeletConfig.serializeImagePulls
省略可。ブール値(true
| false
)。このフィールドは、Container Registry の pull が並列処理されるか、一度に 1 つずつ処理されるかを指定します。デフォルトは true
で、pull を 1 つずつ処理するように指定します。false
に設定すると、kubelet はイメージを並列で pull します。このフィールドは、serializeImagePulls
kubelet 構成(v1beta1)オプションに対応しています。
このフィールドは、クラスタを作成、更新、アップグレードするたびに設定できます。設定はクラスタのアップグレード後も保持されます。詳細については、kubelet イメージの pull 設定を構成する をご覧ください。
NodePool リソース
省略可
変更可
taints
省略可。オブジェクト。ノード taint を使用してノードをマークすると、スケジューラは特定の Pod でそのノードの使用を回避または禁止します。taint は、Key-Value ペアと関連付けられた効果で構成されます。key
と value
の値は taint を識別するための文字列であり、effect
の値はノードに対する Pod の処理方法を指定します。taints
オブジェクトには複数の taint を含めることができます。
effect
ラベルには、次のいずれかの値が設定されます。
NoSchedule
- 一致する toleration のない Pod はノードにスケジュールできません。
PreferNoSchedule
- ノードへの taint を許容しない Pod の配置は回避されますが、必須ではありません。
NoExecute
- taint を許容しない Pod は直ちに強制排除されます。taint を許容する Pod は強制排除されません。
Google Distributed Cloud の場合、baremetal.cluster.gke.io/label-taint-no-sync
アノテーションがクラスタに適用されていない限り、taint はノードプールのノードに調整されます。taint の詳細については、taint と toleration をご覧ください。
例:
taints :
- key : status
value : testpool
effect : NoSchedule
NodePool リソース
省略可
変更可
labels
省略可。マッピング(Key-Value ペア)。baremetal.cluster.gke.io/label-taint-no-sync
アノテーションがクラスタに適用されていない限り、ラベルはノードプールのノードに対して調整されます。ラベルの詳細については、ラベルとセレクタ をご覧ください。
NodePool リソース
省略可
変更可
upgradeStrategy
省略可。このセクションには、ワーカー ノードプール内のノードのアップグレード戦略を構成するための設定が含まれます。詳細については、並列アップグレード をご覧ください。注: コントロール プレーンまたはロードバランサのノードプールには、このセクションを追加しないでください。
NodePool リソース
省略可
変更可
upgradeStrategy.parallelUpgrade
省略可。このセクションには、ワーカーノード プールの並列ノード アップグレードを構成する設定が含まれます。デフォルトのクラスタ アップグレードでは、各クラスタノードが順番に(1 つずつ)アップグレードされます。ワーカーノード プールは、クラスタをアップグレードするときに複数のノードが同時にアップグレードするように構成できます。ノードを並行してアップグレードすると、クラスタのアップグレード時間が短くなります。特に、クラスタに数百のノードがある場合は、大幅に短縮されます。
ワーカーノード プールでは、同時にアップグレードするノードの数を指定し、アップグレード プロセス全体でワークロードを実行可能なノードの数の最小しきい値を設定できます。
詳細については、ノードのアップグレード戦略 をご覧ください。
apiVersion : baremetal.cluster.gke.io/v1
kind : NodePool
metadata :
name : np1
namespace : cluster-cluster1
spec :
clusterName : cluster1
nodes :
- address : 10.200.0.1
...
upgradeStrategy :
parallelUpgrade :
concurrentNodes : 2
minimumAvailableNodes : 5
NodePool リソース
省略可
変更可
upgradeStrategy.parallelUpgrade.concurrentNodes
省略可。整数(正)。デフォルト: 1
最大: 15
。デフォルト(1
)では、ノードが順次アップグレードされます。concurrentNodes
を 1 より大きい値に設定した場合は、このフィールドに並列でアップグレードするノードの数を指定します。concurrentNodes
には次の制約があります。
この値は、ノードプール内のノード数の 50% または固定数 15
よりも小さくする必要があります。たとえば、ノードプールに 20 個のノードがある場合、10
より大きい値は指定できません。ノードプールに 100 個のノードがある場合、指定可能な最大値は 15
です。
このフィールドを minimumAvailableNodes
フィールドとともに使用する場合、合計値は、ノードプール内のノードの総数を超えることはできません。たとえば、ノードプールに 20 個のノードがあり、minimumAvailableNodes
が 18
に設定されている場合、concurrentNodes
は 2
以下にする必要があります。
並列アップグレードは、Pod Disruption Budget(PDB) を考慮しません。ワークロードが中断の影響を受けやすい場合は、minimumAvailableNodes
を指定して、アップグレード プロセス全体を通して一定数のノードがワークロードを実行し続けるようにすることをおすすめします。詳細については、並列アップグレード をご覧ください。
NodePool リソース
省略可
変更可
upgradeStrategy.parallelUpgrade.minimumAvailableNodes
省略可。整数(負ではない)デフォルト: concurrentNodes
によって異なります。minimumAvailableNodes
のデフォルト値の詳細については、並列アップグレードのデフォルト をご覧ください。minimumAvailableNodes
を使用すると、アップグレード プロセス全体を通じて維持する必要があるノードプール内のノード数を指定できます。アクティブにアップグレードされているノードは、使用不可とみなされます。次の条件のいずれかに該当する場合、ノードは使用不可とみなされます。
1 個のノードがメンテナンス モード
1 個のノードが調整中
アップグレード中にノードが停止している
このフィールドを concurrentNodes
フィールドとともに使用する場合、合計値は、ノードプール内のノードの総数を超えることはできません。たとえば、ノードプールに 20 個のノードがあり、concurrentNodes
が 10
に設定されている場合、minimumAvailableNodes
は 10
以下にする必要があります。
minimumAvailableNodes
の値を大きくすると、Pod のスケジューリング時の容量の問題が最小限に抑えられるため、クラスタのアップグレード中のワークロードの保護に役立ちます。ただし、minimumAvailableNodes
の値が大きいと、ノードが利用可能になるまでアップグレードが待機するリスクが高くなります。詳細については、並列アップグレード をご覧ください。
NodePool リソース
省略可
変更可
privateRegistries
プレビュー
省略可。このセクションでは、ワークロード イメージに使用する非公開レジストリを指定します。この方法では、クラスタ構成ファイルの認証情報セクションで非公開レジストリを構成します。これは、ワーカー ノードプールのみがあるハイブリッド クラスタまたはスタンドアロン クラスタを対象としています。
非公開レジストリへのノードアクセスの構成の詳細については、非公開レジストリに対して認証を行うノードを構成する をご覧ください。
注: 便宜上、bmctl
は、クラスタ仕様外の privateRegistries
フィールド(認証情報 Key-Value ペアなど)を受け入れます。例については、プライベート レジストリの設定手順 をご覧ください。
例:
---
gcrKeyPath : baremetal/gcr.json
sshPrivateKeyPath : .ssh/id_rsa
...
privateRegistries :
- host : 10.200.0.2:5007
caCertPath : /root/cert.pem
pullCredentialConfigPath : /root/dockerconfig.json
...
認証情報
省略可
変更可
privateRegistries.host
プレビュー
文字列。このフィールドには、単一の非公開レジストリのホストとポートを指定します。ホストは、ドメイン名または IP アドレスで指定できます。http
または https
接頭辞は含めないでください。
ハイブリッド クラスタまたはスタンドアロン クラスタの非公開レジストリを指定する場合、host
フィールドは必須です。
例:
- host : 10.200.0.2:5007
認証情報
省略可
変更可
privateRegistries.caCertPath
プレビュー
省略可。文字列。CA 証明書ファイル(サーバールート CA)のパス(レジストリ サーバーがプライベート TLS 証明書を使用している場合)。ローカル レジストリでプライベート TLS 証明書が不要な場合、このフィールドは省略できます。
認証情報
省略可
変更可
privateRegistries.pullCredentialConfigPath
プレビュー
省略可。文字列。Docker CLI 構成ファイル (config.json
)のパス。Docker では、認証設定が構成ファイルに保存されます。このフィールドは、ノードレベルの非公開レジストリの使用にのみ適用されます。
ハイブリッド クラスタまたはスタンドアロン クラスタを構成して、認証が必要な非公開レジストリにノードがアクセスできるようにする場合は、pullCredentialConfigPath
フィールドを使用します。
認証情報
省略可
変更可
registryMirrors
省略可。このセクションを使用して、Container Registry(gcr.io
)の代わりにクラスタのインストールに使用するレジストリ ミラーを指定します。レジストリ ミラーの使用の詳細については、レジストリ ミラーを使用した Google Distributed Cloud のインストール をご覧ください。
注: 便宜上、bmctl
は、クラスタ仕様外の registryMirrors
フィールド(認証情報 Key-Value ペアなど)を受け入れます。例については、レジストリ ミラーの設定手順 をご覧ください。
例:
registryMirrors :
- endpoint : https://172.18.0.20:5000
caCertPath : /root/ca.crt
pullCredentialConfigPath : /root/.docker/config.json
hosts :
- somehost.io
- otherhost.io
レジストリ ミラー
省略可
変更可
registryMirrors.endpoint
文字列。ミラーのエンドポイント。レジストリ サーバーの IP アドレスとポート番号で構成されます。必要に応じて、レジストリ サーバーで、ルート Namespace ではなく独自の Namespace を使用できます。Namespace を使用しない場合、エンドポイントの形式は REGISTRY_IP :PORT
です。Namespace を使用する場合、エンドポイントの形式は REGISTRY_IP :PORT /v2/NAMESPACE
です。Namespace を指定する場合は、/v2
が必要です。
レジストリ ミラーを指定する場合、endpoint
フィールドは必須です。複数のミラー / エンドポイントを指定できます。
例:
- endpoint : https://172.18.0.20:5000/v2/test-namespace
レジストリ ミラー
省略可
変更可
registryMirrors.caCertPath
省略可。文字列。CA 証明書ファイル(サーバールート CA)のパス(レジストリ サーバーがプライベート TLS 証明書を使用している場合)。ローカル レジストリでプライベート TLS 証明書が不要な場合、このフィールドは省略できます。
レジストリ ミラー
省略可
変更可
registryMirrors.pullCredentialConfigPath
省略可。文字列。Docker CLI 構成ファイル (config.json
)のパス。Docker では、認証設定が構成ファイルに保存されます。このフィールドはレジストリ ミラーの使用にのみ適用されます。レジストリ サーバーで認証に Docker 構成ファイルが必要ない場合は、このフィールドを省略できます。
例:
registryMirrors :
- endpoint : https://172.18.0.20:5000
caCertPath : /root/ca.crt
pullCredentialConfigPath : /root/.docker/config.json
レジストリ ミラー
省略可
変更可
registryMirrors.hosts
省略可。特定のレジストリ ミラー(endpoint
)用としてローカルにミラーリングされたホストのドメイン名の配列。コンテナ ランタイムは、指定されたホストからのイメージの pull リクエストを検出すると、まず、ローカルのレジストリ ミラーを確認します。詳細については、レジストリ ミラーからクラスタを作成する をご覧ください。
例:
registryMirrors :
- endpoint : https://172.18.0.20:5000
caCertPath : /root/ca.crt
pullCredentialConfigPath : /root/.docker/config.json
hosts :
- somehost.io
- otherhost.io
レジストリ ミラー
省略可
変更可
認証情報
Google Distributed Cloud の bmctl
によって生成されるクラスタ構成ファイルには、ローカル ファイル システム内の認証情報と鍵ファイルのパスを指定するフィールドが含まれています。クラスタを相互に、かつ Google Cloud プロジェクトに接続するために必要な認証情報と鍵。
注: これらの Key-Value ペアフィールドは、Kubernetes クラスタのカスタム リソースの有効な要素ではありません。この形式は bmctl
でのみ認識され、標準の Kubernetes ツールでは認識されません。kubectl
を使用してクラスタに変更を適用する場合は、認証情報と鍵フィールドを削除します。
例:
gcrKeyPath : bmctl-workspace/.sa-keys/my-gcp-project-anthos-baremetal-gcr.json
sshPrivateKeyPath : /home/root-user/.ssh/id_rsa
gkeConnectAgentServiceAccountKeyPath : bmctl-workspace/.sa-keys/my-gcp-project-anthos-baremetal-connect.json
gkeConnectRegisterServiceAccountKeyPath : bmctl-workspace/.sa-keys/my-gcp-project-anthos-baremetal-register.json
cloudOperationsServiceAccountKeyPath : bmctl-workspace/.sa-keys/my-gcp-project-anthos-baremetal-cloud-ops.json
認証情報
省略可
変更可
gcrKeyPath
文字列。Container Registry サービス アカウント キーのパス。Container Registry サービス アカウント は、Google Cloud サービスを操作するときに Container Registry の代理として動作するサービス エージェントです。
認証情報
省略可
変更可
sshPrivateKeyPath
文字列。SSH 秘密鍵のパス。Node へのアクセスには SSH が必要です。
認証情報
省略可
変更可
gkeConnectAgentServiceAccountKeyPath
文字列。エージェントのサービス アカウント キーのパス。Google Distributed Cloud は、このサービス アカウントを使用して Google Distributed Cloud と Google Cloud の間の接続を維持します。
このサービス アカウントを構成する手順については、Connect で使用するサービス アカウントの構成 をご覧ください。
認証情報
省略可
変更可
gkeConnectRegisterServiceAccountKeyPath
文字列。登録用サービス アカウント キーのパス。Google Distributed Cloud は、このサービス アカウントを使用してユーザー クラスタを Google Cloud に登録します。
このサービス アカウントを構成する手順については、Connect で使用するサービス アカウントの構成 をご覧ください。
認証情報
省略可
変更可
cloudOperationsServiceAccountKeyPath
文字列。オペレーション サービス アカウント キーのパス。Google Distributed Cloud は、オペレーション サービス アカウントを使用して、Google Cloud Observability で認証を行い、Logging API と Monitoring API にアクセスします。ユーザー クラスタを除き、オペレーション サービス アカウント キーが必要です。ユーザー クラスタは、管理クラスタ(管理クラスタまたはハイブリッド)に指定された認証情報を使用します。
クラスタで Cloud Logging と Cloud Monitoring を無効にすることはできません。
このサービス アカウントを構成する手順については、サービス アカウントを構成する をご覧ください。
認証情報
必須
変更可
ipv4
IPv4 CIDR 範囲の構成を定義します。ClusterCidrConfig
リソースには、少なくとも ipv4
フィールドまたは ipv6
フィールドのいずれかを指定する必要があります。
ClusterCIDRConfig リソース
省略可
変更不可
ipv4.cidr
文字列。IPv4 ノードの CIDR ブロックを設定します。ノードに設定できるのは、各ファミリーの 1 つの範囲のみです。この CIDR ブロックは、Cluster
リソースに記述されている Pod CIDR と一致する必要があります。
例:
ipv4 :
cidr : "10.1.0.0/16"
ClusterCIDRConfig リソース
必須
変更不可
ipv4.perNodeMaskSize
整数。ノードの IPv4 CIDR ブロックのマスクサイズを定義します。たとえば、値 24
はネットマスク /24
に変換されます。ノードの CIDR ブロック ネットマスクが、kubelet がスケジューリングできる Pod の最大数より大きいことを確認します。これは、kubelet の --max-pods
フラグで定義されています。
ClusterCIDRConfig リソース
必須
変更不可
ipv6
IPv6 CIDR 範囲の構成を定義します。ClusterCidrConfig
リソースには、少なくとも ipv4
フィールドまたは ipv6
フィールドのいずれかを指定する必要があります。
ClusterCIDRConfig リソース
省略可
変更不可
ipv6.cidr
文字列。IPv6 ノードの CIDR ブロックを設定します。ノードに設定できるのは、各ファミリーの 1 つの範囲のみです。
例:
ipv6 :
cidr : "2620:0:1000:2631:3:10:3:0/112"
ClusterCIDRConfig リソース
必須
変更不可
ipv6.perNodeMaskSize
整数。ノードの IPv6 CIDR ブロックのマスクサイズを定義します。たとえば、値 120
はネットマスク /120
に変換されます。ノードの CIDR ブロック ネットマスクが、kubelet がスケジューリングできる Pod の最大数より大きいことを確認します。これは、kubelet の --max-pods
フラグで定義されています。
ClusterCIDRConfig リソース
必須
変更不可
nodeSelector.matchLabels
CIDR 構成を適用するノードを定義します。空のノードセレクタは、すべてのノードに適用されるデフォルトとして機能します。
例:
nodeSelector :
matchLabels :
baremetal.cluster.gke.io/node-pool : "workers"
ClusterCIDRConfig リソース
省略可
変更可