oVirt în 2 ore. Partea 2. Instalarea managerului și a gazdelor

Acest articol este următorul în ciclul dedicat oVirt, început aici.

Articole

  1. Introducere
  2. Instalarea managerului (ovirt-engine) și a hipervizoarelor (hosts) — Suntem aici
  3. Setări suplimentare

Prin urmare, să analizăm întrebările legate de instalarea inițială a componentelor ovirt-engine și ovirt-host.

Pentru mai multe informații despre procesele de instalare, puteți consulta documentation.

Cuprins

  1. Instalarea ovirt-engine
  2. Instalarea ovirt-host
  3. Adăugarea unui nod în oVirt
  4. Configurarea interfeței de rețea
  5. Configurarea FC
  6. Configurarea FCoE
  7. Stocarea imaginilor ISO
  8. Prima VM

Instalarea ovirt-engine

Pentru Engine, cerințele minime sunt 2 nuclee/4 GiB RAM/25 GiB stocare. Recomandate sunt de la 4 nuclee/16 GiB RAM/50 GiB stocare. Folosim varianta Standalone Manager, când engine-ul rulează pe o mașină fizică sau virtuală dedicată, în afara unui cluster gestionat. Pentru instalarea noastră, vom folosi o mașină virtuală, de exemplu, pe un ESXi*. Este convenabil să utilizăm instrumente de automatizare a implementării sau clonarea dintr-un șablon pregătit anterior sau instalarea kickstart.

*Notă: pentru un sistem de producție, aceasta nu este o idee bună, deoarece managerul funcționează fără rezervă și devine un punct slab. În acest caz, este mai bine să luați în considerare varianta Self-hosted Engine.

Dacă este necesar, procedura de conversie de la Standalone la Self Hosted este detaliată în documentation. În special, trebuie să dăm comanda reinstall host-ului cu suport pentru Hosted Engine.

Pe VM, instalăm CentOS 7 în configurația minimă, apoi actualizăm și repornim sistemul:

$ sudo yum update -y && sudo reboot

Pentru mașina virtuală, este util să instalăm agentul gazdă:

$ sudo yum install open-vm-tools

pentru gazdele VMware ESXi, sau pentru oVirt:

$ sudo yum install ovirt-guest-agent

Conectăm repositoarele și instalăm managerul:

$ sudo yum install https://resources.ovirt.org/pub/yum-repo/ovirt-release43.rpm
$ sudo yum install ovirt-engine

Configurarea de bază:

$ sudo engine-setup

În cea mai mare parte, setările implicite alese sunt suficiente, pentru a le utiliza automat, putem lansa configurarea cu cheia:

$ sudo engine-setup --accept-defaults

Acum ne putem conecta la noul nostru engine la adresa ovirt.lab.example.com. Aici este încă gol, așa că trecem la instalarea hipervizoarelor.

Instalarea ovirt-host

Pe gazda fizică, instalăm CentOS 7 în configurația minimă, apoi conectăm repositoarele, actualizăm și repornim sistemul:

$ sudo yum install https://resources.ovirt.org/pub/yum-repo/ovirt-release43.rpm
$ sudo yum update -y && sudo reboot

Notă: pentru instalare, este convenabil să folosiți instrumente de automatizare a implementării sau instalarea kickstart.

Exemplu de fișier kickstart
Atenție! Partițiile existente sunt șterse automat! Fiți atenți!

# 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

Salvați acest fișier, de exemplu, pe ftp.example.com/pub/labkvm.cfg. Pentru a utiliza scriptul la pornirea instalării OS, trebuie să selectați opțiunea 'Instalare CentOS 7', să activați modul de editare a parametrilor (tasta Tab) și la sfârșit (cu un spațiu, fără ghilimele) să adăugați

' inst.ks=ftp://ftp.example.com/pub/labkvm.cfg'

.
Scriptul de instalare șterge partițiile existente de pe /dev/sda, creând altele noi după recomandările dezvoltatorului (le puteți verifica după instalare cu comanda lsblk). Numele gazdei este setat ca kvm01.lab.example.com (după instalare poate fi modificat cu comanda hostnamectl set-hostname kvm03.lab.example.com), obținerea adresei IP se face automat, fusul orar — Moscova, s-a adăugat suport pentru limba română.

Parola utilizatorului root: monteV1DE0, parola utilizatorului mgmt: metroP0!is.
Atenție! Partițiile existente sunt șterse automat! Fiți atenți!

Repetăm (sau executăm în paralel) pe toate gazdele. De la pornirea unui server 'gol' până la starea de pregătire, având în vedere 2 încărcări prelungite, durează aproximativ 20 de minute.

Adăugarea unui nod în oVirt

Se execută foarte simplu:

Compute → Hosts → New →…

În wizard sunt necesare câmpurile Name (numele afișat, de exemplu, kvm03), Hostname (FQDN, de exemplu, kvm03.lab.example.com) și secțiunea Authentication — utilizator root (neschimbabil) — parolă sau cheia publică SSH.

După ce ați apăsat butonul Ok Veți primi un mesaj «Nu ați configurat gestionarea energiei pentru acest gazdă. Ești sigur că vrei să continui?». Acesta este un comportament normal — gestionarea energiei va fi examinată mai departe, după conectarea cu succes a gazdei. Totuși, dacă mașinile pe care sunt instalate gazdele nu suportă gestionarea (IPMI, iLO, DRAC etc.), recomand să o dezactivați: Compute → Clusters → Default → Edit → Fencing Policy → Enable fencing, dezactivați căsuța.

Dacă pe gazdă nu a fost conectat un depozit oVirt, instalarea va eșua, dar nu este nimic grav — trebuie să-l adăugați, apoi apăsați Install -> Reinstall.

Conectarea gazdei durează nu mai mult de 5-10 minute.

Configurarea interfeței de rețea

Deoarece construim un sistem redundant, conexiunea de rețea trebuie, de asemenea, să asigure o conexiune rezervată, ceea ce se realizează în tab-ul Compute → Hosts → HOST → Network Interfaces — Setup Host Networks.

În funcție de capacitățile echipamentului de rețea și abordările arhitecturii, sunt posibile variante. Cel mai optim este să te conectezi la un stack de switch-uri top-of-rack, astfel încât, în cazul unei defectări, accesibilitatea rețelei să nu fie întreruptă. Vom lua ca exemplu canalul agregat LACP. Pentru a configura canalul agregat, „apucăm” cu mouse-ul adaptorul 2 nefolosit și „îl ducem” la 1. Se va deschide o fereastră Creează un nou bond, unde LACP (Mod 4, agregare dinamică a link-ului, 802.3ad) este selectat în mod implicit. Pe partea switch-urilor se efectuează configurarea obișnuită a grupului LACP. Dacă nu este posibil să construiești un stack de switch-uri, poți utiliza modul Active-Backup (Mod 1). Configurările VLAN vor fi discutate în articolul următor, iar detalii despre recomandările pentru configurarea rețelei pot fi găsite în documentul Ghid de planificare și cerințe preliminare.

Configurarea FC

Fibre Channel (FC) este suportat „din cutie”, iar utilizarea acestuia nu ridică dificultăți. Nu ne vom ocupa de configurarea rețelei de stocare, care include configurarea sistemelor de stocare și zonarea switch-urilor fabric, în cadrul configurației oVirt.

Configurarea FCoE

Din punctul meu de vedere, FCoE nu a câștigat popularitate largă în rețelele de stocare, dar este adesea folosit pe servere ca „ultimul kilometru”, de exemplu, în HPE Virtual Connect.

Configurarea FCoE necesită câțiva pași suplimentari, destul de simpli.

Configurare motor FCoE

Articol pe site-ul Red Hat B.3. Cum să configurezi Red Hat Virtualization Manager pentru a utiliza FCoE
Pe Manager
, cu următoarea comandă adăugăm cheia în manager și îl repornim:


$ sudo engine-config -s UserDefinedNetworkCustomProperties='fcoe=^((enable|dcb|auto_vlan)=(yes|no),?)*$'
$ sudo systemctl restart ovirt-engine.service

Configurare nod FCoE

Pe oVirt-Hosts trebuie să instalezi

$ sudo yum install vdsm-hook-fcoe

Apoi, configurarea obișnuită a FCoE, articol pe Red Hat: 25.5. Configurarea unei interfețe Fibre Channel over Ethernet.

Pentru Broadcom CNA ne uităm în plus la Ghidul utilizatorului Configurarea FCoE pentru adaptoare bazate pe Broadcom.

Asigură-te că pachetele (care sunt incluse în minimal) sunt instalate:

$ sudo yum install fcoe-utils lldpad

Apoi, configurarea propriu-zisă (în loc de ens3f2 și ens3f3 introducem numele CNA-urilor conectate la rețeaua de stocare):

$ 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

Este important: dacă interfața de rețea suportă hardware DCB/DCBX, parametrul DCB_REQUIRED trebuie setat la no.

DCB_REQUIRED="yes" → #DCB_REQUIRED="yes"

Apoi, trebuie să ne asigurăm că adminStatus este dezactivat pe toate interfețele, inclusiv pe cele fără FCoE activat:

$ sudo lldptool set-lldp -i ens3f0 adminStatus=disabled
...
$ sudo lldptool set-lldp -i ens3f3 adminStatus=disabled

Dacă există alte interfețe de rețea, poți activa LLDP:

$ sudo systemctl start lldpad
$ sudo systemctl enable lldpad

Așa cum s-a menționat anterior, dacă se folosește DCB/DCBX hardware, configurarea DCB_REQUIRED trebuie activată în no și acest pas poate fi omis.

$ 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

Pentru interfețele de rețea, verificați dacă auto-start este activat:

$ sudo vim /etc/sysconfig/network-scripts/ifcfg-ens3f2
$ sudo vim /etc/sysconfig/network-scripts/ifcfg-ens3f3

ONBOOT=yes

Vizualizați interfețele FCoE configurate, ieșirea comenzii nu ar trebui să fie goală.

$ sudo fcoeadm -i

Configurarea ulterioară a FCoE se realizează la fel ca pentru FC obișnuit.

Apoi urmează configurarea sistemelor și rețelei de stocare - zonarea, gazdele SAN, crearea și prezentarea volumelor/LUN, după care stocarea poate fi conectată la gazdele ovirt: Storage → Domains → New Domain.

Domain Function rămâne Data, Storage Type - Fibre Channel, Host - oricare, nume - de exemplu, storNN-volMM.

Cu siguranță sistemul dvs. de stocare permite conectarea nu doar a rezervării căilor, ci și a echilibrării. Multe sisteme moderne sunt capabile să transfere date prin toate căile în mod optim (ALUA active/active).

Pentru a activa toate căile, trebuie configurată multipathing-ul, despre care se va discuta în articolele următoare.

Configurarea NFS și iSCSI se face în mod similar.

Stocarea imaginilor ISO

Pentru instalarea OS-ului, sunt necesare fișierele lor de instalare, cele mai frecvente fiind disponibile sub formă de imagini ISO. Poate fi utilizat calea încorporată, dar pentru a lucra cu imaginile în oVirt a fost dezvoltat un tip special de stocare - ISO, care poate fi direcționat către un server NFS. Îi adăugăm:

Storage → Domains → New Domain,
Domain Function → ISO,
Export Path - de exemplu, mynfs01.example.com:/exports/ovirt-iso (la momentul conectării folderul trebuie să fie gol, managerul trebuie să aibă posibilitatea de a scrie în el),
Nume - de exemplu, mynfs01-iso.

Pentru stocarea imaginilor, managerul va crea o structură
/exports/ovirt-iso/<some UUID>/images/11111111-1111-1111-1111-111111111111/

Dacă pe serverul nostru NFS există deja imagini ISO, pentru a economisi spațiu, este convenabil să le legați în acest folder în loc să copiați fișierele.

Prima VM

În acest stadiu, se poate crea deja prima mașină virtuală, se poate instala un sistem de operare și software de aplicație pe ea.

Compute → Virtual Machines → New

Pentru noua mașină, specificați numele (Name), creați un disc (Instance Images → Create) și conectați interfața de rețea (Instantiate VM network interfaces by picking a vNIC profile → selectați din listă momentan singurul ovirtmgmt).

Pe partea clientului este necesar un browser modern și client SPICE pentru interacțiunea cu consola.

Prima mașină a fost pornită cu succes. Cu toate acestea, pentru o funcționare mai completă a sistemului, este necesară realizarea unui set suplimentar de configurații, despre care vom continua în următoarele articole.

Sursa: habr.com

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster