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

Questo articolo è il prossimo della serie su oVirt, l'inizio qui.

Articoli

  1. Introduzione
  2. Installazione di un manager (ovirt-engine) e di hypervisor (host) - Noi siamo qui
  3. Impostazioni avanzate

Consideriamo quindi i problemi dell'installazione iniziale dei componenti ovirt-engine e ovirt-host.

È sempre possibile trovare processi di installazione più dettagliati in documentazione.

contenuto

  1. Installazione di ovirt-engine
  2. Installazione di ovirt-host
  3. Aggiunta di un nodo a oVirtN
  4. Configurazione dell'interfaccia di rete
  5. Configurazione dell'FC
  6. Configurazione di FCoE
  7. Archiviazione di immagini ISO
  8. Prima VM

Installazione di ovirt-engine

Per Engine, i requisiti minimi sono 2 core/4 GiB di RAM/25 GiB di spazio di archiviazione. Consigliato: da 4 core/16 GiB di RAM/50 GiB di spazio di archiviazione. Utilizziamo l'opzione Standalone Manager, quando il motore viene eseguito su una macchina fisica o virtuale dedicata all'esterno di un cluster gestito. Per la nostra installazione prenderemo ad esempio una macchina virtuale su un ESXi* autonomo. È conveniente utilizzare strumenti di automazione della distribuzione o clonazione da un modello precedentemente preparato o installazione kickstart.

*Nota: per un sistema di produzione questa è una cattiva idea perché... il manager lavora senza riserve e diventa un collo di bottiglia. In questo caso è meglio considerare l’opzione Self-hosted Engine.

Se necessario, la procedura per convertire Standalone in Self Hosted è descritta in dettaglio nel documentazione. In particolare, è necessario impartire all'host il comando di reinstallazione con il supporto Hosted Engine.

Installiamo CentOS 7 sulla VM in una configurazione minima, quindi aggiorniamo e riavviamo il sistema:

$ sudo yum update -y && sudo reboot

È utile installare un agente guest per una macchina virtuale:

$ sudo yum install open-vm-tools

per host VMware ESXi o per oVirt:

$ sudo yum install ovirt-guest-agent

Connetti il ​​repository e installa il gestore:

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

Configurazione di base:

$ sudo engine-setup

Nella maggior parte dei casi sono sufficienti le impostazioni predefinite; per utilizzarle in automatico è possibile eseguire la configurazione con il tasto:

$ sudo engine-setup --accept-defaults

Ora possiamo connetterci al nostro nuovo motore su ovirt.lab.esempio.com. Qui è ancora vuoto, quindi passiamo all'installazione degli hypervisor.

Installazione di ovirt-host

Installiamo CentOS 7 in una configurazione minima su un host fisico, 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: è conveniente utilizzare gli strumenti di automazione della distribuzione o l'installazione kickstart per l'installazione.

File kickstart di esempio
Attenzione! Le partizioni esistenti vengono eliminate automaticamente! Fate 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 es. ftp.example.com/pub/labkvm.cfg. Per utilizzare lo script all'avvio dell'installazione del sistema operativo, selezionare 'Installa CentOS 7', abilitare la modalità di modifica dei parametri (tasto Tab) e aggiungere alla fine (con uno spazio, senza virgolette)

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

.
Lo script di installazione elimina le partizioni esistenti su /dev/sda e ne crea di nuove raccomandazioni degli sviluppatori (è conveniente visualizzarli dopo l'installazione utilizzando il comando lsblk). Il nome host è impostato come kvm01.lab.example.com (dopo l'installazione è possibile modificarlo con il comando hostnamectl set-hostname kvm03.lab.example.com), l'indirizzo IP viene ottenuto automaticamente, il fuso orario è Mosca, È stato aggiunto il supporto per la lingua russa.

Password utente root: monteV1DE0, password utente mgmt: metroP0!is.
Attenzione! Le partizioni esistenti vengono eliminate automaticamente! Stai attento!

Ripetiamo (o eseguiamo in parallelo) su tutti gli host. Dall'accensione del server “vuoto” allo stato pronto, tenendo conto di 2 download lunghi, occorrono circa 20 minuti.

Aggiunta di un nodo a oVirt

È molto semplice:

Calcolo → Host → Nuovo →…

I campi obbligatori nella procedura guidata sono Nome (nome visualizzato, ad esempio kvm03), Nome host (FQDN, ad esempio kvm03.lab.example.com) e Sezione Autenticazione - utente root (immutabile) — password o chiave pubblica SSH.

Dopo aver fatto clic sul pulsante Ok Riceverai un messaggio "Non hai configurato la gestione del risparmio di energia per questo host. Sei sicuro di voler continuare?". Questo è normale: esamineremo la gestione dell'alimentazione in seguito, dopo che l'host sarà stato connesso con successo. Tuttavia, se le macchine su cui sono installati gli host non supportano la gestione (IPMI, iLO, DRAC, ecc.), consiglio di disabilitarla: Compute → Clusters → Default → Edit → Fencing Ploicy → Enable fencing, deselezionare la casella.

Se il repository oVirt non era connesso all'host, l'installazione fallirà, ma va bene: devi aggiungerlo, quindi fare clic su Installa -> Reinstalla.

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

Configurazione dell'interfaccia di rete

Poiché stiamo costruendo un sistema tollerante agli errori, la connessione di rete deve fornire anche una connessione ridondante, cosa che viene effettuata nella scheda Calcolo → Host → HOST → Interfacce di rete - Configura reti host.

A seconda delle capacità delle apparecchiature di rete e degli approcci architettonici, sono possibili opzioni. È preferibile connettersi a uno stack di switch top-of-rack in modo che, in caso di guasto di uno, la disponibilità della rete non venga interrotta. Diamo un'occhiata all'esempio di un canale LACP aggregato. Per configurare un canale aggregato, “prendere” con il mouse il 2° adattatore non utilizzato e “portarlo” al 1°. Si aprirà una finestra Crea nuovo legame, dove LACP (Modalità 4, Aggregazione di collegamenti dinamici, 802.3ad) è selezionato per impostazione predefinita. Sul lato switch viene eseguita la consueta configurazione del gruppo LACP. Se non è possibile creare uno stack di switch, è possibile utilizzare la modalità Active-Backup (Modalità 1). Esamineremo le impostazioni VLAN nel prossimo articolo e andremo più in dettaglio con consigli per la configurazione di una rete nel documento Guida alla pianificazione e ai prerequisiti.

Configurazione dell'FC

Fibre Channel (FC) è supportato immediatamente ed è facile da usare. Non configureremo una rete di storage, inclusa la configurazione di sistemi di storage e di zonizzazione degli switch di struttura come parte della configurazione di oVirt.

Configurazione di FCoE

FCoE, a mio avviso, non è molto diffuso nelle reti di storage, ma viene spesso utilizzato sui server come “ultimo miglio”, ad esempio in HPE Virtual Connect.

La configurazione di FCoE richiede semplici passaggi aggiuntivi.

Configura il motore FCoE

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


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

Imposta il nodo FCoE

Su oVirt-Hosts è necessario installare

$ sudo yum install vdsm-hook-fcoe

Di seguito è riportata la consueta configurazione di FCoE, articolo su Red Hat: 25.5. Configurazione di un'interfaccia Fibre Channel su Ethernet.

Per Broadcom CNA, guarda anche Guida per l'utente Configurazione FCoE per adattatori basati su Broadcom.

Assicurati che i pacchetti siano installati (già in minimale):

$ sudo yum install fcoe-utils lldpad

Poi c'è la configurazione vera e propria (al posto di ens3f2 e ens3f3 sostituiamo i nomi delle CNA incluse nella 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 nell'hardware, il parametro DCB_REQUIRED deve essere impostato su no.

DCB_REQUIRED=“sì” → #DCB_REQUIRED=“sì”

Successivamente, dovresti assicurarti che adminStatus sia disabilitato su tutte le interfacce, incl. senza FCoE abilitato:

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

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

$ sudo systemctl start lldpad
$ sudo systemctl enable lldpad

Come affermato in precedenza, se viene utilizzato l'hardware DCB/DCBX, l'impostazione DCB_REQUIRED deve essere abilitata 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 successiva configurazione di FCoE viene eseguita come per l'FC normale.

Segue la configurazione dei sistemi e delle reti di storage: suddivisione in zone, host SAN, creazione e presentazione di volumi/LUN, dopodiché lo storage può essere connesso a ovirt-host: Storage → Domini → Nuovo dominio.

Lasciare la funzione dominio come dati, il tipo di archiviazione come Fibre Channel, l'host come qualsiasi, il nome come ad esempio storNN-volMM.

Sicuramente il vostro sistema di stoccaggio permette la connessione non solo per la prenotazione dei percorsi, ma anche per il bilanciamento. Molti sistemi moderni sono in grado di trasmettere dati in modo ugualmente ottimale su tutti i percorsi (ALUA attivo/attivo).

Per abilitare tutti i percorsi nello stato attivo, è necessario configurare il multipasing, maggiori informazioni su questo argomento nei seguenti articoli.

La configurazione di NFS e iSCSI avviene in modo simile.

Archiviazione di immagini ISO

Per installare il sistema operativo, avrai bisogno dei file di installazione, molto spesso disponibili sotto forma di immagini ISO. È possibile utilizzare il percorso integrato, ma per lavorare con le immagini in oVirt è stato sviluppato un tipo speciale di archiviazione: ISO, che può essere indirizzato a un server NFS. Aggiungilo:

Archiviazione → Domini → Nuovo dominio,
Funzione dominio → ISO,
Percorso di esportazione - ad esempio mynfs01.example.com:/exports/ovirt-iso (al momento della connessione, la cartella deve essere vuota, il gestore deve essere in grado di scrivervi),
Nome: ad esempio mynfs01-iso.

Il gestore creerà una struttura per archiviare le immagini
/export/ovirt-iso/<some UUID>/images/11111111-1111-1111-1111-111111111111/

Se sul nostro server NFS sono già presenti immagini ISO, per risparmiare spazio è conveniente collegarle a questa cartella invece di copiare i file.

Prima VM

In questa fase, puoi già creare la prima macchina virtuale, installarvi il sistema operativo e il software applicativo.

Calcolo → Macchine virtuali → Nuovo

Per la nuova macchina, specificare un nome (Nome), creare un disco (Immagini istanza → Crea) e connettere un'interfaccia di rete (Istanziare le interfacce di rete VM selezionando un profilo vNIC → selezionare per ora l'unico ovirtmgmt dall'elenco).

Lato client è necessario un browser moderno e Cliente SPICE per interagire con la console.

La prima macchina è stata lanciata con successo. Tuttavia, per un funzionamento più completo del sistema, sono necessarie una serie di impostazioni aggiuntive, di cui parleremo nei prossimi articoli.

Fonte: habr.com

Aggiungi un commento