Cette procédure vous guide à travers la création d'une image de machine personnalisée Linux (Ubuntu) à utiliser lors de la création de clusters basés sur une classe sur vSphere. Elle est divisée dans les sections suivantes :
Pour créer une image de machine personnalisée Linux pour des clusters (hérités) basés sur un plan, reportez-vous à la section Images de machine personnalisées Linux (héritées). Pour plus d'informations sur les types de clusters dans Tanzu Kubernetes Grid, reportez-vous à la section Types de clusters de charge de travail.
Pour créer une image de machine personnalisée Linux, vous avez besoin des éléments suivants :
kubectl
govc
Dans cette étape, vous récupérez la version de l'image du système d'exploitation associée au fichier OVA Ubuntu par défaut pour la version de Kubernetes que vous souhaitez utiliser pour votre image personnalisée. Vous attribuerez cette version de l'image du système d'exploitation à votre image personnalisée dans l'étape Créer une image Linux ci-dessous.
Pour récupérer la version de l'image du système d'exploitation, effectuez l'une des opérations suivantes en fonction de votre cas d'utilisation :
Si vous disposez d'un cluster de gestion en cours d'exécution qui a été créé à l'aide de la version par défaut de Kubernetes pour la version actuelle de Tanzu Kubernetes Grid, vous pouvez récupérer la version de l'image du système d'exploitation à partir du cluster :
Définissez votre contexte kubectl
sur le cluster de gestion.
Dans la liste des TKr disponibles, choisissez la version de Tanzu Kubernetes (TKr) pour la version de Kubernetes que vous souhaitez utiliser pour votre image personnalisée. Par exemple, v1.24.10---vmware.1-tkg.1
. Pour répertorier les TKr disponibles, exécutez :
kubectl get tkr
Ouvrez la TKr et localisez la propriété osImages
. Cette propriété spécifie les noms des objets OSImage
associés à la TKr.
Localisez l'objet OSImage
et ouvrez-le pour le fichier OVA par défaut Ubuntu. Le nom de l'objet OSImage
correspond à l'un des noms osImages
de la TKr.
kubectl get osimages
Dans l'objet OSImage
du fichier OVA Ubuntu par défaut, recherchez la valeur de la propriété version
et enregistrez-la sous spec.image.ref
. Par exemple, v1.24.10+vmware.1-tkg.1-765d418b72c247c2310384e640ee075e
.
Si vous ne disposez pas d'un cluster de gestion en cours d'exécution qui a été créé à l'aide de la version par défaut de Kubernetes pour la version actuelle de Tanzu Kubernetes Grid, vous pouvez récupérer la version de l'image du système d'exploitation directement à partir du fichier OVA Ubuntu par défaut, localement ou à partir de vSphere :
Pour récupérer la version de l'image du système d'exploitation localement :
.ofv
.Dans le fichier .ofv
, recherchez la propriété VERSION
du fichier OVA et consignez sa valeur. Par exemple, v1.24.10+vmware.1-tkg.1-765d418b72c247c2310384e640ee075e
. La propriété est semblable à l'exemple suivant :
<Property ovf:key="VERSION" ovf:type="string" ovf:userConfigurable="false" ovf:value="v1.24.10+vmware.1-tkg.1-765d418b72c247c2310384e640ee075e"/>
Si vous avez déjà chargé le fichier OVA Ubuntu par défaut pour votre version de Kubernetes cible vers vSphere, vous pouvez également récupérer la version de l'image du système d'exploitation en inspectant les propriétés de la VM OVA dans l'interface utilisateur de vSphere ou à l'aide de l'interface de ligne de commande govc
. Pour utiliser cette méthode, récupérez la version de l'image du système d'exploitation avant de convertir la VM OVA en modèle.
Pour récupérer la version de l'image du système d'exploitation à partir de l'interface utilisateur de vSphere :
v1.24.10+vmware.1-tkg.1-765d418b72c247c2310384e640ee075e
.Pour récupérer la version de l'image du système d'exploitation à l'aide de l'interface de ligne de commande govc
, exécutez la commande govc vm.info
. Par exemple :
govc vm.info -json /dc0/vm/ubuntu-2004-kube-v1.24.10+vmware.1-tkg.1 | jq
Dans la sortie, recherchez "Id": "VERSION"
et enregistrez la valeur de la propriété "DefaultValue"
. Par exemple :
{
"Key": 10,
"ClassId": "",
"InstanceId": "",
"Id": "VERSION",
"Category": "Cluster API Provider (CAPI)",
"Label": "VERSION",
"Type": "string",
"TypeReference": "",
"UserConfigurable": false,
"DefaultValue": "v1.24.10+vmware.1-tkg.1-765d418b72c247c2310384e640ee075e",
"Value": "",
"Description": ""
}
Pour créer une image Linux :
Effectuez les étapes Créer une image Linux pour les clusters basés sur un plan sur vSphere, mais avec l'exception suivante. Lorsque vous définissez la chaîne de version de votre image personnalisée dans metadata.json
, définissez-la sur la valeur que vous avez récupérée à l'étape Récupérer la version de l'image de système d'exploitation ci-dessus, au lieu de v1.24.10+vmware.1-myorg.0
, comme recommandé dans la section Créer une image Linux. Par exemple :
{
"VERSION": "v1.24.10+vmware.1-tkg.1-765d418b72c247c2310384e640ee075e"
}
Lorsque vous avez terminé les étapes de la section Créer une image Linux, revenez à cette page et passez à la section Charger l'image Linux vers vSphere ci-dessous.
Lorsque vous avez terminé les étapes de la section Créer une image Linux, procédez comme suit :
Vous pouvez désormais déployer des clusters de gestion et de charge de travail à l'aide de votre image personnalisée. Pour obtenir des instructions, reportez-vous à la section :