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 アノテーションと同じ制限があります。すべてのキーと値を合わせた合計サイズは 256,000 に制限されています。キーには、スラッシュ(/)で区切られる、接頭辞(省略可)と名前(必須)の 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 を無効にします。

State

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)

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

memory

string (int64 format)

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

replicas

string (int64 format)

この VMware ユーザー クラスタのコントロール プレーン ノードの数。(デフォルト: 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 サーバー Service の NodePort(例: 30564)。

VmwareSeesawConfig

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

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

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

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

vms[]

string

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

stackdriverName

string

Stackdriver で使用される名前。

VmwareMetalLbConfig

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

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

object (VmwareAddressPool)

必須。AddressPools は、ロードバランサ タイプのサービスで使用される重複しない 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

単一の VMware クラスタを削除します。

enroll

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

get

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

list

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

patch

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

queryVersionConfig

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