Modern private cloud platforms are evolving rapidly, and Kubernetes has become a core requirement for running modern applications. With VMware Cloud Foundation (VCF) and VMware vSphere Kubernetes Service (VKS), deploying Kubernetes clusters is no longer just about creating virtual machines. The complete deployment workflow is highly automated and driven through multiple orchestration phases. The deployment architecture shown in the image explains how a VKS cluster is created step-by-step, starting from topology generation all the way to worker node availability. Understanding these phases is very important for administrators because it helps in troubleshooting deployment issues, validating infrastructure readiness, and understanding how Kubernetes components interact with vSphere infrastructure. VKS Cluster Deployment Overview The deployment workflow is divided into four major phases: Phase 1 – Topology Custom Resource Generation Phase 2 – Infrastructure Provisioning Phase 3 – Control Plane Deployment Phase 3a – Control Plane Bootstrap Phase 3b – Control Plane VM Provisioning Phase 3c – Node Bootstrap Phase 4 – Worker Provisioning Each phase performs a dedicated function in preparing and deploying the Kubernetes cluster. Phase 1 – Topology Custom Resource Generation This is the starting point of the entire deployment workflow. In this phase, Kubernetes custom resources are generated to define the cluster topology and desired state. These resources are consumed later by Cluster API (CAPI) and vSphere infrastructure providers. The major components involved are: Cluster Machine Deployment Machine Set Kubeadm Control Plane vSphere Cluster Cluster Object The Cluster object acts as the primary Kubernetes resource representing the Kubernetes cluster being deployed. It defines: Cluster identity Networking configuration Kubernetes version Infrastructure references Control plane references This object becomes the central orchestration point for all subsequent deployment tasks. Machine Deployment The Machine Deployment resource defines the desired worker node deployment configuration. It controls: Number of worker nodes Worker node scaling Worker node upgrade strategy Rolling update behaviours This works similarly to a Kubernetes Deployment object but is used for virtual machine lifecycle management. Machine Set The Machine Set resource is automatically generated from the Machine Deployment. Responsibilities include: Creating worker node machines Maintaining desired node count Replacing failed worker nodes Ensuring node consistency The Machine Set continuously monitors worker node availability. Kubeadm Control Plane The Kubeadm Control Plane (KCP) object defines the Kubernetes control plane configuration. It includes: API server configuration etcd deployment settings Control plane node count Bootstrap specifications Kubernetes initialization parameters KCP is responsible for ensuring the Kubernetes control plane remains healthy and highly available. vSphere Cluster The vSphere Cluster object maps Kubernetes cluster deployment requirements to the underlying vSphere infrastructure. It provides: Datacenter references Datastore selection Cluster placement policies Network references Resource pool configuration This creates the bridge between Kubernetes orchestration and vSphere infrastructure resources. Phase 2 – Infrastructure Provisioning Once the cluster topology is defined, infrastructure provisioning begins. This phase prepares the required networking and VM infrastructure services before Kubernetes nodes are deployed. Key components: SubnetSet VMService Infra Ready State SubnetSet The SubnetSet resource allocates networking resources required by Kubernetes nodes. This includes: IP allocation Network attachment Pod network preparation Service network preparation Subnet readiness is extremely important because Kubernetes nodes cannot initialize without proper networking. VMService The VMService provides virtual machine lifecycle services for Kubernetes nodes. Responsibilities include: VM creation VM power operations Resource allocation Storage attachment VM metadata injection VMService integrates directly with the Supervisor environment and vSphere infrastructure. Infra Ready State After networking and infrastructure services are successfully configured, the deployment reaches the Infra Ready state. This indicates: Networking is operational Infrastructure services are reachable VM provisioning services are functional Deployment prerequisites are satisfied Only after this validation does the deployment proceed to control plane provisioning. Phase 3 – Control Plane Deployment This is one of the most critical stages in VKS cluster deployment. The Kubernetes control plane is responsible for cluster orchestration, API management, scheduling, and overall cluster health. Phase 3 is divided into three sub-phases: Phase 3a – Control Plane Bootstrap Phase 3b – Control Plane VM Provisioning Phase 3c – Node Bootstrap Phase 3a – Control Plane Bootstrap This phase initializes the Kubernetes control plane configuration. Key components: kubeadmConfig Machine CP Secret SubnetPort kubeadmConfig The kubeadmConfig resource contains bootstrap instructions used to initialize Kubernetes. It defines: Kubernetes version Cluster initialization commands Certificates API server settings kubelet configuration This configuration is later injected into the control plane VM. Machine CP The Machine CP object represents the control plane machine definition. It defines: VM sizing Placement policies Bootstrap references Infrastructure references This object acts as the orchestration layer for control plane VM creation. Secret The Secret resource stores sensitive deployment data. Examples include: Kubernetes certificates Authentication tokens kubeconfig files Encryption data Secrets are automatically consumed during bootstrap operations. SubnetPort The SubnetPort resource assigns networking interfaces and IP addresses to the control plane node. This ensures: Control plane VM connectivity API server reachability Cluster communication Phase 3b – Control Plane VM Provisioning After bootstrap configuration is ready, the actual control plane VM is deployed. Main components: vSphereMachine VirtualMachine vSphereMachine The vSphereMachine object defines the infrastructure-specific VM configuration. It contains: VM template references Datastore selection CPU and memory allocation Network attachment Storage policies This object interacts directly with vSphere APIs. Virtual Machine The Virtual Machine object represents the actual VM deployed in vSphere. Once powered on: kubeadm bootstrap begins Kubernetes binaries initialize etcd starts API server comes online At this stage, the Kubernetes control plane starts becoming operational. Phase 3c – Node Bootstrap This phase completes Kubernetes initialization. The major operation here is: CP Init Control Plane Initialization performs: etcd cluster initialization Kubernetes API startup Controller Manager startup Scheduler startup Certificate generation Cluster token creation Once completed: Kubernetes API becomes reachable Cluster management becomes available Worker node provisioning can begin This is effectively the point where the Kubernetes cluster becomes alive. Phase 4 – Worker Provisioning After the control plane is operational, worker nodes are deployed. Key components include: KubeadminConfig Machine Worker vSphereMachine VirtualMachine SubnetPort Available State Machine Worker The Machine Worker object defines worker node specifications. It controls: Worker node sizing Scaling policies Bootstrap references Infrastructure references Worker Node Bootstrap Worker nodes receive bootstrap configuration from the control plane using kubeadm join operations. This process includes: Fetching cluster certificates Registering with API server Installing kubelet Joining Kubernetes cluster vSphereMachine and VirtualMachine Just like control plane deployment, worker nodes are provisioned as virtual machines in vSphere. These VMs are: Attached to Kubernetes networking Configured using bootstrap metadata Registered into the Kubernetes cluster Available State Once worker nodes successfully join the cluster, the deployment reaches the Available state. This confirms: Control plane is healthy Worker nodes are operational Kubernetes services are functional Cluster is ready for workloads Understanding the Complete Workflow The complete deployment sequence can be summarized as: Cluster topology definitions are generated Infrastructure resources are prepared Control plane configuration is initialized Control plane VMs are deployed Kubernetes API becomes operational Worker nodes are provisioned Worker nodes join the cluster Cluster reaches available state Why These Deployment Phases Matter Understanding these phases is extremely useful for: Troubleshooting Administrators can identify exactly where deployment failures occur: Topology generation issues Infrastructure readiness problems VM provisioning failures Bootstrap failures Node join issues Operational Visibility Each phase provides visibility into: Infrastructure readiness Cluster initialization Networking dependencies VM lifecycle state Better Design Planning Understanding the workflow helps architects design: Scalable Kubernetes environments Reliable infrastructure layouts High availability configurations Efficient network planning The VKS cluster deployment workflow inside VMware Cloud Foundation is designed with a layered and highly automated architecture. Instead of manually deploying Kubernetes components, VKS orchestrates infrastructure provisioning, control plane initialization, networking, VM deployment, and worker node onboarding through a structured deployment pipeline. Each phase in the deployment process has a very specific responsibility, and together they create a reliable, scalable, and enterprise-ready Kubernetes platform on top of VMware infrastructure. For administrators working with VMware Cloud Foundation and VKS, understanding these deployment phases is essential for successful implementation, troubleshooting, and lifecycle management of Kubernetes environments.
Modern private cloud platforms are evolving rapidly, and Kubernetes has become a core requirement for running modern applications. With VMware Cloud Foundation (VCF) and VMware vSphere Kubernetes Service (VKS), deploying Kubernetes clusters is no longer just about creating virtual machines. The complete deployment workflow is highly automated and driven through multiple orchestration phases.
The deployment architecture shown in the image explains how
a VKS cluster is created step-by-step, starting from topology generation all
the way to worker node availability. Understanding these phases is very
important for administrators because it helps in troubleshooting deployment
issues, validating infrastructure readiness, and understanding how Kubernetes
components interact with vSphere infrastructure.
VKS Cluster Deployment Overview
The deployment workflow is divided into four major phases:
- Phase
1 – Topology Custom Resource Generation
- Phase
2 – Infrastructure Provisioning
- Phase
3 – Control Plane Deployment
- Phase
3a – Control Plane Bootstrap
- Phase
3b – Control Plane VM Provisioning
- Phase
3c – Node Bootstrap
- Phase
4 – Worker Provisioning
Each phase performs a dedicated function in preparing and
deploying the Kubernetes cluster.
Phase 1 – Topology Custom Resource Generation
This is the starting point of the entire deployment
workflow.
In this phase, Kubernetes custom resources are generated to
define the cluster topology and desired state. These resources are consumed
later by Cluster API (CAPI) and vSphere infrastructure providers.
The major components involved are:
- Cluster
- Machine
Deployment
- Machine
Set
- Kubeadm
Control Plane
- vSphere
Cluster
Cluster Object
The Cluster object acts as the primary Kubernetes resource
representing the Kubernetes cluster being deployed.
It defines:
- Cluster
identity
- Networking
configuration
- Kubernetes
version
- Infrastructure
references
- Control
plane references
This object becomes the central orchestration point for all
subsequent deployment tasks.
Machine Deployment
The Machine Deployment resource defines the desired worker
node deployment configuration.
It controls:
- Number
of worker nodes
- Worker
node scaling
- Worker
node upgrade strategy
- Rolling
update behaviours
This works similarly to a Kubernetes Deployment object but
is used for virtual machine lifecycle management.
Machine Set
The Machine Set resource is automatically generated from the
Machine Deployment.
Responsibilities include:
- Creating
worker node machines
- Maintaining
desired node count
- Replacing
failed worker nodes
- Ensuring
node consistency
The Machine Set continuously monitors worker node
availability.
Kubeadm Control Plane
The Kubeadm Control Plane (KCP) object defines the
Kubernetes control plane configuration.
It includes:
- API
server configuration
- etcd
deployment settings
- Control
plane node count
- Bootstrap
specifications
- Kubernetes
initialization parameters
KCP is responsible for ensuring the Kubernetes control plane
remains healthy and highly available.
vSphere Cluster
The vSphere Cluster object maps Kubernetes cluster
deployment requirements to the underlying vSphere infrastructure.
It provides:
- Datacenter
references
- Datastore
selection
- Cluster
placement policies
- Network
references
- Resource
pool configuration
This creates the bridge between Kubernetes orchestration and
vSphere infrastructure resources.
Phase 2 – Infrastructure Provisioning
Once the cluster topology is defined, infrastructure
provisioning begins.
This phase prepares the required networking and VM
infrastructure services before Kubernetes nodes are deployed.
Key components:
- SubnetSet
- VMService
- Infra
Ready State
SubnetSet
The SubnetSet resource allocates networking resources
required by Kubernetes nodes.
This includes:
- IP
allocation
- Network
attachment
- Pod
network preparation
- Service
network preparation
Subnet readiness is extremely important because Kubernetes
nodes cannot initialize without proper networking.
VMService
The VMService provides virtual machine lifecycle services
for Kubernetes nodes.
Responsibilities include:
- VM
creation
- VM
power operations
- Resource
allocation
- Storage
attachment
- VM
metadata injection
VMService integrates directly with the Supervisor
environment and vSphere infrastructure.
Infra Ready State
After networking and infrastructure services are
successfully configured, the deployment reaches the Infra Ready state.
This indicates:
- Networking
is operational
- Infrastructure
services are reachable
- VM
provisioning services are functional
- Deployment
prerequisites are satisfied
Only after this validation does the deployment proceed to
control plane provisioning.
Phase 3 – Control Plane Deployment
This is one of the most critical stages in VKS cluster
deployment.
The Kubernetes control plane is responsible for cluster
orchestration, API management, scheduling, and overall cluster health.
Phase 3 is divided into three sub-phases:
- Phase
3a – Control Plane Bootstrap
- Phase
3b – Control Plane VM Provisioning
- Phase
3c – Node Bootstrap
Phase 3a – Control Plane Bootstrap
This phase initializes the Kubernetes control plane
configuration.
Key components:
- kubeadmConfig
- Machine
CP
- Secret
- SubnetPort
kubeadmConfig
The kubeadmConfig resource contains bootstrap instructions
used to initialize Kubernetes.
It defines:
- Kubernetes
version
- Cluster
initialization commands
- Certificates
- API
server settings
- kubelet
configuration
This configuration is later injected into the control plane
VM.
Machine CP
The Machine CP object represents the control plane machine
definition.
It defines:
- VM
sizing
- Placement
policies
- Bootstrap
references
- Infrastructure
references
This object acts as the orchestration layer for control
plane VM creation.
Secret
The Secret resource stores sensitive deployment data.
Examples include:
- Kubernetes
certificates
- Authentication
tokens
- kubeconfig
files
- Encryption
data
Secrets are automatically consumed during bootstrap
operations.
SubnetPort
The SubnetPort resource assigns networking interfaces and IP
addresses to the control plane node.
This ensures:
- Control
plane VM connectivity
- API
server reachability
- Cluster
communication
Phase 3b – Control Plane VM Provisioning
After bootstrap configuration is ready, the actual control
plane VM is deployed.
Main components:
- vSphereMachine
- VirtualMachine
vSphereMachine
The vSphereMachine object defines the
infrastructure-specific VM configuration.
It contains:
- VM
template references
- Datastore
selection
- CPU
and memory allocation
- Network
attachment
- Storage
policies
This object interacts directly with vSphere APIs.
Virtual Machine
The Virtual Machine object represents the actual VM deployed
in vSphere.
Once powered on:
- kubeadm
bootstrap begins
- Kubernetes
binaries initialize
- etcd
starts
- API
server comes online
At this stage, the Kubernetes control plane starts becoming
operational.
Phase 3c – Node Bootstrap
This phase completes Kubernetes initialization.
The major operation here is:
CP Init
Control Plane Initialization performs:
- etcd
cluster initialization
- Kubernetes
API startup
- Controller
Manager startup
- Scheduler
startup
- Certificate
generation
- Cluster
token creation
Once completed:
- Kubernetes
API becomes reachable
- Cluster
management becomes available
- Worker
node provisioning can begin
This is effectively the point where the Kubernetes cluster
becomes alive.
Phase 4 – Worker Provisioning
After the control plane is operational, worker nodes are
deployed.
Key components include:
- KubeadminConfig
- Machine
Worker
- vSphereMachine
- VirtualMachine
- SubnetPort
- Available
State
Machine Worker
The Machine Worker object defines worker node
specifications.
It controls:
- Worker
node sizing
- Scaling
policies
- Bootstrap
references
- Infrastructure
references
Worker Node Bootstrap
Worker nodes receive bootstrap configuration from the
control plane using kubeadm join operations.
This process includes:
- Fetching
cluster certificates
- Registering
with API server
- Installing
kubelet
- Joining
Kubernetes cluster
vSphereMachine and VirtualMachine
Just like control plane deployment, worker nodes are
provisioned as virtual machines in vSphere.
These VMs are:
- Attached
to Kubernetes networking
- Configured
using bootstrap metadata
- Registered
into the Kubernetes cluster
Available State
Once worker nodes successfully join the cluster, the
deployment reaches the Available state.
This confirms:
- Control
plane is healthy
- Worker
nodes are operational
- Kubernetes
services are functional
- Cluster
is ready for workloads
Understanding the Complete Workflow
The complete deployment sequence can be summarized as:
- Cluster
topology definitions are generated
- Infrastructure
resources are prepared
- Control
plane configuration is initialized
- Control
plane VMs are deployed
- Kubernetes
API becomes operational
- Worker
nodes are provisioned
- Worker
nodes join the cluster
- Cluster
reaches available state
Why These Deployment Phases Matter
Understanding these phases is extremely useful for:
Troubleshooting
Administrators can identify exactly where deployment
failures occur:
- Topology
generation issues
- Infrastructure
readiness problems
- VM
provisioning failures
- Bootstrap
failures
- Node
join issues
Operational Visibility
Each phase provides visibility into:
- Infrastructure
readiness
- Cluster
initialization
- Networking
dependencies
- VM
lifecycle state
Better Design Planning
Understanding the workflow helps architects design:
- Scalable
Kubernetes environments
- Reliable
infrastructure layouts
- High
availability configurations
- Efficient
network planning
The VKS cluster deployment workflow inside VMware Cloud
Foundation is designed with a layered and highly automated architecture.
Instead of manually deploying Kubernetes components, VKS orchestrates
infrastructure provisioning, control plane initialization, networking, VM
deployment, and worker node onboarding through a structured deployment
pipeline.
Each phase in the deployment process has a very specific
responsibility, and together they create a reliable, scalable, and
enterprise-ready Kubernetes platform on top of VMware infrastructure.
For administrators working with VMware Cloud Foundation and
VKS, understanding these deployment phases is essential for successful
implementation, troubleshooting, and lifecycle management of Kubernetes
environments.








