VSphereMachineConfigPool [infrastructure.cluster.x-k8s.io/v1beta1]
- Description
- VSphereMachineConfigPool is the Schema for the vspheremachineconfigpools API.
- Type
object
Specification
.spec
- Description
- VSphereMachineConfigPoolSpec defines the desired state of VSphereMachineConfigPool.
- Type
object- Required
clusterRefconfigs
.spec.clusterRef
- Description
- ClusterRef references the CAPI Cluster (in the same namespace) whose VSphereCluster provides vCenter server, thumbprint, and credential chain (IdentityRef) for this pool's vCenter operations (e.g. disk reclaim). Required. Can only be changed when consumerRef is nil. The pool will not reconcile until the referenced Cluster and its VSphereCluster infrastructure are available.
- Type
object
.spec.configs
- Description
- Configs is the list of pre-defined machine configuration slots.
- Type
array
.spec.configs[]
- Description
- MachineConfigSlot defines a single machine configuration slot in the pool.
- Type
object- Required
hostnamenetwork
.spec.configs[].ephemeralDisks
- Description
- EphemeralDisks are non-persistent data disks. Unlike PersistentDisks they are created fresh (as empty disks) whenever the slot's VM is (re)created and deleted together with the VM: they do not participate in detach preservation, reclaim, or slot-release gating. Their SCSI unit number is assigned by the controller at clone time and observed in status.ephemeralDiskStatuses; it is not user-declared.
- Type
array
.spec.configs[].ephemeralDisks[]
- Description
- EphemeralDisk defines a non-persistent data disk that is created empty with the slot's VM and deleted together with it. It mirrors the guest-facing fields of PersistentDisk (size, placement, mount, format) but omits all persistence semantics: there is no UnitNumber spec field (the SCSI unit is controller-assigned at clone time and observed in status.ephemeralDiskStatuses), no VolumePath/DiskUUID backfill (the backing vmdk is always newly created), and no WipeFilesystem (a fresh disk is always empty and formatted from scratch).
- Type
object- Required
namesizeGiB
.spec.configs[].ephemeralDisks[].mountOptions
- Description
- MountOptions for the filesystem mount.
- Type
array
.spec.configs[].ephemeralDisks[].mountOptions[]
- Type
string
.spec.configs[].network
- Description
- Network describes the primary and additional network configurations for this slot.
- Type
object- Required
primary
.spec.configs[].network.additional
- Description
- Additional are the remaining network configurations attached after the primary device.
- Type
array
.spec.configs[].network.additional[]
- Description
- NetworkConfig defines the network configuration for a slot device.
- Type
object- Required
networkName
.spec.configs[].network.additional[].dns
- Description
- DNS nameservers
- Type
array
.spec.configs[].network.additional[].dns[]
- Type
string
.spec.configs[].network.primary
- Description
- Primary is the network configuration used for kubelet node IP registration.
- Type
object- Required
networkName
.spec.configs[].network.primary.dns
- Description
- DNS nameservers
- Type
array
.spec.configs[].network.primary.dns[]
- Type
string
.spec.configs[].persistentDisks
- Description
- PersistentDisks that survive VM deletion.
- Type
array
.spec.configs[].persistentDisks[]
- Description
- PersistentDisk defines a disk that survives VM deletion.
- Type
object- Required
namesizeGiB
.spec.configs[].persistentDisks[].mountOptions
- Description
- MountOptions for the filesystem mount.
- Type
array
.spec.configs[].persistentDisks[].mountOptions[]
- Type
string
.status
- Description
- VSphereMachineConfigPoolStatus defines the observed state of VSphereMachineConfigPool.
- Type
object
.status.conditions
- Description
- Conditions defines current state of the machine config pool.
- Type
array
.status.conditions[]
- Description
- Condition defines an observation of a Cluster API resource operational state.
- Type
object- Required
lastTransitionTimestatustype
.status.configStatuses
- Description
- ConfigStatuses tracks the state of each slot.
- Type
array
.status.configStatuses[]
- Description
- MachineConfigSlotStatus tracks the state of a single slot.
- Type
object- Required
hostnamestate
.status.configStatuses[].machineRef
- Description
- MachineRef is the reference to the Machine currently using this slot.
- Type
object
.status.configStatuses[].reclaimStatus
- Description
- ReclaimStatus tracks asynchronous reclaim progress for this slot.
- Type
object
.status.consumerRef
- Description
- ConsumerRef is the workload controller (KubeadmControlPlane or MachineDeployment) currently bound to this pool. Set automatically by the controller when a machine allocates a slot. Cleared when the pool becomes fully reusable.
- Type
object
.status.ephemeralDiskStatuses
- Description
- EphemeralDiskStatuses records the controller-observed SCSI unit number of each non-persistent disk, keyed by (hostname, disk name). The unit is assigned at clone time and reused (hydrated back onto the in-memory slot) on the next reconcile so the guest disk table can address the disk. Unlike PersistentDiskStatuses this carries no VolumePath/DiskUUID/Phase: ephemeral disks are recreated with the VM and never reclaimed.
- Type
array
.status.ephemeralDiskStatuses[]
- Description
- EphemeralDiskStatus records the controller-observed SCSI unit number of a single non-persistent disk, keyed by (Hostname, Name). It deliberately omits VolumePath/DiskUUID/Phase: an ephemeral disk's backing vmdk is always newly created and deleted with the VM, so there is nothing to reclaim and no lifecycle to track. The recorded UnitNumber is hydrated back onto the in-memory slot each reconcile so the guest disk table can address the disk.
- Type
object- Required
hostnamename
.status.persistentDiskStatuses
- Description
- PersistentDiskStatuses tracks the observed state of each persistent disk, keyed by (hostname, disk name). The controller backfills the vmdk path, disk UUID, and actually-assigned SCSI unit here instead of writing them back onto spec, and drives reclaim through the per-disk Phase.
- Type
array
.status.persistentDiskStatuses[]
- Description
- PersistentDiskStatus tracks the observed state of a single persistent disk. It replaces the controller-backfilled VolumePath/DiskUUID on spec and the per-slot ReclaimStatus, keyed by (Hostname, Name).
- Type
object- Required
hostnamename
.status.v1beta2
- Description
- v1beta2 groups all the fields that will be added or modified in VSphereMachineConfigPool's status with the V1Beta2 version.
- Type
object
.status.v1beta2.conditions
- Description
- conditions represents the observations of a VSphereMachineConfigPool's current state. Known condition types are Ready, MembersValid, MembersUnique, SlotAvailable, PersistentDisksReady, ClusterRefReady and VCenterAvailable.
- Type
array
.status.v1beta2.conditions[]
- Description
- Condition contains details for one aspect of the current state of this API Resource.
- Type
object- Required
lastTransitionTimemessagereasonstatustype
API Endpoints
The following API endpoints are available:
/apis/infrastructure.cluster.x-k8s.io/v1beta1/namespaces/{namespace}/vspheremachineconfigpoolsDELETE: delete collection of VSphereMachineConfigPoolGET: list objects of kind VSphereMachineConfigPoolPOST: create a new VSphereMachineConfigPool
/apis/infrastructure.cluster.x-k8s.io/v1beta1/namespaces/{namespace}/vspheremachineconfigpools/{name}DELETE: delete the specified VSphereMachineConfigPoolGET: read the specified VSphereMachineConfigPoolPATCH: partially update the specified VSphereMachineConfigPoolPUT: replace the specified VSphereMachineConfigPool
/apis/infrastructure.cluster.x-k8s.io/v1beta1/namespaces/{namespace}/vspheremachineconfigpools/{name}/statusGET: read status of the specified VSphereMachineConfigPoolPATCH: partially update status of the specified VSphereMachineConfigPoolPUT: replace status of the specified VSphereMachineConfigPool
/apis/infrastructure.cluster.x-k8s.io/v1beta1/namespaces/{namespace}/vspheremachineconfigpools
- HTTP method
DELETE- Description
- delete collection of VSphereMachineConfigPool
- HTTP responses
- HTTP method
GET- Description
- list objects of kind VSphereMachineConfigPool
- HTTP responses
- HTTP method
POST- Description
- create a new VSphereMachineConfigPool
- Query parameters
- Body parameters
- HTTP responses
/apis/infrastructure.cluster.x-k8s.io/v1beta1/namespaces/{namespace}/vspheremachineconfigpools/{name}
- HTTP method
DELETE- Description
- delete the specified VSphereMachineConfigPool
- Query parameters
- HTTP responses
- HTTP method
GET- Description
- read the specified VSphereMachineConfigPool
- HTTP responses
- HTTP method
PATCH- Description
- partially update the specified VSphereMachineConfigPool
- Query parameters
- HTTP responses
- HTTP method
PUT- Description
- replace the specified VSphereMachineConfigPool
- Query parameters
- Body parameters
- HTTP responses
/apis/infrastructure.cluster.x-k8s.io/v1beta1/namespaces/{namespace}/vspheremachineconfigpools/{name}/status
- HTTP method
GET- Description
- read status of the specified VSphereMachineConfigPool
- HTTP responses
- HTTP method
PATCH- Description
- partially update status of the specified VSphereMachineConfigPool
- Query parameters
- HTTP responses
- HTTP method
PUT- Description
- replace status of the specified VSphereMachineConfigPool
- Query parameters
- Body parameters
- HTTP responses