Les classes de machine virtuelle doivent être associées à l'Espace de noms vSphere lorsque vous provisionnez des clusters de service TKG.
Erreur de liaison de classe de machine virtuelle
Si vous tentez de provisionner un cluster TKGS à l'aide d'une ou de plusieurs classes de machine virtuelle que vous n'avez pas ajoutées à l'
Espace de noms vSphere cible, vous recevez l'erreur
VirtualMachineClassBindingNotFound
, dont un exemple est présenté ci-dessous.
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
Pour corriger l'erreur, configurez l'Espace de noms vSphere avec les classes de machine virtuelle que vous souhaitez utiliser pour votre cluster de service TKG. Exécutez la commande
pour afficher les classes de machine virtuelle associées à l'Espace de noms vSphere.kubectl get virtualmachineclass
Note : La commande
kubectl get virtualmachineclassbindings
est obsolète à partir de vSphere 8 U3. La commande correcte à utiliser est
virtualmachineclass
.
Avertissement : La commande
kubectl get virtualmachineclasses
renvoie toutes les classes de machine virtuelle disponibles sur le
Superviseur. Cependant, comme vous ne pouvez utiliser que les classes de machine virtuelle associées à l'
Espace de noms vSphere cible pour provisionner un cluster, la version plurielle du nom est uniquement informative et ne peut pas être utilisée lors du provisionnement.