Änderungen

KVM-Node

157 Byte entfernt, 10:58, 20. Nov. 2018
Diese Anleitung beschreibt die Konfiguration von KVM-Nodes für das sourceDESK-Plugin für KVM-vServer. Als System wird hier '''CentOS 6Debian 8''' verwendet, dies sollte 64-bit sein, auch wenn 32-bit theoretisch von KVM unterstützt wird.
== Software-Installation ==
<syntaxhighlight lang="bash">
yum apt-y get install qemu-kvm libvirt python-virtinst qemu-kvm uuid bin bridge-utilsuuid
</syntaxhighlight>
== Konfiguration ==
Zuerst sollte der Hostname des Nodes konfiguriert werden. Dieser wird in die Datei ''/etc/sysconfig/networkhostname'' eingetragen und über das Kommando ''hostname'' gesetzt.
Die System-Zeit und die Zeitzone sollte überprüft werden, diese Einstellungen müssen korrekt sein. Die Zeitzone können wir wie folgt auf die deutsche Zeitzone stellen:
<syntaxhighlight lang="bash">
rm dpkg-f /etc/localtimeln -s /usr/share/zoneinfo/Europe/Berlin /etc/localtimereconfigure tzdata
</syntaxhighlight>
Die Zeit können wir recht einfach synchronisierenWir müssen nun sicherstellen, sofern das Paket ntp installiert dass der Netzwerk-Manager von Debian deaktiviert ist:
<syntaxhighlight lang="bash">
ntpdate poolsystemctl stop NetworkManager.ntpservicesystemctl disable NetworkManager.orgservice
</syntaxhighlight>
Um den Eine Portänderung von SSH-Login schneller zu machenist möglich, bearbeiten auch wenn wir die Datei ''/etc/ssh/sshd_config'' und fügen folgendes am Ende ein:davon abraten. Wenn der Port geändert wird, auf jeden Fall einen Port kleiner als 1024 wählen! Passwort-Authentifizierung darf nicht deaktiviert werden.
<syntaxhighlight lang="bash">UseDNS no</syntaxhighlight> Eine Portänderung von SSH ist möglich, auch wenn wir davon abraten. Wenn Jetzt kommt der Port geändert wird, auf jeden Fall einen Port kleiner als 1024 wählen! Passwortkomplizierteste Schritt bei KVM: Die Netzwerkkonfiguration. Wir nutzen hierzu eine Netzwerk-Authentifizierung darf nicht deaktiviert werdenBrücke (Bridge).
Wir konfigurieren nun den Autostart für den Daemonerstellen die Bridge ''br0'' mit folgendem Kommando von ''bridge-utils'':
<syntaxhighlight lang="bash">
chkconfig libvirtd onbrctl addbr br0
</syntaxhighlight>
Jetzt Als nächstes müssen wir einen Autostart der Bridge beim Server-Start einrichten. Wir gehen mit dieser Konfiguration davon aus, dass ''eth0'' zum Zugriff auf das Netzwerk durch den Server genutzt wird noch die Netzwerkkonfiguration durchgeführt. Dazu erstellen wir Andernfalls muss das Interface entsprechend geändert werden. Wir müssen nun die Datei ''/etc/sysconfig/network-scripts/ifcfg-br0interfaces'' mit folgendem Inhaltbearbeiten. Am Ende der Datei fügen wir folgende Konfiguration für die Bridge ein:
<syntaxhighlight lang="bash">
DEVICE="auto br0"NM_CONTROLLED="yes"ONBOOT=yesTYPE=BridgeBOOTPROTO=noneIPADDR=...PREFIX=...GATEWAY=...DNS1=...iface br0 inet dhcpDNS2=... bridge_ports eth0DEFROUTE=yes bridge_stp offIPV4_FAILURE_FATAL=yes bridge_fd 0IPV6INIT=no bridge_maxwait 0
</syntaxhighlight>
Bitte nehmen Sie Diese Konfiguration geht davon aus, dass DHCP für die Werte ''IPADDR'', ''PREFIX'', ''GATEWAY'', ''DNS1'' und ''DNS2'' aus der Datei ''/etc/sysconfig/networkIP-scripts/ifcfg-eth0''Adresse verwendet ist. In dieser Datei kommentieren Ist dies nicht der Fall, übernehmen Sie zusätzliche bitte die Werte IP-Konfiguration von ''BOOTPROTOeth0'', . ''IPADDReth0'', ''PREFIX'', ''GATEWAY'', ''DNS1'' und ''DNS2'' mit einem vorangestellten ''#'' aus. Hinzu fügen Sie bitte am Ende taucht später nicht mehr in der Konfigurations-Datei den Wert ''BRIDGE=br0''aus, das komplette Netzwerk läuft über die Bridge.
Zum Schluss Wir starten wir den Server nun neu: <syntaxhighlight lang="bash">shutdown . Nach dem Neustart muss ''ifconfig'' zeigen, dass die Bridge ''br0'' eine IP-r now</syntaxhighlight>Adresse hat und ''eth0'' keine IP-Adresse mehr zugeordnet ist. Damit ist die Netzwerk-Konfiguration abgeschlossen.
== Templates ==
Die entsprechenden Distributionen kann man also direkt auf der jeweiligen Seite der Distribution herunterladen.
Der Einfachheit halber nutzt sourceDESK nur ISO-Dateien aus dem Verzeichnis ''/var/lib/libvirthome/iso'', welches Sie anlegen müssen. Dorthin laden Sie bitte sämtliche ISO-Dateien, die Sie mit KVM verwenden möchten.
Zu Testzwecken laden wir einfach eine minimale Debian-Version mit Netinstall:
<syntaxhighlight lang="bash">
cd mkdir -p /varhome/libisocd /libvirthome/iso
wget http://cdimage.debian.org/debian-cd/8.5.0/amd64/iso-cd/debian-8.5.0-amd64-netinst.iso
</syntaxhighlight>
</controller>
<input type='mouse' bus='ps2'/>
<graphics type='vnc' port='5900-1' autoport="yes" listen='0.0.0.0' passwd='test1234'/>
<console type='pty'>
<target port='0'/>
</syntaxhighlight>
Nun Nach der Ausführung aller Kommandos sollte die VM ein virtuelles Interface ''vnet0'' bei der Bridge ''br0'' bekommen habenvServer erreichbar sein. Hier sollten ein paar kleine Tests durchgeführt werden, das überprüfen wir:wichtig ist hier insbesondere die Konnektivität (Node -> vServer, vServer -> Node, Internet -> vServer, vServer -> Internet). Sofern IPv6 verwendet werden soll, unbedingt auch IPv6 testen, dies ist häufig ein Problem.
<syntaxhighlight lang="bash">brctl show</syntaxhighlight> Es sollte nun auch ein VNC-Server auf Port 5900 gestartet wurden sein, dies können wir auch prüfenAnschließend kann der vServer heruntergefahren und entfernt werden:
<syntaxhighlight lang="bash">
netstat -nap | egrep '(kvm|qemu)'vzctl stop 101vzctl destroy 101
</syntaxhighlight>
Als nächstes verbinden wir uns mit einem VNC-Client auf den Host-Server auf Port 5900, hier hört der VNC-Server der VM. Das Passwort lautet ''test1234''. == Freie IP-Adressen ==Damit sourceDESK weiß, welche Sie müssen die verfügbaren IP-Adressen für die vServer noch zur Verfügung stehen, muss die Datei ''/root/freein der [[IP-v4Verwaltung]] des Produkts eintragen.txt'' und/oder ''/root/free-v6.txt'' angelegt werden. In diese Dateien wird pro Zeile eine freie IPv4-/IPv6-Adresse eingetragen, sowie getrennt durch ein Semikolon das Gateway. Beispiel: <syntaxhighlight lang="bash">1.2.3.4;5.6.7.85.6.7.8;5.6.7.89.0.1.2;5.6.7.8</syntaxhighlight>
== Hinzufügen ==