oVirt in 2 Hours. Part 3. Additional Configurations

In dit artikel bekijken we een aantal optionele, maar nuttige instellingen:

Dit artikel is een vervolg, begin zie oVirt in 2 uur Deel 1 en deel 2.

Artikelen

  1. Inleiding
  2. Installatie van de manager (ovirt-engine) en hypervisors (hosts)
  3. Extra instellingen - Hier zijn we

Extra instellingen van de manager

Voor gebruiksgemak installeren we extra pakketten:

$ sudo yum install bash-completion vim

Om commandocompletion in te schakelen, moet je overgaan naar bash.

Toevoegen van extra DNS-namen

Dit is nodig wanneer je verbinding moet maken met de manager met een alternatief naam (CNAME, alias of gewoon een korte naam zonder domeinsuffix). Om veiligheidsredenen staat de manager verbinding alleen toe via een goedgekeurde lijst van namen.

Maak een configuratiebestand aan:

$ sudo vim /etc/ovirt-engine/engine.conf.d/99-custom-sso-setup.conf

met de volgende inhoud:

SSO_ALTERNATE_ENGINE_FQDNS="ovirt.example.com some.alias.example.com ovirt"

en herstart de manager:

$ sudo systemctl restart ovirt-engine

Instelling van authenticatie via AD

oVirt heeft een ingebouwde gebruikersdatabase, maar ondersteunt ook externe LDAP-providers, waaronder AD.

De eenvoudigste manier voor een standaardconfiguratie is de wizard starten en de manager herstarten:

$ sudo yum install ovirt-engine-extension-aaa-ldap-setup
$ sudo ovirt-engine-extension-aaa-ldap-setup
$ sudo systemctl restart ovirt-engine

Voorbeeld van de werking van de wizard
$ sudo ovirt-engine-extension-aaa-ldap-setup
Beschikbare LDAP-implementaties:
…
3 - Active Directory
…
Selecteer alstublieft: 3
Voer de naam van het Active Directory Forest in: example.com

Selecteer het protocol dat u wilt gebruiken (startTLS, ldaps, plain) [startTLS]:
Selecteer de methode om het PEM-gecodeerde CA-certificaat te verkrijgen (Bestand, URL, Inline, Systeem, Onveilig): URL
URL: wwwca.example.com/myRootCA.pem
Voer de zoekgebruikers DN in (bijvoorbeeld uid=username,dc=example,dc=com of laat leeg voor anoniem): CN=oVirt-Engine,CN=Users,DC=example,DC=com
Voer het wachtwoord van de zoekgebruiker in: *wachtwoord*
[ INFO ] Poging om te verbinden met 'CN=oVirt-Engine,CN=Users,DC=example,DC=com'
Gaat u Single Sign-On gebruiken voor Virtuele Machines (Ja, Nee) [Ja]:
Geef alstublieft de profielnaam op die zichtbaar zal zijn voor gebruikers [example.com]:
Geef inloggegevens op om de inlogstroom te testen:
Voer gebruikersnaam in: someAnyUser
Voer wachtwoord in:
…
[ INFO ] Inlogvolgorde met succes uitgevoerd
…
Selecteer testreeks om uit te voeren (Voltooid, Abort, Inloggen, Zoeken) [Voltooid]:
[ INFO ] Fase: Transactie-instelling
…
CONFIGURATIE SAMENVATTING
…

Het gebruik van de wizard is geschikt voor de meeste gevallen. Voor complexe configuraties worden de instellingen handmatig uitgevoerd. Meer details in de oVirt-documentatie, Gebruikers en Rollen. Na succesvolle verbinding van de Engine met AD verschijnt er een extra profiel in het verbindingsvenster, en op het tabblad Rechten Objecten van het systeem hebben de mogelijkheid om machtigingen toe te kennen aan gebruikers en AD-groepen. Opmerking: de externe directory van gebruikers en groepen kan niet alleen AD zijn, maar ook IPA, eDirectory, enz.

Multipathing

In een productieomgeving moet het opslagysteem via meerdere onafhankelijke paden voor meervoudige invoer/uitvoer met de host zijn verbonden. Gewoonlijk zijn er in CentOS (en dus in oVirt) geen problemen bij het opzetten van meervoudige paden naar het apparaat (find_multipaths yes). Meer over de extra instellingen voor FCoE is te vinden in deel 2. Het is belangrijk op te merken dat de fabrikant van de opslagarray vaak aanbeveelt om de round-robin-beleid te gebruiken, terwijl in Enterprise Linux 7 standaard service-time wordt gebruikt.

Aan de hand van 3PAR
en de documentatie HPE 3PAR Red Hat Enterprise Linux, CentOS Linux, Oracle Linux en OracleVM Server Implementatiegids EL wordt gemaakt als Host met Generic-ALUA Persona 2, voor hem worden de volgende waarden in de configuratie /etc/multipath.conf ingevoerd:

defaults {
           polling_interval      10
           user_friendly_names   no
           find_multipaths       yes
          }
devices {
          device {
                   vendor                   "3PARdata"
                   product                  "VV"
                   path_grouping_policy     group_by_prio
                   path_selector            "round-robin 0"
                   path_checker             tur
                   features                 "0"
                   hardware_handler         "1 alua"
                   prio                     alua
                   failback                 immediate
                   rr_weight                uniform
                   no_path_retry            18
                   rr_min_io_rq             1
                   detect_prio              yes
                   fast_io_fail_tmo         10
                   dev_loss_tmo             "infinity"
                 }
}

Hierna wordt het commando voor herstart gegeven:

systemctl restart multipathd

oVirt in 2 Hours. Part 3. Additional Configurations
Figuur 1 — standaard beleid voor meervoudige invoer/uitvoer.

oVirt in 2 Hours. Part 3. Additional Configurations
Figuur 2 — beleid voor meervoudige invoer/uitvoer na het toepassen van de instellingen.

Instelling van energiebeheer

Stelt in staat om bijvoorbeeld een hardware reset van de machine uit te voeren als de Engine gedurende lange tijd geen antwoord van de Host kan krijgen. Dit wordt geïmplementeerd via de Fence Agent.

Compute -> Hosts -> HOST — Bewerken -> Energiebeheer, vervolgens "Energiebeheer inschakelen" en agent toevoegen — "Fence Agent toevoegen" -> +.

Geef het type op (bijv., voor iLO5 moet ilo4 worden opgegeven), de naam/adres van de ipmi-interface, evenals de naam/wachtwoord van de gebruiker. Het wordt aanbevolen om een aparte gebruiker aan te maken (bijv., oVirt-PM) en, in het geval van iLO, deze de privileges toe te kennen:

  • Inloggen
  • Remote Console
  • Virtual Power and Reset
  • Virtual Media
  • Configure iLO-instellingen
  • Beheer gebruikersaccounts

Vraag niet waarom het zo is, het is zo bepaald op basis van ervaring. De console-fencing agent vereist een kleinere set van bevoegdheden.

Bij het configureren van toegangscontrolelijsten is het belangrijk om te weten dat de agent niet op de engine draait, maar op de "naastgelegen" host (de zogenaamde Power Management Proxy); dat wil zeggen, als er maar één knooppunt in de cluster is, werkt het energiebeheer niet. de oorspronkelijke lege document vervangen door een ander document dat asynchroon is geladen, maar in plaats daarvan het load-evenement voor het oorspronkelijke document synchroon starten..

SSL-configuratie

De volledige officiële instructie staat in de documentatie, Appendix D: oVirt en SSL - Het vervangen van het oVirt Engine SSL/TLS-certificaat.

Het certificaat kan zowel van onze bedrijfs-CAS komen als van een externe commerciële certificeringsinstantie.

Belangrijke opmerking: het certificaat is bedoeld voor verbinding met de manager, heeft geen invloed op de interactie tussen de Engine en knooppunten - deze zullen zelfondertekende certificaten gebruiken die door de Engine zijn uitgegeven.

Vereisten:

  • certificaat van de uitgever in PEM-formaat, met de hele keten tot het root-CAS (van de ondergeschikte uitgever aan het begin tot het root-certificaat aan het einde);
  • certificaat voor Apache, uitgegeven door de certificeringsinstantie (ook aangevuld met de hele keten van certificaten van de certificeringsinstantie);
  • privé sleutel voor Apache, zonder wachtwoord.

Stel dat ons certificeringscentrum draait op CentOS, genaamd subca.example.com, en dat aanvragen, sleutels en certificaten zich bevinden in de map /etc/pki/tls/.

Maak backups en creëer een tijdelijke map:

$ sudo cp /etc/pki/ovirt-engine/keys/apache.key.nopass /etc/pki/ovirt-engine/keys/apache.key.nopass.`date +%F`
$ sudo cp /etc/pki/ovirt-engine/certs/apache.cer /etc/pki/ovirt-engine/certs/apache.cer.`date +%F`
$ sudo mkdir /opt/certs
$ sudo chown mgmt.mgmt /opt/certs

Download de certificaten, dit kan vanaf je werkstation of op een andere handige manier:

[myuser@mydesktop] $ scp -3 causer@subca.example.com:/etc/pki/tls/cachain.pem mgmt@ovirt.example.com:/opt/certs
[myuser@mydesktop] $ scp -3 causer@subca.example.com:/etc/pki/tls/private/ovirt.key mgmt@ovirt.example.com:/opt/certs
[myuser@mydesktop] $ scp -3 causer@subca.example.com/etc/pki/tls/certs/ovirt.crt mgmt@ovirt.example.com:/opt/certs

Als resultaat moet je alle 3 de bestanden zien:

$ ls /opt/certs
cachain.pem  ovirt.crt  ovirt.key

Installatie van de certificaten

Kopieer de bestanden en werk de vertrouweigenschappen bij:

$ sudo cp /opt/certs/cachain.pem /etc/pki/ca-trust/source/anchors
$ sudo update-ca-trust
$ sudo rm /etc/pki/ovirt-engine/apache-ca.pem
$ sudo cp /opt/certs/cachain.pem /etc/pki/ovirt-engine/apache-ca.pem
$ sudo cp /opt/certs/ovirt03.key /etc/pki/ovirt-engine/keys/apache.key.nopass
$ sudo cp /opt/certs/ovirt03.crt /etc/pki/ovirt-engine/certs/apache.cer
$ sudo systemctl restart httpd.service

Voeg/werk configuratiebestanden bij:

$ sudo vim /etc/ovirt-engine/engine.conf.d/99-custom-truststore.conf
ENGINE_HTTPS_PKI_TRUST_STORE="/etc/pki/java/cacerts"
ENGINE_HTTPS_PKI_TRUST_STORE_PASSWORD=""
$ sudo vim /etc/ovirt-engine/ovirt-websocket-proxy.conf.d/10-setup.conf
SSL_CERTIFICATE=\/etc\/pki\/ovirt-engine\/certs\/apache.cer
SSL_KEY=\/etc\/pki\/ovirt-engine\/keys\/apache.key.nopass
$ sudo vim \/etc\/ovirt-imageio-proxy\/ovirt-imageio-proxy.conf
# Key file for SSL connections
ssl_key_file = /etc/pki/ovirt-engine/keys/apache.key.nopass
# Certificate file for SSL connections
ssl_cert_file = /etc/pki/ovirt-engine/certs/apache.cer

Vervolgens herstarten we alle betrokken diensten:

$ sudo systemctl restart ovirt-provider-ovn.service
$ sudo systemctl restart ovirt-imageio-proxy
$ sudo systemctl restart ovirt-websocket-proxy
$ sudo systemctl restart ovirt-engine.service

Klaar! Het is tijd om verbinding te maken met de manager en te controleren of de verbinding is beveiligd met een ondertekend SSL-certificaat.

Archivering

Waar zouden we zonder haar zijn! In deze sectie zullen we het hebben over het archiveren van de manager, archivering van VM's is een apart verhaal. We zullen dagelijkse backups maken en deze opslaan via NFS, bijvoorbeeld op hetzelfde systeem waar we de ISO-images hebben geplaatst — mynfs01.example.com:\exports\ovirt-backup. Het wordt niet aangeraden om backups op dezelfde machine op te slaan als waar de Engine draait.

Laten we autofs installeren en inschakelen:

$ sudo yum install autofs
$ sudo systemctl enable autofs
$ sudo systemctl start autofs

Laten we een script maken:

$ sudo vim \/etc\/cron.daily\/make.oVirt.backup.sh

met de volgende inhoud:

#!/bin/bash

datetime=`date +"%F.%R"`
backupdir="/net/mynfs01.example.com/exports/ovirt-backup"
filename="$backupdir/`hostname --short`.`date +"%F.%R"`"
engine-backup --mode=backup --scope=all --file=$filename.data --log=$filename.log
#uncomment next line for autodelete files older 30 days 
#find $backupdir -type f -mtime +30 -exec rm -f {} ;

Maak het bestand uitvoerbaar:

$ sudo chmod a+x \/etc\/cron.daily\/make.oVirt.backup.sh

Nu zullen we elke nacht een backup van de instellingen van de manager ontvangen.

Beheerinterface van hosts

Cockpit — moderne beheertools voor Linux-systemen. In dit geval vervult het een rol die vergelijkbaar is met de webinterface van ESXi.

oVirt in 2 Hours. Part 3. Additional Configurations
Afbeelding 3 — het uiterlijk van het paneel.

Wordt heel eenvoudig geïnstalleerd, er zijn pakketten nodig: cockpit en de plugin cockpit-ovirt-dashboard:

$ sudo yum install cockpit cockpit-ovirt-dashboard -y

Cockpit inschakelen:

$ sudo systemctl enable --now cockpit.socket

Instelling van de firewall:

sudo firewall-cmd --add-service=cockpit
sudo firewall-cmd --add-service=cockpit --permanent

Nu kan er verbinding worden gemaakt met de host: https:\/[Host IP or FQDN]:9090

VLAN's

Meer over netwerken is het waard om te lezen in de documentatie. Er zijn veel mogelijkheden, hier zullen we de verbinding van virtuele netwerken beschrijven.

Voor het verbinden van andere subnetten moeten ze eerst in de configuratie worden beschreven: Netwerk -> Netwerken -> Nieuw, hierbij is alleen de naam een verplicht veld; het selectievakje VM-netwerk, dat toestaat dat machines dit netwerk gebruiken, is ingeschakeld, en om de tag te verbinden moet men inschakelen VLAN-tagging inschakelen, het VLAN-nummer invullen en op Ok klikken.

Nu moet je naar Compute hosts -> Hosts -> kvmNN -> Netwerkinterfaces -> Hostnetwerken instellen. Het toegevoegde netwerk van de rechterkant Onbenoembare Logische Netwerken moet naar links worden gesleept in de Toegewezen Logische Netwerken:

oVirt in 2 Hours. Part 3. Additional Configurations
Afbeelding 4 — voor het toevoegen van een netwerk.

oVirt in 2 Hours. Part 3. Additional Configurations
Afbeelding 5 — na het toevoegen van een netwerk.

Voor het massaal verbinden van meerdere netwerken met een host is het handig om bij het creëren van netwerken labels toe te wijzen, en netwerken op basis van labels toe te voegen.

Na het aanmaken van het netwerk zullen de hosts in de status Non Operational komen, totdat de toevoeging van het netwerk aan alle knooppunten van de cluster is voltooid. Dit gedrag wordt veroorzaakt door de optie Require All op het tabblad Cluster tijdens het aanmaken van een nieuw netwerk. Als het netwerk niet op alle knooppunten van de cluster nodig is, kan deze optie worden uitgeschakeld, zodat het netwerk bij het toevoegen aan de host aan de rechterkant in de sectie Non Required verschijnt en kan worden gekozen of het aan een specifieke host moet worden aangesloten.

oVirt in 2 Hours. Part 3. Additional Configurations
Figuur 6 — selectie van de netwerkvereiste.

Specifiek voor HPE

Bijna alle fabrikanten hebben tools die het werken met hun producten verbeteren. Een voorbeeld is HPE, waar AMS (Agentless Management Service, amsd voor iLO5, hp-ams voor iLO4) en SSA (Smart Storage Administrator, werken met de schijfcontroller) nuttig zijn, en meer.

Aansluiten van de HPE-repository
We importeren de sleutel en verbinden de HPE-repositories:

$ sudo rpm --import https://downloads.linux.hpe.com/SDR/hpePublicKey2048_key1.pub
$ sudo vim /etc/yum.repos.d/mcp.repo

met de volgende inhoud:

[mcp]
name=Management Component Pack
baseurl=http://downloads.linux.hpe.com/repo/mcp/centos/$releasever/$basearch/current/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/GPG-KEY-mcp

[spp]
name=Service Pack for ProLiant
baseurl=http://downloads.linux.hpe.com/SDR/repo/spp/RHEL/$releasever/$basearch/current/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/GPG-KEY-mcp

Inhoud van de repository en informatie over het pakket bekijken (ter referentie):

$ sudo yum --disablerepo="*" --enablerepo="mcp" list available
$ yum info amsd

Installatie en uitvoering:

$ sudo yum install amsd ssacli
$ sudo systemctl start amsd

Voorbeeld van het gebruik van de schijfcontroller-tool
oVirt in 2 Hours. Part 3. Additional Configurations

Dat is alles voor nu. In de volgende artikelen ben ik van plan om enkele basisbewerkingen en toepassingen te bespreken. Bijvoorbeeld, hoe je een VDI in oVirt maakt.

Bron: habr.com

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers 🔥 Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster