oVirt in 2 ore. Parte 2. Installazione del manager e degli host

Questo articolo è il seguito del ciclo su oVirt, inizio qui.

Articoli

  1. Introduzione
  2. Installazione del manager (ovirt-engine) e degli hypervisor (host) — Siamo qui
  3. Impostazioni aggiuntive

Dunque, esaminiamo le questioni relative all'installazione iniziale dei componenti ovirt-engine e ovirt-host.

È possibile visualizzare i processi di installazione sempre in modo più dettagliato su documentazione.

Contenuto

  1. Installazione di ovirt-engine
  2. Installazione di ovirt-host
  3. Aggiungere un nodo in oVirt
  4. Configurazione dell'interfaccia di rete
  5. Configurazione FC
  6. Configurazione FCoE
  7. Archiviazione delle immagini ISO
  8. Primo VM

Installazione di ovirt-engine

Per Engine, i requisiti minimi sono 2 core/4 GiB di RAM/25 GiB di spazio di archiviazione. Consigliati — da 4 core/16 GiB di RAM/50 GiB di spazio di archiviazione. Utilizziamo l'opzione Standalone Manager, quando l'engin funziona su una macchina fisica o virtuale dedicata al di fuori del cluster gestito. Per la nostra installazione, prenderemo una macchina virtuale, ad esempio, su un ESXi stand-alone*. È comodo utilizzare strumenti di automazione per il deployment o la clonazione da un modello precedentemente preparato o l'installazione kickstart.

*Nota: per un sistema di produzione, questa è una cattiva idea, poiché il manager funziona senza ridondanza e diventa un collo di bottiglia. In questo caso, è meglio prendere in considerazione l'opzione Self-hosted Engine.

Se necessario, la procedura di conversione da Standalone a Self Hosted è descritta in dettaglio in documentazione. In particolare, è necessario dare il comando reinstall al host con il supporto del Hosted Engine.

Su VM installiamo CentOS 7 con configurazione minima, quindi aggiorniamo e riavviamo il sistema:

$ sudo yum update -y && sudo reboot

È utile installare l'agente ospite per la macchina virtuale:

$ sudo yum install open-vm-tools

per host VMware ESXi, o per oVirt:

$ sudo yum install ovirt-guest-agent

Colleghiamo il repository e installiamo il gestore:

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

Impostazione di base:

$ sudo engine-setup

Nella maggior parte dei casi, le impostazioni predefinite scelte sono sufficienti, per utilizzarle automaticamente è possibile avviare la configurazione con il flag:

$ sudo engine-setup --accept-defaults

Ora possiamo connetterci al nostro nuovo engine all'indirizzo ovirt.lab.example.com. Qui è ancora vuoto, quindi procediamo all'installazione degli hypervisor.

Installazione di ovirt-host

Su un host fisico installiamo CentOS 7 con configurazione minima, quindi colleghiamo il repository, aggiorniamo e riavviamo il sistema:

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

Nota: per l'installazione è comodo utilizzare strumenti di automazione del deployment o installazioni kickstart.

Esempio di file kickstart
Attenzione! Le partizioni esistenti vengono rimosse automaticamente! Fai attenzione!

# 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 questo file, ad esempio, su ftp.example.com/pub/labkvm.cfg. Per utilizzare lo script all'avvio dell'installazione del sistema operativo, selezionare 'Install CentOS 7', attivare la modalità di modifica dei parametri (tasto Tab) e alla fine (con uno spazio, senza virgolette) aggiungere

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

.
Lo script di installazione rimuove le partizioni esistenti su /dev/sda, creando nuove secondo le raccomandazioni del fornitore (puoi visualizzarle dopo l'installazione con il comando lsblk). Il nome host è impostato come kvm01.lab.example.com (dopo l'installazione può essere modificato con il comando hostnamectl set-hostname kvm03.lab.example.com), l'assegnazione dell'indirizzo IP avviene automaticamente, il fuso orario è di Mosca, ed è stata aggiunta la supporto per la lingua russa.

Password dell'utente root: monteV1DE0, password dell'utente mgmt: metroP0!is.
Attenzione! Le partizioni esistenti vengono rimosse automaticamente! Fai attenzione!

Ripetiamo (o eseguiamo in parallelo) su tutti gli host. Dal riavvio del server 'vuoto' allo stato pronto, considerando 2 lunghi avvii, richiede circa 20 minuti.

Aggiunta di un nodo a oVirt

Si esegue molto semplicemente:

Compute → Hosts → New →…

Nel master sono obbligatori i campi Nome (nome visualizzato, ad esempio, kvm03), Hostname (FQDN, ad esempio, kvm03.lab.example.com) e sezione Autenticazione — utente root (immutabile) — password o Chiave Pubblica SSH.

Dopo aver premuto il pulsante Ok Riceverai un messaggio «Non hai configurato la gestione dell'alimentazione per questo Host. Sei sicuro di voler continuare?». Questo è normale — discuteremo della gestione dell'alimentazione in seguito, dopo la connessione riuscita dell'host. Tuttavia, se le macchine su cui sono installati gli host non supportano la gestione (IPMI, iLO, DRAC, ecc.), ti consiglio di disabilitarla: Compute → Clusters → Default → Modifica → Politica di Fencing → Abilita fencing, togliere il segno di spunta.

Se sul host non è stato collegato il repository oVirt, l'installazione fallirà, ma non preoccuparti — devi aggiungerlo e poi premere Installa -> Reinstalla.

La connessione dell'host richiede non più di 5-10 minuti.

Configurazione dell'interfaccia di rete

Poiché stiamo costruendo un sistema ad alta disponibilità, la connessione di rete deve anche garantire una connessione ridondante, come eseguito nella scheda Compute → Hosts → HOST → Interfacce di Rete — Configura le Reti Host.

A seconda delle capacità dell'hardware di rete e degli approcci architettonici, ci sono diverse opzioni. La soluzione migliore è collegarsi allo stack di switch top-of-rack, in modo che, in caso di guasto, la connettività di rete non venga interrotta. Prendiamo come esempio un canale aggregato LACP. Per configurare il canale aggregato, "prendere" con il mouse il secondo adattatore non utilizzato e "trasportarlo" al primo. Si aprirà una finestra. Crea nuovo bond, dove LACP (Modalità 4, aggregazione link dinamica, 802.3ad) è selezionato per impostazione predefinita. Dallato degli switch, viene eseguita la configurazione standard del gruppo LACP. Se non è possibile costruire uno stack di switch, è possibile utilizzare la modalità Active-Backup (Modalità 1). Affronteremo le impostazioni VLAN nel prossimo articolo, mentre ulteriori raccomandazioni per la configurazione della rete sono contenute nel documento. Guida alla pianificazione e ai prerequisiti.

Configurazione FC

Il Fibre Channel (FC) è supportato "out of the box" e il suo utilizzo non presenta difficoltà. Non affronteremo la configurazione della rete di storage, che include la configurazione dei sistemi di storage e la zonizzazione degli switch fabric nel contesto della configurazione di oVirt.

Configurazione FCoE

A mio avviso, FCoE non ha ancora avuto una diffusione ampia nelle reti di storage, ma viene spesso utilizzato sui server come 'ultimo miglio', ad esempio, in HPE Virtual Connect.

La configurazione di FCoE richiede alcuni passaggi aggiuntivi semplici.

Configura motore FCoE

Articolo sul sito di Red Hat B.3. Come configurare Red Hat Virtualization Manager per utilizzare FCoE
Sul Manager
, con il seguente comando aggiungiamo la chiave al manager e lo riavviamo:


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

Configura nodo FCoE

Sugli oVirt-Host è necessario installare

$ sudo yum install vdsm-hook-fcoe

Poi la configurazione standard di FCoE, articolo su Red Hat: 25.5. Configurazione di un'interfaccia Fibre Channel over Ethernet.

Per Broadcom CNA, controllare anche Guida utente alla configurazione FCoE per adattatori basati su Broadcom.

Assicurarsi che siano installati i pacchetti (già inclusi nel minimal):

$ sudo yum install fcoe-utils lldpad

Poi la configurazione stessa (sostituiamo ens3f2 e ens3f3 con i nomi CNA connessi alla rete di storage):

$ 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

Importante: se l'interfaccia di rete supporta DCB/DCBX a livello hardware, il parametro DCB_REQUIRED deve essere impostato su no.

DCB_REQUIRED=«yes» → #DCB_REQUIRED=«yes»

Successivamente, assicurati che adminStatus sia disabilitato su tutte le interfacce, incluso senza FCoE attivato:

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

Se ci sono altre interfacce di rete, puoi abilitare LLDP:

$ sudo systemctl start lldpad
$ sudo systemctl enable lldpad

Come accennato in precedenza, se si utilizza DCB/DCBX hardware, la configurazione DCB_REQUIRED deve essere attivata in no e questo passaggio può essere saltato.

$ 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

Per le interfacce di rete controlla se l'avvio automatico è abilitato:

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

ONBOOT=yes

Visualizza le interfacce FCoE configurate, l'output del comando non deve essere vuoto.

$ sudo fcoeadm -i

La configurazione successiva di FCoE viene eseguita come per un normale FC.

Successivamente, è necessario configurare i sistemi e la rete di archiviazione — zonizzazione, host SAN, creazione e presentazione di volumi/LUN, dopo di che lo storage può essere connesso agli host ovirt: Storage → Domains → New Domain.

Lasciamo Domain Function su Data, Storage Type — Fibre Channel, Host — qualsiasi, nome — ad esempio, storNN-volMM.

Sicuramente il vostro sistema di archiviazione consente non solo il collegamento per il riservamento dei percorsi, ma anche il bilanciamento. Molti sistemi moderni sono in grado di trasferire dati attraverso tutti i percorsi in modo ottimale (ALUA attivo/attivo).

Per attivare tutti i percorsi, è necessario configurare il multipathing, di cui parleremo nei prossimi articoli.

La configurazione di NFS e iSCSI avviene in modo simile.

Archiviazione delle immagini ISO

Per installare il sistema operativo, sono necessari i file di installazione, che di solito sono disponibili come immagini ISO. È possibile utilizzare il percorso integrato, ma per lavorare con le immagini in oVirt è stato sviluppato un tipo di archiviazione specifico — ISO, che può essere indirizzato a un server NFS. Aggiungiamolo:

Storage → Domains → New Domain,
Domain Function → ISO,
Export Path — ad esempio, mynfs01.example.com:/exports/ovirt-iso (al momento della connessione la cartella deve essere vuota e il manager deve avere i permessi per scriverci),
Name — ad esempio, mynfs01-iso.

Per la conservazione delle immagini, il manager creerà una struttura.
/exports/ovirt-iso/<some UUID>/images/11111111-1111-1111-1111-111111111111/

Se nel nostro server NFS ci sono già immagini ISO, è conveniente invece di copiare i file collegarli in questa cartella per risparmiare spazio.

Primo VM

A questo punto è già possibile creare la prima macchina virtuale, installare un sistema operativo e applicazioni.

Compute → Virtual Machines → New

Per la nuova macchina, specifica il nome (Name), crea il disco (Instance Images → Create) e collega l'interfaccia di rete (Instantiate VM network interfaces by picking a vNIC profile → seleziona dall'elenco l'unico ovirtmgmt per ora).

Dalla parte del cliente, è necessario un browser moderno e il client SPICE per interagire con la console.

La prima macchina è stata avviata con successo. Tuttavia, per un funzionamento completo del sistema, è necessario eseguire alcune configurazioni aggiuntive, di cui parleremo nei prossimi articoli.

Fonte: habr.com

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster