Las clases de máquina virtual deben estar asociadas a la instancia de espacio de nombres de vSphere donde se aprovisionan los clústeres de servicio TKG.
Error de enlace de clase de máquina virtual
Si intenta aprovisionar un clúster de TKGS mediante una o varias clases de máquina virtual que no agregó al
espacio de nombres de vSphere de destino, se mostrará el error
VirtualMachineClassBindingNotFound
, cuyo ejemplo se muestra a continuación.
conditions: - lastTransitionTime: "2021-04-25T02:50:58Z" message: 1 of 2 completed reason: VirtualMachineClassBindingNotFound @ Machine/test-cluster severity: Error status: "False" type: ControlPlaneReady - lastTransitionTime: "2021-04-25T02:49:21Z" message: 0/1 Control Plane Node(s) healthy. 0/2 Worker Node(s) healthy reason: WaitingForNodesHealthy severity: Info status: "False" type: NodesHealthy
Para corregir el error, configure espacio de nombres de vSphere con las clases de máquina virtual que desea utilizar para el clúster de servicio TKG. Ejecute el comando
para ver las clases de máquinas virtuales asociadas con espacio de nombres de vSphere.kubectl get virtualmachineclass
Nota: El comando
kubectl get virtualmachineclassbindings
quedó obsoleto a partir de vSphere 8 U3. El comando correcto que se debe utilizar es
virtualmachineclass
.
Advertencia: El comando
kubectl get virtualmachineclasses
devuelve todas las clases de máquina virtual disponibles en
Supervisor. Sin embargo, debido a que solo se pueden utilizar las clases de máquina virtual que están asociadas con la instancia de
espacio de nombres de vSphere de destino para aprovisionar un clúster, la versión plural del nombre es de solo información y no se puede confiar en ella al aprovisionar.