

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# VMware`cloud-init`configuration de guestinfo pour on AL2023 VMware
<a name="vmware-guestinfo"></a>

 VMwareles environnements ne disposent pas du [service de métadonnées d'instance Amazon EC2 (IMDS)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-service), une autre méthode de configuration AL2023 est donc requise. Cette section décrit comment utiliser un mécanisme de configuration alternatif au lecteur de CD-ROM `seed.iso` virtuel disponible dans VMware vSphere. 

 Cette méthode de configuration utilise le VMware `extraconfig` mécanisme pour fournir des données de configuration à`cloud-init`. Pour chacune des clés suivantes, une **{{keyname}}.encoding** propriété correspondante doit être fournie. 

 Les clés suivantes peuvent être fournies au VMware `extraconfig` mécanisme. 

** `guestinfo.metadata` **  
 JSON ou YAML contenant des métadonnées `cloud-init` 

** `guestinfo.userdata` **  
 Un document YAML contenant des données utilisateur `cloud-init` au format `cloud-config`. 

** `guestinfo.vendordata` (facultatif) **  
 YAMLcontenant les données du `cloud-init` fournisseur 

 Les propriétés d'encodage correspondantes (`guestinfo.metadata.encoding`, `guestinfo.userdata.encoding` et `guestinfo.vendordata.encoding`) peuvent contenir : 

** `base64` **  
 Le contenu de la propriété est encodé en `base64`. 

** `gzip+base64` **  
 Le contenu de la propriété est compressé avec `gzip` après l'encodage en `base64`. 

**Note**  
 La `seed.iso` méthode prend en charge un fichier de `network-config` configuration distinct (facultatif). VMware`guestinfo`diffère dans la manière dont la configuration réseau est fournie. Des informations supplémentaires sont fournies dans la section suivante. 

 Si une configuration réseau explicite est souhaitée, elle doit être intégrée dans `metadata` sous la forme de deux propriétés YAML ou JSON : 

** `network` **  
 Contient la configuration réseau codée au format JSON ou YAML. 

** `network.encoding` **  
 Contient le codage des données de configuration réseau ci-dessus. Les encodages `cloud-init` pris en charge sont les mêmes que pour les données `guestinfo` : `base64` et `gzip+base64`. 

**Example Utilisation de l'outil VMware vSphere **govc** CLI pour transmettre la configuration avec `guestinfo`**  

1.  Préparez les fichiers de `network-config` configuration `meta-data``user-data`, et facultatifs, comme décrit dans[NoCloud (`seed.iso`) `cloud-init` configuration pour Amazon Linux 2023 sur KVM et VMware](seed-iso.md). 

1.  Convertissez les fichiers de configuration dans des formats utilisables par VMware`guestinfo`. 

   ```
   # 'meta-data', `user-data` and `network-config` are the configuration
   # files in the same format that would be used by a NoCloud (seed.iso)
   # data source, read-them and convert them to VMware guestinfo
   #
   # The VM_NAME variable is assumed to be set to the name of the VM
   # It is assumed that the necessary govc environment (credentials etc...) are already set
   
   metadata=$(cat "meta-data")
   userdata=$(cat "user-data")
   if [ -e "network-config" ] ; then
       # We need to embed the network config inside the meta-data
       netconf=$(base64 -w0 "network-config")
       metadata=$(printf "%s\nnetwork: %s\nnetwork.encoding: base64" "$metadata" "$netconf")
   fi
   metadata=$(base64 -w0 <<< "$metadata")
   govc vm.change -vm "$VM_NAME" \
       -e guestinfo.metadata="$metadata" \
       -e guestinfo.metadata.encoding="base64"
   userdata=$(base64 -w0 <<< "$userdata")
   govc vm.change -vm "$VM_NAME" \
       -e guestinfo.userdata="$userdata" \
       -e guestinfo.userdata.encoding="base64"
   ```