REST Resource: projects.locations.vmwareClusters

リソース: VmwareCluster

VMware ユーザー クラスタを表すリソース。

##

JSON 表現
{
  "name": string,
  "adminClusterMembership": string,
  "description": string,
  "onPremVersion": string,
  "uid": string,
  "state": enum (State),
  "endpoint": string,
  "reconciling": boolean,
  "createTime": string,
  "updateTime": string,
  "localName": string,
  "etag": string,
  "annotations": {
    string: string,
    ...
  },
  "controlPlaneNode": {
    object (VmwareControlPlaneNodeConfig)
  },
  "antiAffinityGroups": {
    object (VmwareAAGConfig)
  },
  "storage": {
    object (VmwareStorageConfig)
  },
  "networkConfig": {
    object (VmwareNetworkConfig)
  },
  "loadBalancer": {
    object (VmwareLoadBalancerConfig)
  },
  "vcenter": {
    object (VmwareVCenterConfig)
  },
  "status": {
    object (ResourceStatus)
  },
  "dataplaneV2": {
    object (VmwareDataplaneV2Config)
  },
  "vmTrackingEnabled": boolean,
  "autoRepairConfig": {
    object (VmwareAutoRepairConfig)
  },
  "fleet": {
    object (Fleet)
  },
  "authorization": {
    object (Authorization)
  },
  "deleteTime": string,
  "validationCheck": {
    object (ValidationCheck)
  },
  "adminClusterName": string,
  "enableControlPlaneV2": boolean,
  "binaryAuthorization": {
    object (BinaryAuthorization)
  },
  "upgradePolicy": {
    object (VmwareClusterUpgradePolicy)
  },
  "disableBundledIngress": boolean
}
フィールド
name

string

変更不可。VMware ユーザー クラスタのリソース名。

adminClusterMembership

string

必須。この VMware ユーザー クラスタが属する管理クラスタ。これは、管理クラスタのフリート メンバーシップの完全なリソース名です。今後、管理クラスタが独自のリソースとしてモデル化される場合は、他のリソースタイプへの参照が許可される可能性があります。

description

string

この VMware ユーザー クラスタの人が読める形式の説明。

onPremVersion

string

必須。ユーザー クラスタ用の Anthos clusters on VMware のバージョン。

uid

string

出力専用。VMware ユーザー クラスタの固有識別子。

state

enum (State)

出力専用。VMware ユーザー クラスタの現在の状態。

endpoint

string

出力専用。VMware ユーザー クラスタの API サーバーの DNS 名。

reconciling

boolean

出力専用。設定されている場合は、現在 VMware ユーザー クラスタに対して処理中の変更があります。

createTime

string (Timestamp format)

出力専用。VMware ユーザー クラスタが作成された時刻。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

updateTime

string (Timestamp format)

出力専用。VMware ユーザー クラスタが最後に更新された時刻。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

localName

string

出力専用。関連付けられた管理クラスタの VMware OnPremUserCluster カスタム リソースのオブジェクト名。このフィールドは、既存のクラスタを API に登録するときに名前の競合をサポートするために使用されます。クラスタ登録の一部として使用される場合、このフィールドはリソース名の ID と異なります。新しいクラスタの場合、このフィールドはユーザーが指定したクラスタ名と一致し、リソース名の最後のコンポーネントに表示されます。変更はできません。

すべてのユーザーは、この名前を使用して gkectl または kubectl でクラスタにアクセスする必要があります。また、管理者クラスタ コントローラのログを表示すると、ローカル名が表示されます。

etag

string

このチェックサムは、他のフィールドの値に基づいてサーバーによって計算されます。これは、更新リクエストと削除リクエストで送信され、続行する前にクライアントが最新の値を持っていることを確認できます。クライアントがオプティミスティック同時実行制御で一貫した読み取り - 修正 - 書き込みを行えるようにします。

annotations

map (key: string, value: string)

VMware ユーザー クラスタのアノテーション。このフィールドには、Kubernetes アノテーションと同じ制限があります。結合されたすべてのキーと値の合計サイズは 256k に制限されています。キーには、2 つのセグメントとして接頭辞(省略可)と名前(必須)をスラッシュ(/)で区切って配置できます。接頭辞は DNS サブドメインにする必要があります。名前は 63 文字以下にしてください。先頭と末尾には英数字を使用し、先頭と末尾の間にはダッシュ(-)、アンダースコア(_)、ドット(.)、英数字を使用します。

"key": value ペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

controlPlaneNode

object (VmwareControlPlaneNodeConfig)

VMware ユーザー クラスタ コントロール プレーン ノードには、1 つまたは 3 つのレプリカが必要です。

antiAffinityGroups

object (VmwareAAGConfig)

AAGConfig は、VMware ユーザー クラスタノードをデータセンター内の少なくとも 3 つの物理ホストに分散させるかどうかを指定します。

storage

object (VmwareStorageConfig)

ストレージ構成。

networkConfig

object (VmwareNetworkConfig)

VMware ユーザー クラスタのネットワーク構成。

loadBalancer

object (VmwareLoadBalancerConfig)

ロードバランサの構成。

vcenter

object (VmwareVCenterConfig)

VmwareVCenterConfig は、ユーザー クラスタの vCenter 構成を指定します。指定しない場合、管理クラスタから継承されます。

status

object (ResourceStatus)

出力専用。クラスタの詳細な状態を表す ResourceStatus。

dataplaneV2

object (VmwareDataplaneV2Config)

VmwareDataplaneV2Config は、Dataplane V2 の構成を指定します。

vmTrackingEnabled

boolean

VM トラッキングを有効にします。

autoRepairConfig

object (VmwareAutoRepairConfig)

自動修復の構成。

fleet

object (Fleet)

出力専用。クラスタのフリート構成。

authorization

object (Authorization)

Anthos On-Prem API によって適用および管理される RBAC ポリシー。

deleteTime

string (Timestamp format)

出力専用。VMware ユーザー クラスタが削除された時刻。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

validationCheck

object (ValidationCheck)

出力専用。ValidationCheck は、プリフライト チェック ジョブの結果を表します。

adminClusterName

string

出力専用。このユーザー クラスタをホストする VMware 管理クラスタのリソース名。

enableControlPlaneV2

boolean

コントロール プレーン v2 を有効にします。デフォルトは false です。

binaryAuthorization

object (BinaryAuthorization)

Binary Authorization 関連の構成。

upgradePolicy

object (VmwareClusterUpgradePolicy)

クラスタのアップグレード ポリシーを指定します。

disableBundledIngress

boolean

バンドルされた Ingress を無効にします。

状態

VMware ユーザー クラスタのライフサイクル状態。

列挙型
STATE_UNSPECIFIED 未設定。
PROVISIONING PROVISIONING 状態は、クラスタが作成中であることを示します。
RUNNING RUNNING 状態は、クラスタが作成済みで、完全に使用可能であることを示します。
RECONCILING RECONCILING 状態は、クラスタが更新中であることを示します。引き続き利用できますが、パフォーマンスが低下する可能性があります。
STOPPING STOPPING 状態は、クラスタの削除中であることを示します。
ERROR ERROR 状態は、クラスタが破損して復元できない状態であることを示します。
DEGRADED DEGRADED 状態は、クラスタで完全な機能を復元するためにユーザーの操作が必要であることを示します。

VmwareControlPlaneNodeConfig

VMware ユーザー クラスタのコントロール プレーン ノード構成を指定します。

JSON 表現
{
  "cpus": string,
  "memory": string,
  "replicas": string,
  "autoResizeConfig": {
    object (VmwareAutoResizeConfig)
  },
  "vsphereConfig": {
    object (VmwareControlPlaneVsphereConfig)
  }
}
フィールド
cpus

string (int64 format)

このユーザー クラスタのコントロール プレーンとして機能する各管理クラスタノードの CPU 数。(デフォルト: 4 個の CPU)

memory

string (int64 format)

この VMware ユーザー クラスタのコントロール プレーンとして機能する各管理クラスタノードのメモリのメガバイト数(デフォルト: 8,192 MB のメモリ)。

replicas

string (int64 format)

このユーザー クラスタのコントロール プレーン ノードの数(デフォルト: 1 レプリカ)。

autoResizeConfig

object (VmwareAutoResizeConfig)

AutoResizeConfig は自動サイズ変更の構成を提供します。

vsphereConfig

object (VmwareControlPlaneVsphereConfig)

Vsphere 固有の構成。

VmwareControlPlaneVsphereConfig

コントロール プレーン ノードの構成を指定します。

JSON 表現
{
  "datastore": string,
  "storagePolicyName": string
}
フィールド
datastore

string

コントロール プレーン ノードで使用される Vsphere データストア。

storagePolicyName

string

コントロール プレーン ノードで使用される Vsphere ストレージ ポリシー。

VmwareStorageConfig

VMware ユーザー クラスタで vSphere CSI コンポーネントのデプロイ構成を指定します。

JSON 表現
{
  "vsphereCsiDisabled": boolean
}
フィールド
vsphereCsiDisabled

boolean

VMware ユーザー クラスタに vSphere CSI コンポーネントをデプロイするかどうか。デフォルトで有効になっています。

VmwareNetworkConfig

VMware ユーザー クラスタのネットワーク構成を指定します。

JSON 表現
{
  "serviceAddressCidrBlocks": [
    string
  ],
  "podAddressCidrBlocks": [
    string
  ],
  "vcenterNetwork": string,
  "hostConfig": {
    object (VmwareHostConfig)
  },
  "controlPlaneV2Config": {
    object (VmwareControlPlaneV2Config)
  },

  // Union field ip_configuration can be only one of the following:
  "staticIpConfig": {
    object (VmwareStaticIpConfig)
  },
  "dhcpIpConfig": {
    object (VmwareDhcpIpConfig)
  }
  // End of list of possible types for union field ip_configuration.
}
フィールド
serviceAddressCidrBlocks[]

string

必須。クラスタ内のすべてのサービスには、これらの範囲から RFC1918 IPv4 アドレスが割り当てられます。単一の範囲のみがサポートされます。作成後にこのフィールドを変更することはできません。

podAddressCidrBlocks[]

string

必須。クラスタ内のすべての Pod には、これらの範囲から RFC1918 IPv4 アドレスが割り当てられます。単一の範囲のみがサポートされます。作成後にこのフィールドを変更することはできません。

vcenterNetwork

string

vcenterNetwork は、vCenter ネットワーク名を指定します。管理クラスタから継承されます。

hostConfig

object (VmwareHostConfig)

ホストの IP アドレスに関係なく、一般的なネットワーク設定を表します。

controlPlaneV2Config

object (VmwareControlPlaneV2Config)

コントロール プレーン V2 モードの構成。

共用体フィールド ip_configuration。VMware ユーザー クラスタで使用される IP 構成のタイプ。ip_configuration は次のいずれかになります。
staticIpConfig

object (VmwareStaticIpConfig)

静的 IP 構成の構成設定。

dhcpIpConfig

object (VmwareDhcpIpConfig)

DHCP IP 構成の構成設定。

VmwareControlPlaneV2Config

コントロール プレーン V2 構成を指定します。

JSON 表現
{
  "controlPlaneIpBlock": {
    object (VmwareIpBlock)
  }
}
フィールド
controlPlaneIpBlock

object (VmwareIpBlock)

コントロール プレーン ノードの静的 IP アドレス。

VmwareLoadBalancerConfig

VMware ユーザー クラスタのロードバランサ構成を指定します。

JSON 表現
{
  "vipConfig": {
    object (VmwareVipConfig)
  },

  // Union field load_balancer_configuration can be only one of the following:
  "f5Config": {
    object (VmwareF5BigIpConfig)
  },
  "manualLbConfig": {
    object (VmwareManualLbConfig)
  },
  "seesawConfig": {
    object (VmwareSeesawConfig)
  },
  "metalLbConfig": {
    object (VmwareMetalLbConfig)
  }
  // End of list of possible types for union field load_balancer_configuration.
}
フィールド
vipConfig

object (VmwareVipConfig)

ロードバランサで使用される VIP。

共用体フィールド load_balancer_configuration。管理クラスタで使用されるロードバランサの構成。load_balancer_configuration は次のいずれかになります。
f5Config

object (VmwareF5BigIpConfig)

F5 Big IP 型ロードバランサの構成。

manualLbConfig

object (VmwareManualLbConfig)

手動で構成されたロードバランサ。

seesawConfig

object (VmwareSeesawConfig)

出力専用。Seesaw 型ロードバランサの構成。

metalLbConfig

object (VmwareMetalLbConfig)

MetalLB 型ロードバランサの構成。

VmwareVipConfig

VMware ユーザー クラスタのロードバランサの VIP 構成を指定します。

JSON 表現
{
  "controlPlaneVip": string,
  "ingressVip": string
}
フィールド
controlPlaneVip

string

このクラスタの Kubernetes API 用に以前に確保した VIP。

ingressVip

string

このクラスタへの上り(内向き)トラフィック用に以前に確保した VIP。

VmwareF5BigIpConfig

F5 BIG-IP ロードバランサの構成パラメータを表します。

JSON 表現
{
  "address": string,
  "partition": string,
  "snatPool": string
}
フィールド
address

string

ロードバランサの IP アドレス。

partition

string

ロードバランサで使用される既存のパーティション。通常、このパーティションは管理クラスタ用に作成されます(例: my-f5-admin-partition)。

snatPool

string

プール名。SNAT を使用している場合にのみ必要です。

VmwareManualLbConfig

既存の手動ロードバランサの構成パラメータを表します。手動ロードバランサの性質上、ユーザーによるフルマネージドとなることが想定されます。

重要: Anthos On-Prem API は ManualLB 構成を生成または更新しません。既存の構成を新しい VMware ユーザー クラスタにバインドすることのみが可能です。

JSON 表現
{
  "ingressHttpNodePort": integer,
  "ingressHttpsNodePort": integer,
  "controlPlaneNodePort": integer,
  "konnectivityServerNodePort": integer
}
フィールド
ingressHttpNodePort

integer

Ingress Service の http の NodePort。管理クラスタの Ingress サービスは、NodePort 型の Service として実装されます(例: 32527)。

ingressHttpsNodePort

integer

Ingress Service の https の NodePort。管理クラスタの Ingress サービスは、NodePort 型の Service として実装されます(例: 30139)。

controlPlaneNodePort

integer

コントロール プレーン サービスの NodePort。管理クラスタの Kubernetes API サーバーは、NodePort 型の Service として実装されます(例: 30968)。

konnectivityServerNodePort

integer

各 kube-apiserver Pod でサイドカーとして実行されている konnectivity サーバー サービスの NodePort(例: 30564)。

VmwareSeesawConfig

VmwareSeesawConfig は、既存の Seesaw ロードバランサの構成パラメータを表します。

重要: Anthos On-Prem API は Seesaw 構成を生成または更新しません。既存の構成を新しいユーザー クラスタにバインドすることのみが可能です。

重要: 既存の Seesaw ロードバランサを使用してユーザー クラスタを作成する場合は、「vmwareClusters.create」API メソッドを呼び出す前に、いくつかの準備手順を行う必要があります。まず、kubectl を使用してユーザー クラスタの名前空間を作成する必要があります。名前空間には次の命名規則を使用する必要があります。競合を解消するため、VmwareCluster.local_name を使用したかどうかに応じて、-gke-onprem-mgmt または -gke-onprem-mgmt を使用します。詳細については、VmwareCluster.local_name のドキュメントをご覧ください。名前空間を作成したら、kubectl を使用してシークレット リソースを作成する必要があります。このシークレットには、Seesaw 認証情報のコピーが含まれます。Secret は「user-cluster-creds」という名前にし、Seesaw の SSH 認証情報と Cert 認証情報を含める必要があります。認証情報は、次の名前でキー設定する必要があります: seesaw-ssh-private-key、seesaw-ssh-public-key、seesaw-ssh-ca-key、seesaw-ssh-ca-cert。

JSON 表現
{
  "group": string,
  "masterIp": string,
  "ipBlocks": [
    {
      object (VmwareIpBlock)
    }
  ],
  "enableHa": boolean,
  "vms": [
    string
  ],
  "stackdriverName": string
}
フィールド
group

string

必須。通常、Seesaw グループ名には seesaw-for-[clusterName] の形式を使用します。

masterIp

string

必須。MasterIP は、Seesaw グループのマスターによってアナウンスされる IP です。

ipBlocks[]

object (VmwareIpBlock)

必須。Seesaw ロードバランサで使用される IP ブロック

enableHa

boolean

高可用性の Seesaw ロードバランサを実現するために、2 つのロードバランサ VM を有効にします。

vms[]

string

この Seesaw グループ用に作成された VM の名前。

stackdriverName

string

Stackdriver で使用される名前。

VmwareMetalLbConfig

MetalLB ロードバランサの構成パラメータを表します。

JSON 表現
{
  "addressPools": [
    {
      object (VmwareAddressPool)
    }
  ]
}
フィールド
addressPools[]

object (VmwareAddressPool)

必須。AddressPools は、ロードバランサ タイプの Service で使用される重複しない IP プールのリストです。すべてのアドレスがロードバランサ ノードにルーティング可能である必要があります。IngressVIP をプールに含める必要があります。

VmwareAddressPool

ロードバランサで使用される IP プールを表します。

JSON 表現
{
  "pool": string,
  "addresses": [
    string
  ],
  "avoidBuggyIps": boolean,
  "manualAssign": boolean
}
フィールド
pool

string

必須。アドレスプールの名前。

addresses[]

string

必須。このプールに含まれるアドレス。各アドレスは、CIDR 形式(1.2.3.0/24)または範囲形式(1.2.3.1-1.2.3.5)のいずれかである必要があります。

avoidBuggyIps

boolean

true の場合、末尾が .0 または .255 の IP の使用を回避します。これにより、バグの多いコンシューマー デバイスが、これらの特別な IP アドレスの IPv4 トラフィックを誤って破棄するという問題を回避できます。

manualAssign

boolean

true の場合、IP アドレスが自動的に割り振られないようにします。

VmwareVCenterConfig

ユーザー クラスタの VMware VCenter の構成を表します。

JSON 表現
{
  "resourcePool": string,
  "datastore": string,
  "datacenter": string,
  "cluster": string,
  "folder": string,
  "caCertData": string,
  "address": string,
  "storagePolicyName": string
}
フィールド
resourcePool

string

ユーザー クラスタの vCenter リソースプールの名前。

datastore

string

ユーザー クラスタの vCenter データストアの名前。

datacenter

string

ユーザー クラスタの vCenter データセンターの名前。

cluster

string

ユーザー クラスタの vCenter クラスタの名前。

folder

string

ユーザー クラスタの vCenter フォルダの名前。

caCertData

string

SSL 検証に使用する vCenter CA 証明書の公開鍵が含まれています。

address

string

出力専用。vCenter の IP アドレス。

storagePolicyName

string

ユーザー クラスタの vCenter ストレージ ポリシーの名前。

VmwareDataplaneV2Config

Kubernetes ネットワーキング用に最適化されたデータプレーンである Dataplane V2 の構成が含まれています。詳細については、https://cloud.google.com/kubernetes-engine/docs/concepts/dataplane-v2 をご覧ください。

JSON 表現
{
  "dataplaneV2Enabled": boolean,
  "windowsDataplaneV2Enabled": boolean,
  "advancedNetworking": boolean,
  "forwardMode": string
}
フィールド
dataplaneV2Enabled

boolean

Dataplane V2 を有効にします。

windowsDataplaneV2Enabled

boolean

Windows ノードがあるクラスタで Dataplane V2 を有効にします。

advancedNetworking

boolean

高度なネットワーキングを有効にします。これには、dataplaneV2Enabled を true に設定する必要があります。

forwardMode

string

Dataplane v2 の ForwardMode を構成します。

VmwareClusterUpgradePolicy

VmwareClusterUpgradePolicy は、クラスタ アップグレード ポリシーを定義します。

JSON 表現
{
  "controlPlaneOnly": boolean
}
フィールド
controlPlaneOnly

boolean

アップグレードがコントロール プレーンのみに適用されるかどうかを制御します。

メソッド

create

指定されたプロジェクトとロケーションに新しい VMware ユーザークラスタを作成します。

delete

1 つの VMware クラスタを削除します。

enroll

既存の VMware ユーザー クラスタとそのノードプールを、指定されたプロジェクトとロケーションの Anthos On-Prem API に登録します。

get

1 つの VMware Cluster の詳細を取得します。

list

指定されたプロジェクトとロケーションの VMware Cluster を一覧表示します。

patch

1 つの VMware クラスタのパラメータを更新します。

queryVersionConfig

VMware ユーザー クラスタのバージョン構成をクエリします。