View a markdown version of this page

VMwarecloud-initguestinfo-Konfiguration für on AL2023 VMware - Amazon Linux 2023

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

VMwarecloud-initguestinfo-Konfiguration für on AL2023 VMware

VMwareUmgebungen verfügen nicht über den Amazon EC2 Instance Meta Data Service (IMDS), sodass eine alternative Konfigurationsmethode erforderlich AL2023 ist. In diesem Abschnitt wird beschrieben, wie Sie einen alternativen Konfigurationsmechanismus für das seed.iso virtuelle CD-ROM-Laufwerk verwenden, das in VMware vSphere verfügbar ist.

Diese Konfigurationsmethode verwendet den VMware extraconfig Mechanismus zur Bereitstellung von Konfigurationsdaten für. cloud-init Für jeden der folgenden Schlüssel muss eine entsprechende keyname.encoding Eigenschaft angegeben werden.

Die folgenden Schlüssel können für den VMware extraconfig Mechanismus bereitgestellt werden.

guestinfo.metadata

JSON oder YAML mit cloud-init-Metadaten

guestinfo.userdata

Ein YAML-Dokument mit cloud-init-Benutzerdaten im cloud-config-Format.

guestinfo.vendordata (optional)

YAMLenthält cloud-init Herstellerdaten

Die entsprechenden Verschlüsselungseigenschaften (guestinfo.metadata.encoding, guestinfo.userdata.encoding undguestinfo.vendordata.encoding) enthalten evtl.:

base64

Der Inhalt der Eigenschaft ist base64-verschlüsselt.

gzip+base64

Der Inhalt der Eigenschaft wird nach der base64-Verschlüsselung mit gzip komprimiert.

Anmerkung

Die seed.iso Methode unterstützt eine separate (optionale) network-config Konfigurationsdatei. VMwareguestinfounterscheidet sich darin, wie die Netzwerkkonfiguration bereitgestellt wird. Zusätzliche Informationen finden Sie im folgenden Abschnitt.

Wenn eine explizite Netzwerkkonfiguration gewünscht wird, sollte sie in Form von zwei YAML- oder JSON-Eigenschaften in metadata aufgenommen werden:

network

Enthält die kodierte Netzwerkkonfiguration in JSON- oder YAML-Form.

network.encoding

Enthält die Kodierung der obigen Netzwerkkonfigurationsdaten. Die cloud-init-unterstützten Verschlüsselungen sind dieselben wie für die guestinfo-Daten: base64 und gzip+base64.

Beispiel Verwenden des VMware govc vSphere-CLI-Tools zum Übergeben der Konfiguration mit guestinfo
  1. Bereiten Sie die Konfigurationsdateien meta-datauser-data, und die optionalen network-config Konfigurationsdateien wie unter beschrieben vorNoCloud (seed.iso) cloud-init Konfiguration für Amazon Linux 2023 auf KVM und VMware.

  2. Konvertieren Sie die Konfigurationsdateien in Formate, die von verwendet werden können VMwareguestinfo.

    # '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"