Dieser Artikel ist der nächste in der Serie zu oVirt, Teil eins. .
Artikel
- Installation des Managers (ovirt-engine) und der Hypervisoren (Hosts) – wir sind hier.
Werfen wir also einen Blick auf die Fragen der Erstinstallation der Komponenten ovirt-engine und ovirt-host.
Die Installationsprozesse können immer detaillierter eingesehen werden in .
Inhalt
Installation von ovirt-engine
Für den Engine sind die minimalen Anforderungen 2 Kerne / 4 GiB RAM / 25 GiB Speicher. Empfohlen werden mindestens 4 Kerne / 16 GiB RAM / 50 GiB Speicher. Wir verwenden die Standalone-Manager-Option, wenn der Engine auf einer dedizierten physischen oder virtuellen Maschine außerhalb eines verwalteten Clusters läuft. Für unsere Installation nehmen wir eine virtuelle Maschine zum Beispiel auf einem eigenständigen ESXi*. Es ist praktisch, Bereitstellungstools oder Klonierung aus einer zuvor vorbereiteten Vorlage oder die Installation über Kickstart zu verwenden.
*Hinweis: Für ein Produktionssystem ist dies keine gute Idee, da der Manager ohne Redundanz läuft und zum Engpass wird. In diesem Fall wäre es besser, die Option Self-hosted Engine in Betracht zu ziehen.
Falls erforderlich, wird das Verfahren zur Konvertierung von Standalone zu Self Hosted ausführlich beschrieben in . Insbesondere muss dem Host der Befehl zur Neuinstallation mit Unterstützung für das Hosted Engine erteilt werden.
Auf der VM installieren wir CentOS 7 in der minimalen Konfiguration, dann aktualisieren und starten wir das System neu:
$ sudo yum update -y && sudo rebootFür die virtuelle Maschine ist es sinnvoll, den Gast-Agenten zu installieren:
$ sudo yum install open-vm-toolsfür VMware ESXi-Hosts oder für oVirt:
$ sudo yum install ovirt-guest-agentWir verbinden das Repository und installieren den Manager:
$ sudo yum install https://resources.ovirt.org/pub/yum-repo/ovirt-release43.rpm
$ sudo yum install ovirt-engine
Basis-Konfiguration:
$ sudo engine-setupIn den meisten Fällen sind die standardmäßig ausgewählten Einstellungen ausreichend. Um sie automatisch zu verwenden, kann die Konfiguration mit dem Schlüssel gestartet werden:
$ sudo engine-setup --accept-defaults Jetzt können wir uns mit unserem neuen Engine unter der Adresse verbinden . Hier ist noch nichts vorhanden, also gehen wir zur Installation der Hypervisoren über.
Installation von ovirt-host
Auf dem physischen Host installieren wir CentOS 7 in der minimalen Konfiguration, dann verbinden wir das Repository, aktualisieren und starten das System neu:
$ sudo yum install https://resources.ovirt.org/pub/yum-repo/ovirt-release43.rpm
$ sudo yum update -y && sudo reboot
Hinweis: Für die Installation empfiehlt es sich, Automatisierungstools oder eine Kickstart-Installation zu verwenden.
Beispiel einer Kickstart-Datei
Achtung! Vorhandene Partitionen werden automatisch gelöscht! Seien Sie vorsichtig!
# System authorization information
auth --enableshadow --passalgo=sha512
# Use CDROM installation media
cdrom
# Use graphical install
graphical
# Run the Setup Agent on first boot
firstboot --enable
ignoredisk --only-use=sda
# Keyboard layouts
keyboard --vckeymap=us --xlayouts='us','ru' --switch='grp:alt_shift_toggle'
# System language
lang ru_RU.UTF-8
# Network information
network --bootproto=dhcp --device=ens192 --ipv6=auto --activate
network --hostname=kvm01.lab.example.com
# Root password 'monteV1DE0'
rootpw --iscrypted $6$6oPcf0GW9VdmJe5w$6WBucrUPRdCAP.aBVnUfvaEu9ozkXq9M1TXiwOm41Y58DEerG8b3Ulme2YtxAgNHr6DGIJ02eFgVuEmYsOo7./
# User password 'metroP0!is'
user --name=mgmt --groups=wheel --iscrypted --password=$6$883g2lyXdkDLbKYR$B3yWx1aQZmYYi.aO10W2Bvw0Jpkl1upzgjhZr6lmITTrGaPupa5iC3kZAOvwDonZ/6ogNJe/59GN5U8Okp.qx.
# System services
services --enabled="chronyd"
# System timezone
timezone Europe/Moscow --isUtc
# System bootloader configuration
bootloader --append=" crashkernel=auto" --location=mbr --boot-drive=sda
# Partition clearing information
clearpart --all
# Disk partitioning information
part /boot --fstype xfs --size=1024 --ondisk=sda --label=boot
part pv.01 --size=45056 --grow
volgroup HostVG pv.01 --reserved-percent=20
logvol swap --vgname=HostVG --name=lv_swap --fstype=swap --recommended
logvol none --vgname=HostVG --name=HostPool --thinpool --size=40960 --grow
logvol / --vgname=HostVG --name=lv_root --thin --fstype=ext4 --label="root" --poolname=HostPool --fsoptions="defaults,discard" --size=6144 --grow
logvol /var --vgname=HostVG --name=lv_var --thin --fstype=ext4 --poolname=HostPool --fsoptions="defaults,discard" --size=16536
logvol /var/crash --vgname=HostVG --name=lv_var_crash --thin --fstype=ext4 --poolname=HostPool --fsoptions="defaults,discard" --size=10240
logvol /var/log --vgname=HostVG --name=lv_var_log --thin --fstype=ext4 --poolname=HostPool --fsoptions="defaults,discard" --size=8192
logvol /var/log/audit --vgname=HostVG --name=lv_var_audit --thin --fstype=ext4 --poolname=HostPool --fsoptions="defaults,discard" --size=2048
logvol /home --vgname=HostVG --name=lv_home --thin --fstype=ext4 --poolname=HostPool --fsoptions="defaults,discard" --size=1024
logvol /tmp --vgname=HostVG --name=lv_tmp --thin --fstype=ext4 --poolname=HostPool --fsoptions="defaults,discard" --size=1024
%packages
@^minimal
@core
chrony
kexec-tools
%end
%addon com_redhat_kdump --enable --reserve-mb='auto'
%end
%anaconda
pwpolicy root --minlen=6 --minquality=1 --notstrict --nochanges --notempty
pwpolicy user --minlen=6 --minquality=1 --notstrict --nochanges --emptyok
pwpolicy luks --minlen=6 --minquality=1 --notstrict --nochanges --notempty
%end
# Reboot when the install is finished.
reboot --eject
Speichern Sie diese Datei z.B. unter . Um das Skript beim Start der OS-Installation zu verwenden, wählen Sie ‚Install CentOS 7‘, aktivieren Sie den Bearbeitungsmodus für Parameter (Taste Tab) und fügen Sie am Ende (mit einem Leerzeichen, ohne Anführungszeichen) hinzu
' inst.ks=ftp://ftp.example.com/pub/labkvm.cfg'.
Das Installationsskript löscht vorhandene Partitionen auf /dev/sda und erstellt neue gemäß (einfacher Zugriff auf diese nach der Installation mit dem Befehl lsblk). Der Hostname wird auf kvm01.lab.example.com gesetzt (nach der Installation kann er mit dem Befehl hostnamectl set-hostname kvm03.lab.example.com geändert werden), die IP-Adresse wird automatisch bezogen, die Zeitzone ist moskauer Zeit, Unterstützung für die russische Sprache wurde hinzugefügt.
Passwort für den Benutzer root: monteV1DE0, Passwort für den Benutzer mgmt: metroP0!is.
Achtung! Vorhandene Partitionen werden automatisch gelöscht! Seien Sie vorsichtig!
Wir wiederholen (oder führen parallel durch) auf allen Hosts. Vom Einschalten eines ‘leeren’ Servers bis zum betriebsbereiten Zustand benötigt man etwa 20 Minuten, einschließlich 2 längerer Bootvorgänge.
Knoten zu oVirt hinzufügen
Das ist sehr einfach:
Compute → Hosts → Neu → …
Im Assistenten sind die Felder Name (sichtbarer Name, z. B. kvm03), Hostname (FQDN, z. B. kvm03.lab.example.com) und der Bereich Authentifizierung erforderlich — Benutzer root (unveränderlich) — Passwort oder SSH Public Key.
Nach dem Klicken auf die Schaltfläche Ok Sie erhalten eine Nachricht „Sie haben das Power Management für diesen Host nicht konfiguriert. Möchten Sie wirklich fortfahren?“. Das ist in Ordnung – die Stromverwaltung werden wir später behandeln, nach erfolgreichem Anschluss des Hosts. Wenn die Maschinen, auf denen die Hosts installiert sind, jedoch kein Management unterstützen (IPMI, iLO, DRAC usw.), empfehle ich, dies zu deaktivieren: Compute → Cluster → Standard → Bearbeiten → Fencing Policy → Fencing aktivieren, Häkchen entfernen.
Wenn das Repository oVirt auf dem Host nicht aktiviert wurde, schlägt die Installation fehl, aber kein Problem – es muss hinzugefügt werden, dann auf Installieren → Neu installieren klicken.
Die Verbindung des Hosts dauert nicht länger als 5-10 Minuten.
Konfiguration des Netzwerkinterfaces
Da wir ein ausfallsicheres System aufbauen, muss die Netzverbindung auch eine redundante Verbindung gewährleisten, was auf der Registerkarte Compute → Hosts umgesetzt wird. HOST → Netzwerk-Schnittstellen — Host-Netzwerke einrichten.
Je nach Fähigkeiten Ihrer Netzwerkausrüstung und architektonischen Ansätzen gibt es verschiedene Möglichkeiten. Am optimalsten ist es, sich mit einem Stack von Top-of-Rack-Switches zu verbinden, um die Netzwerkverfügbarkeit bei einem Ausfall eines Switches nicht zu unterbrechen. Lassen Sie uns dies am Beispiel eines LACP-Bündels betrachten. Um ein aggregiertes Kanal zu konfigurieren, ziehen Sie mit der Maus den 2. ungenutzten Adapter zu dem 1.. Es öffnet sich ein Fenster Neues Bond erstellen, in dem LACP (Modus 4, Dynamische Link-Aggregation, 802.3ad) standardmäßig ausgewählt ist. Auf der Seite der Switches erfolgt die übliche Konfiguration der LACP-Gruppe. Wenn es nicht möglich ist, einen Stack von Switches aufzubauen, kann der Active-Backup-Modus (Modus 1) verwendet werden. Die VLAN-Einstellungen werden im nächsten Artikel behandelt, während detaillierte Empfehlungen zur Netzwerkkonfiguration im Dokument .
FC-Konfiguration
Fibre Channel (FC) wird „out-of-the-box“ unterstützt und lässt sich problemlos verwenden. Die Konfiguration des Speichernetzwerks, einschließlich der Einrichtung von Speichersystemen und der Zonenbildung von Fabric-Switches im Rahmen der oVirt-Konfiguration, behandeln wir nicht.
FCoE-Konfiguration
FCoE hat meiner Meinung nach in Speichernetzwerken nicht wirklich Fuß gefasst, wird jedoch häufig auf Servern als „letzte Meile“ eingesetzt, z. B. in HPE Virtual Connect.
Die Konfiguration von FCoE erfordert einige zusätzliche, einfache Schritte.
FCoE-Engine einrichten
Artikel auf der Red Hat-Website , fügen Sie mit dem folgenden Befehl den Schlüssel zum Manager hinzu und starten Sie ihn neu:
$ sudo engine-config -s UserDefinedNetworkCustomProperties='fcoe=^((enable|dcb|auto_vlan)=(yes|no),?)*$'
$ sudo systemctl restart ovirt-engine.service
Node FCoE einrichten
Auf den oVirt-Hosts muss installiert werden
$ sudo yum install vdsm-hook-fcoeDanach erfolgt die übliche FCoE-Konfiguration, Artikel auf Red Hat: .
Für Broadcom CNA zusätzlich folgende Informationen beachten .
Stellen Sie sicher, dass die Pakete (die bereits im Minimalpaket enthalten sind) installiert sind:
$ sudo yum install fcoe-utils lldpadNun die eigentliche Konfiguration (ersetzen Sie ens3f2 und ens3f3 durch die Namen der in das Speichernetzwerk eingebundenen CNA):
$ sudo cp /etc/fcoe/cfg-ethx /etc/fcoe/cfg-ens3f2
$ sudo cp /etc/fcoe/cfg-ethx /etc/fcoe/cfg-ens3f3
$ sudo vim /etc/fcoe/cfg-ens3f2
$ sudo vim /etc/fcoe/cfg-ens3f3
Wichtig: Wenn die Netzwerkschnittstelle DCB/DCBX hardwareseitig unterstützt, sollte die Einstellung DCB_REQUIRED auf no gesetzt werden.
DCB_REQUIRED=«yes» → #DCB_REQUIRED=«yes»
Darüber hinaus sollte sichergestellt werden, dass der adminStatus auf allen Schnittstellen, einschließlich der ohne aktiviertes FCoE, deaktiviert ist:
$ sudo lldptool set-lldp -i ens3f0 adminStatus=disabled
...
$ sudo lldptool set-lldp -i ens3f3 adminStatus=disabled
Wenn es andere Netzwerkschnittstellen gibt, kann LLDP aktiviert werden:
$ sudo systemctl start lldpad
$ sudo systemctl enable lldpad
Wie bereits erwähnt, sollte, wenn hardwareseitiges DCB/DCBX verwendet wird, die Einstellung DCB_REQUIRED aktiviert sein, nein und dieser Schritt kann übersprungen werden.
$ sudo dcbtool sc ens3f2 dcb on
$ sudo dcbtool sc ens3f3 dcb on
$ sudo dcbtool sc ens3f2 app:fcoe e:1
$ sudo dcbtool sc ens3f3 app:fcoe e:1
$ sudo ip link set dev ens3f2 up
$ sudo ip link set dev ens3f3 up
$ sudo systemctl start fcoe
$ sudo systemctl enable fcoe
Für die Netzwerkschnittstellen überprüfen, ob der Autostart aktiviert ist:
$ sudo vim /etc/sysconfig/network-scripts/ifcfg-ens3f2
$ sudo vim /etc/sysconfig/network-scripts/ifcfg-ens3f3
ONBOOT=yesÜberprüfung der konfigurierten FCoE-Schnittstellen, der Befehl sollte nicht leer sein.
$ sudo fcoeadm -iDie nachfolgende Konfiguration für FCoE erfolgt wie bei normalem FC.
Nun folgt die Einrichtung der Speicher- und Netzwerktechnologien – Zoning, SAN-Hosts, Erstellung und Präsentation von Volumes/LUNs, nach dem die Speicherung an die ovirt-Hosts angeschlossen werden kann: Storage → Domains → Neue Domain.
Domain-Funktion bleibt Data, Speicherart – Fibre Channel, Host – beliebig, Name – beispielsweise storNN-volMM.
Sicherlich unterstützt Ihr Speichersystem nicht nur die Pfadüberwachung, sondern auch das Lastenausgleich. Viele moderne Systeme sind in der Lage, Daten über alle Pfade gleichmäßig und optimal zu übertragen (ALUA active/active).
Um alle Pfade in den aktiven Zustand zu versetzen, muss das Multipathing konfiguriert werden; hierzu finden Sie weitere Informationen in den folgenden Artikeln.
Die Einrichtung von NFS und iSCSI erfolgt auf ähnliche Weise.
ISO-Image-Speicher
Zur Installation des Betriebssystems benötigen Sie die Installationsdateien, meist im ISO-Format erhältlich. Es kann der integrierte Pfad verwendet werden, doch für die Arbeit mit ISO-Images wurde in oVirt ein spezieller Speichertyp entwickelt – ISO, der auf einen NFS-Server ausgerichtet werden kann. Fügen Sie ihn hinzu:
Storage → Domains → Neue Domain,
Domain-Funktion → ISO,
Export-Pfad – beispielsweise mynfs01.example.com:/exports/ovirt-iso (zum Zeitpunkt der Verbindung sollte der Ordner leer sein, der Manager muss Schreibzugriff darauf haben),
Name – beispielsweise mynfs01-iso.
Für die Speicherung von Images wird der Manager eine Struktur erstellen.
/exports/ovirt-iso/<some UUID>/images/11111111-1111-1111-1111-111111111111/
Wenn bereits ISO-Images auf unserem NFS-Server vorhanden sind, ist es praktisch, diese statt zu kopieren, in diesen Ordner zu verlinken, um Speicherplatz zu sparen.
Erste VM
An dieser Stelle kann bereits die erste virtuelle Maschine erstellt und das Betriebssystem sowie die Anwendungssoftware installiert werden.
Compute → Virtuelle Maschinen → Neu
Für die neue Maschine einen Namen angeben (Name), eine Festplatte erstellen (Instance Images → Erstellen) und die Netzwerkschnittstelle anschließen (VM-Netzwerkschnittstellen durch Auswahl eines vNIC-Profils instanziieren → vorerst das einzige Profil ovirtmgmt auswählen).
Auf der Client-Seite ist ein moderner Browser und für die Interaktion mit der Konsole erforderlich.
Die erste Maschine wurde erfolgreich gestartet. Für die vollständige Funktionalität des Systems sind jedoch weitere Anpassungen erforderlich, die wir in den folgenden Artikeln behandeln werden.
Quelle: habr.com
