Ce document a été traduit à l'aide d'une technologie de traduction automatique. Bien que nous nous efforcions de fournir des traductions exactes, nous ne fournissons aucune garantie quant à l'exhaustivité, l'exactitude ou la fiabilité du contenu traduit. En cas de divergence, la version originale anglaise prévaut et fait foi.

Création d’un modèle de machine virtuelle VMware vSphere

Créer des machines virtuelles de manière répétable et fiable peut souvent être difficile. VMware vSphere offre la possibilité de créer une VM qui peut ensuite être convertie en modèle. Le modèle peut ensuite être utilisé pour créer des VMs configurées de manière identique. Rancher exploite cette capacité pour créer des nœuds RKE/K3s identiques.

Pour tirer parti du modèle afin de créer de nouvelles VMs, Rancher a des exigences spécifiques que la VM doit avoir préinstallées. Après avoir configuré la VM avec ces exigences, vous devez préparer la VM avant de créer le modèle. Enfin, une fois la préparation terminée, la VM peut être convertie en modèle et déplacée dans une bibliothèque de contenu.

Configuration requise

Des outils spécifiques sont nécessaires pour que les VMs Linux et Windows soient utilisables par le pilote de nœud vSphere. La dépendance la plus critique est cloud-init pour Linux et cloudbase-init pour Windows. Ces deux outils sont utilisés pour provisionner les VMs en configurant le nom d’hôte et en mettant en place l’accès SSH ainsi que l’utilisateur par défaut de Rancher. Les utilisateurs peuvent ajouter plus de contenu à ceux-ci si nécessaire pour d’autres configurations. De plus, d’autres exigences sont listées ci-dessous pour référence.

Si vous avez défini des règles spécifiques pour la passerelle de périmètre de sécurité ou une configuration particulière, vous devrez les ajouter à la VM avant de créer un modèle.

Dépendances Linux

Les paquets qui doivent être installés sur le modèle sont listés ci-dessous. Ces derniers auront des noms légèrement différents selon la distribution ; par exemple, certaines distributions livrent ces dépendances par défaut. Le provisionneur de cluster installera automatiquement les dépendances requises pour Kubernetes. Les dépendances listées ci-dessous sont nécessaires au fonctionnement du provisionneur de cluster Rancher (pas pour Kubernetes) :

  • curl

  • wget

  • git

  • net-tools

  • unzip

  • apparmor-parser

  • ca-certificates

  • cloud-init

  • cloud-guest-utils

  • cloud-image-utils

  • growpart (partie de cloud-guest-utils)

  • cloud-initramfs-growroot

  • open-iscsi

  • openssh-server

  • open-vm-tools

Dépendances Windows

La liste des paquets à installer sur le modèle est la suivante :

Création d’un modèle

Vous pouvez soit créer manuellement votre VM, soit utiliser d’autres alternatives pour créer votre VM.

Création manuelle

  1. Créez manuellement votre VM en suivant ces instructions de VMware. Une fois que vous avez une VM en cours d’exécution, vous pouvez installer manuellement les dépendances énumérées ci-dessus pour configurer correctement la VM pour le pilote de nœud vSphere.

  2. Personnalisez selon vos besoins en fonction de votre environnement et de vos exigences spécifiques.

  3. Procédez à la préparation finale avant de créer votre modèle.

Alternatives à la création manuelle

D’autres options pour créer des machines virtuelles sont énumérées ci-dessous :

Packer est une alternative fréquemment utilisée. Référez-vous à cette référence pour des exemples de son utilisation avec vSphere.

Préparation de votre machine virtuelle

Après avoir créé une machine virtuelle avec toutes les dépendances requises (et tout élément supplémentaire nécessaire), vous devez effectuer l’étape la plus critique suivante : préparer la machine virtuelle pour qu’elle soit transformée en modèle. Cette préparation réinitialisera des données critiques telles que le nom d’hôte de la machine virtuelle, les adresses IP, etc., pour empêcher que ces informations ne soient transférées dans une nouvelle machine virtuelle. Si vous ne parvenez pas à effectuer cette étape, vous pourriez créer une machine virtuelle avec le même nom d’hôte, adresse IP, etc.

Notez que ces étapes préparatoires diffèrent entre Linux et Windows.

Préparation de Linux

Les commandes ci-dessous réinitialiseront votre machine virtuelle sous Linux :

# Cleaning logs.
if [ -f /var/log/audit/audit.log ]; then
  cat /dev/null > /var/log/audit/audit.log
fi
if [ -f /var/log/wtmp ]; then
  cat /dev/null > /var/log/wtmp
fi
if [ -f /var/log/lastlog ]; then
  cat /dev/null > /var/log/lastlog
fi

# Cleaning udev rules.
if [ -f /etc/udev/rules.d/70-persistent-net.rules ]; then
  rm /etc/udev/rules.d/70-persistent-net.rules
fi

# Cleaning the /tmp directories
rm -rf /tmp/*
rm -rf /var/tmp/*

# Cleaning the SSH host keys
rm -f /etc/ssh/ssh_host_*

# Cleaning the machine-id
truncate -s 0 /etc/machine-id
rm /var/lib/dbus/machine-id
ln -s /etc/machine-id /var/lib/dbus/machine-id

# Cleaning the shell history
unset HISTFILE
history -cw
echo > ~/.bash_history
rm -fr /root/.bash_history

# Truncating hostname, hosts, resolv.conf and setting hostname to localhost
truncate -s 0 /etc/{hostname,hosts,resolv.conf}
hostnamectl set-hostname localhost

# Clean cloud-init
cloud-init clean -s -l

Préparation de Windows

Windows dispose d’un utilitaire appelé sysprep qui est utilisé pour généraliser une image et réinitialiser les mêmes éléments listés ci-dessus pour Linux. La commande est la suivante :

sysprep.exe /generalize /shutdown /oobe

Conversion en modèle

  1. Éteignez et arrêtez la machine virtuelle.

  2. Cliquez avec le bouton droit sur la machine virtuelle dans la liste d’inventaire et sélectionnez Modèle.

  3. Cliquez sur Convertir en modèle.

Résultat : Une fois le processus terminé, un modèle sera disponible pour utilisation.

Pour des informations supplémentaires sur la conversion d’une VM en modèle, consultez le guide VMware.

Passage à une bibliothèque de contenu

Rancher a la capacité d’utiliser des modèles fournis par une bibliothèque de contenu. Les bibliothèques de contenu stockent et gèrent le contenu au sein de vSphere, et elles offrent également la possibilité de publier et de partager ce contenu.

Voici quelques liens utiles sur les bibliothèques de contenu :

Autres ressources

Voici une liste de ressources supplémentaires qui peuvent être utiles :