Ich verwende libvirt und kvm, um meinen Server zu virtualisieren. Ich habe libvirt so konfiguriert, dass ein DHCP-Server auf der Bridge-Netzwerk-Schnittstelle gestartet wird, um den VMs ihre IPs zu geben. Jede VM erhält immer die gleiche IP basierend auf ihrem Mac. Dies ist wie folgt konfiguriert:
<dhcp>
<range start='10.1.1.2' end='10.1.1.254' />
<host mac='54:52:00:21:01:ba' name='virstvm' ip='10.1.1.10' />
<host mac='00:16:36:2d:71:f9' name='secvm' ip='10.1.1.20' />
</dhcp>
Das Problem: Immer wenn ich dem DHCP-Abschnitt einen neuen Host hinzufüge, muss ich libvirt-bin neu starten, wodurch alle meine VMs neu gestartet werden . Dies kann nicht die Lösung sein, da jedes Mal, wenn ich einen neuen Server hinzufüge, eine Ausfallzeit auftritt. Gibt es eine Lösung?
dhcp
libvirt
kvm-virtualization
theomega
quelle
quelle
Antworten:
Der hinzugefügte Befehl net-update in virsh sollte ein DHCP-Host-Update ermöglichen, ohne das virtuelle Netzwerk neu zu starten (ich habe es noch nicht getestet).
Mann virsh:
quelle
Das folgende Verfahren funktionierte für mich mit libvirt Version: 0.7.5-5ubuntu27 auf einem Ubuntu 10.04.4 LTS-Host:
Dies funktioniert auch für andere Netzwerke neben dem Standardnetzwerk. Ersetzen Sie einfach das Wort default im Beispiel durch den Namen des Netzwerks.
quelle
@ pefus Lösung hat es auch für CentOS 6.4 geschafft!
Durch die Verwendung von
net-edit
in wurdevirsh
die XML-Datei weder aktualisiert/var/lib/libvirt/network/default.xml
noch der Status der ausgeführten Netzwerkkonfiguration geändert.Beim erneuten Ausführen wurde
net-edit
die bearbeitete Version auch nach einem Neustart angezeigt, sie wurde jedoch nicht geladen!Es in eine echte XML-Datei exportieren, bearbeiten und neu laden funktioniert!
quelle
Ich denke, libvirt verwendet dnsmaq für seinen DHCP-Server. Vielleicht könnten Sie dnsmasq einfach neu starten und alles wäre gut?
quelle
Nach einer Diskussion auf der Mailingliste fand ich heraus: Dies ist derzeit überhaupt nicht möglich!
quelle