REST Resource: projects.locations.vmwareClusters.vmwareNodePools

Resource: VmwareNodePool

Resource VmwareNodePool represents a VMware node pool.

##

JSON representation
{
  "name": string,
  "displayName": string,
  "uid": string,
  "state": enum (State),
  "reconciling": boolean,
  "createTime": string,
  "updateTime": string,
  "deleteTime": string,
  "etag": string,
  "annotations": {
    string: string,
    ...
  },
  "nodePoolAutoscaling": {
    object (VmwareNodePoolAutoscalingConfig)
  },
  "config": {
    object (VmwareNodeConfig)
  },
  "status": {
    object (ResourceStatus)
  },
  "onPremVersion": string
}
Fields
name

string

Immutable. The resource name of this node pool.

displayName

string

The display name for the node pool.

uid

string

Output only. The unique identifier of the node pool.

state

enum (State)

Output only. The current state of the node pool.

reconciling

boolean

Output only. If set, there are currently changes in flight to the node pool.

createTime

string (Timestamp format)

Output only. The time at which this node pool was created.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

Output only. The time at which this node pool was last updated.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

deleteTime

string (Timestamp format)

Output only. The time at which this node pool was deleted. If the resource is not deleted, this must be empty

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

etag

string

This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. Allows clients to perform consistent read-modify-writes through optimistic concurrency control.

annotations

map (key: string, value: string)

Annotations on the node pool. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Key can have 2 segments: prefix (optional) and name (required), separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

nodePoolAutoscaling

object (VmwareNodePoolAutoscalingConfig)

Node pool autoscaling config for the node pool.

config

object (VmwareNodeConfig)

Required. The node configuration of the node pool.

status

object (ResourceStatus)

Output only. ResourceStatus representing the detailed VMware node pool state.

onPremVersion

string

Anthos version for the node pool. Defaults to the user cluster version.

State

The lifecycle state of the node pool.

Enums
STATE_UNSPECIFIED Not set.
PROVISIONING The PROVISIONING state indicates the node pool is being created.
RUNNING The RUNNING state indicates the node pool has been created and is fully usable.
RECONCILING The RECONCILING state indicates that the node pool is being updated. It remains available, but potentially with degraded performance.
STOPPING The STOPPING state indicates the cluster is being deleted
ERROR The ERROR state indicates the node pool is in a broken unrecoverable state.
DEGRADED The DEGRADED state indicates the node pool requires user action to restore full functionality.

VmwareNodePoolAutoscalingConfig

NodePoolAutoscaling config for the NodePool to allow for the kubernetes to scale NodePool.

JSON representation
{
  "minReplicas": integer,
  "maxReplicas": integer
}
Fields
minReplicas

integer

Minimum number of replicas in the NodePool.

maxReplicas

integer

Maximum number of replicas in the NodePool.

VmwareNodeConfig

Parameters that describe the configuration of all nodes within a given node pool.

JSON representation
{
  "cpus": string,
  "memoryMb": string,
  "replicas": string,
  "imageType": string,
  "image": string,
  "bootDiskSizeGb": string,
  "taints": [
    {
      object (NodeTaint)
    }
  ],
  "labels": {
    string: string,
    ...
  },
  "vsphereConfig": {
    object (VmwareVsphereConfig)
  },
  "enableLoadBalancer": boolean
}
Fields
cpus

string (int64 format)

The number of CPUs for each node in the node pool.

memoryMb

string (int64 format)

The megabytes of memory for each node in the node pool.

replicas

string (int64 format)

The number of nodes in the node pool.

imageType

string

Required. The OS image to be used for each node in a node pool. Currently cos, ubuntu, ubuntu_containerd and windows are supported.

image

string

The OS image name in vCenter, only valid when using Windows.

bootDiskSizeGb

string (int64 format)

VMware disk size to be used during creation.

taints[]

object (NodeTaint)

The initial taints assigned to nodes of this node pool.

labels

map (key: string, value: string)

The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

vsphereConfig

object (VmwareVsphereConfig)

Specifies the vSphere config for node pool.

enableLoadBalancer

boolean

Allow node pool traffic to be load balanced. Only works for clusters with MetalLB load balancers.

VmwareVsphereConfig

VmwareVsphereConfig represents configuration for the VMware VCenter for node pool.

JSON representation
{
  "datastore": string,
  "tags": [
    {
      object (VmwareVsphereTag)
    }
  ],
  "hostGroups": [
    string
  ]
}
Fields
datastore

string

The name of the vCenter datastore. Inherited from the user cluster.

tags[]

object (VmwareVsphereTag)

Tags to apply to VMs.

hostGroups[]

string

Vsphere host groups to apply to all VMs in the node pool

VmwareVsphereTag

VmwareVsphereTag describes a vSphere tag to be placed on VMs in the node pool. For more information, see https://docs.vmware.com/en/VMware-vSphere/7.0/com.vmware.vsphere.vcenterhost.doc/GUID-E8E854DD-AA97-4E0C-8419-CE84F93C4058.html

JSON representation
{
  "category": string,
  "tag": string
}
Fields
category

string

The Vsphere tag category.

tag

string

The Vsphere tag name.

Methods

create

Creates a new VMware node pool in a given project, location and VMWare cluster.

delete

Deletes a single VMware node pool.

enroll

Enrolls a VMware node pool to Anthos On-Prem API

get

Gets details of a single VMware node pool.

list

Lists VMware node pools in a given project, location and VMWare cluster.

patch

Updates the parameters of a single VMware node pool.