Die Ubuntu-Multi-IP-Konfiguration schlägt nach dem Neustart fehl: Das Hinzufügen mehrerer IPs wird nicht wirksam und nach dem Neustart wird standardmäßig die ursprüngliche IP verwendet

Ubuntu Netplan 50-cloud-init.yaml Multi-IP-Konfigurationsfehler nach Neustart-Reparaturanleitung

Ihre Netplan-Konfiguration (/etc/netplan/50-.yaml) wird nach einem Neustart auf die ursprüngliche IP-Adresse zurückgesetzt. Dies liegt in der Regel daran, dass der Cloud-Init-Dienst die Netzwerkkonfiguration beim Start zurücksetzt oder Probleme mit der YAML-Syntax oder -Berechtigungen die Konfiguration nicht beibehalten. Dies kommt in Ubuntu 20.04+ häufig vor, insbesondere auf Cloud-Servern (wie Vultr und AWS). Keine Sorge, die Lösung ist einfach: Überprüfen Sie die Syntax, deaktivieren Sie Cloud-Init-Resets und überprüfen Sie die Anwendung.Ubuntu hat mehrere IP-Dienste hinzugefügt, aber ohne Wirkung: Nach dem Neustart des Servers wird standardmäßig wieder die ursprüngliche IP-1 verwendet

Was ist 50-cloud-init.yaml

Diese Datei ist eine Schlüsselkomponente des Ubuntu Linux-Systemverzeichnisses 50-cloud-init.yaml. /etc/netplan/cloud-init Diese Datei definiert das SystemNetzwerkkonfiguration und -einrichtung, insbesondere in Cloud- oder virtualisierten Umgebungen.
Hauptfunktionen von 50-cloud-init.yaml:
Von Cloud-Init generiert: Diese Datei wird automatisch von Cloud-Init generiert, einem Tool zur frühzeitigen Initialisierung und Anpassung von Linux-Systemen, insbesondere in Cloud-Umgebungen wie AWS, Azure oder Virtualisierungsplattformen wie VMware.
Netplan-Konfiguration: Es verwendet das Netplan-Konfigurationssystem, das Standardsystem von Ubuntu zum Definieren von Netzwerkeinstellungen.
Nicht für die manuelle Bearbeitung geeignet: Diese Datei enthält in der Regel Kommentare, die darauf hinweisen, dass direkt an ihr vorgenommene Änderungen bei Neustarts oder erneuten Ausführungen von Cloud-Init nicht erhalten bleiben. Dies liegt daran, dass Cloud-Init die Datei basierend auf den von der Datenquelle bereitgestellten Informationen neu generieren kann.
Dynamische Konfiguration: Die Netzwerkschnittstelle wird normalerweise mithilfe von DHCP (z. B. dhcp4: true) konfiguriert, um automatisch eine IP-Adresse zu erhalten. Dadurch ist sie für dynamische Cloud-Umgebungen geeignet.
Überschreiben: Obwohl direktes Bearbeiten nicht empfohlen wird, können Sie die Einstellungen überschreiben, indem Sie eine neue Netplan-Konfigurationsdatei mit einem höheren numerischen Präfix (z. B. 99-my-custom-config.yaml) im Verzeichnis /etc/netplan/ erstellen. Dadurch können Sie statische IP-Adressen oder andere spezifische Netzwerkeinstellungen definieren, die Vorrang haben.
Im Wesentlichen dient es als anfängliche Netzwerkkonfiguration, die von Cloud-basierten oder virtualisierten Ubuntu-Instanzen bereitgestellt wird. Obwohl es wichtig ist, die Standardnetzwerkeinstellungen des Systems zu verstehen, sollten benutzerdefinierte Netzwerkkonfigurationen in einer separaten Netplan-Datei implementiert werden, um die Persistenz zu gewährleisten.

Ubuntu 22.4 Multi-IP-Konfigurationsmethode

Konfigurieren Sie zunächst mehrere IP-Adressen in 50-cloud-init.yaml

sudo vi /etc/netplan/50-cloud-init.yaml

Nach der Konfiguration speichern und beenden :wq

Generieren und testen Sie die Konfiguration, um zu überprüfen, ob die Syntax korrekt ist.

sudo netplan generieren

Wenn kein Problem vorliegt, wenden Sie die Konfigurationsdatei an.

sudo netplan anwenden

Sollte nach der Bewerbung eine OVS-Warnung erscheinen, ignorieren Sie diese bitte.

Der folgende Schritt ist entscheidend:

Deaktivieren Sie das Zurücksetzen des Cloud-Init-Netzwerks, ein wichtiger Schritt, um ein Rollback durch Neustart zu verhindern!

Erstellen einer neuen Datei

sudo vi /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg

Fügen Sie es hinzu

Netzwerk: {config: deaktiviert}

Löschen Sie den Cloud-Init-Cache und die Instanz-ID

sudo cloud-init clean --logs sudo rm -rf /var/lib/cloud/instance # Instanzdaten löschen sudo dpkg-reconfigure cloud-init # Neu konfigurieren, „Keine“ auswählen, um das Netzwerkmodul zu deaktivieren

Übernehmen Sie die Konfiguration und testen Sie den Neustart

sudo netplan generate # zum Prüfen der Syntax. sudo netplan apply # zum Anwenden der IP-Adresse. show # zum sofortigen Überprüfen mehrerer IP-Adressen. sudo reboot

Wenn die oben genannten Methoden nicht funktionieren, deaktivieren Sie Cloud-Init vollständig (Extremfall).

sudo touch /etc/cloud/cloud-init.disabled sudo systemctl cloud-init deaktivieren sudo systemctl cloud-init maskieren

Upgrade-Fix: Cloud-Init aktualisieren: sudo apt update && sudo apt upgrade cloud-init (einige Versionen wurden behoben).

Diese Lösung basiert auf einem Community-Fix und funktioniert grundsätzlich seit 100%. Sollte das Problem nach dem Neustart weiterhin bestehen, hinterlassen Sie unten einen Kommentar mit der Ausgabe von cat /etc/netplan/*.yaml und journalctl -u cloud-init, damit ich bei der Diagnose helfen kann!

Punktzahl

Das ist eine gute Idee

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * Mark