oVirt en 2 horas. Parte 2. Instalación do xestor e hosts

Este artigo é o seguinte da serie sobre oVirt, o comezo aquí.

artigos

  1. Introdución
  2. Instalando un xestor (ovirt-engine) e hipervisores (hosts) - Estamos aquí
  3. Configuración adicional

Entón, imos considerar os problemas da instalación inicial dos compoñentes ovirt-engine e ovirt-host.

Os procesos de instalación máis detallados sempre se poden atopar en documentación.

Contido

  1. Instalación de ovirt-engine
  2. Instalando ovirt-host
  3. Engadindo un nodo a oVirtN
  4. Configuración da interface de rede
  5. Configuración FC
  6. Configuración de FCoE
  7. Almacenamento de imaxes ISO
  8. Primeiro VM

Instalación de ovirt-engine

Para Engine, os requisitos mínimos son 2 núcleos/4 GiB de RAM/25 GiB de almacenamento. Recomendado: desde 4 núcleos/16 GiB de RAM/50 GiB de almacenamento. Usamos a opción Xestor autónomo, cando o motor funciona nunha máquina física ou virtual dedicada fóra dun clúster xestionado. Para a nosa instalación, tomaremos unha máquina virtual, por exemplo, nun ESXi* autónomo. É conveniente utilizar ferramentas de automatización de implantación ou clonación desde un modelo previamente preparado ou unha instalación de inicio.

*Nota: para un sistema de produción esta é unha mala idea porque... o xestor traballa sen reservas e convértese nun pescozo de botella. Neste caso, é mellor considerar a opción Motor autoaloxado.

Se é necesario, o procedemento para converter Standalone en Self Hosted descríbese en detalle en documentación. En particular, o host debe recibir o comando de reinstalación con compatibilidade con Hosted Engine.

Instalamos CentOS 7 na máquina virtual nunha configuración mínima, despois actualizamos e reiniciamos o sistema:

$ sudo yum update -y && sudo reboot

É útil instalar un axente convidado para unha máquina virtual:

$ sudo yum install open-vm-tools

para hosts VMware ESXi ou para oVirt:

$ sudo yum install ovirt-guest-agent

Conecta o repositorio e instala o xestor:

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

Configuración básica:

$ sudo engine-setup

Na maioría dos casos, a configuración predeterminada é suficiente; para usalas automaticamente, pode executar a configuración coa clave:

$ sudo engine-setup --accept-defaults

Agora podemos conectarnos ao noso novo motor en ovirt.lab.example.com. Aínda está baleiro aquí, así que pasemos á instalación de hipervisores.

Instalando ovirt-host

Instalamos CentOS 7 nunha configuración mínima nun host físico, despois conectamos o repositorio, actualizamos e reiniciamos o sistema:

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

Nota: é conveniente utilizar ferramentas de automatización de implantación ou instalación de inicio rápido para a instalación.

Exemplo de ficheiro kickstart
Atención! As particións existentes elimínanse automaticamente! Teña coidado!

# 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

Garda este ficheiro, p. ex. ftp.example.com/pub/labkvm.cfg. Para usar o script ao iniciar a instalación do SO, seleccione "Instalar CentOS 7", active o modo de edición de parámetros (tecla Tab) e engada ao final (cun ​​espazo, sen comiñas)

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

.
O script de instalación elimina as particións existentes en /dev/sda, crea outras novas recomendacións dos desenvolvedores (É conveniente velos despois da instalación usando o comando lsblk). O nome de host establécese como kvm01.lab.example.com (despois da instalación, pode cambialo co comando hostnamectl set-hostname kvm03.lab.example.com), o enderezo IP obtense automaticamente, a zona horaria é Moscova, Engadiuse soporte para o ruso.

Contrasinal de usuario root: monteV1DE0, contrasinal de usuario de mgmt: metroP0!is.
Atención! As particións existentes elimínanse automaticamente! Ten coidado!

Repetimos (ou executamos en paralelo) en todos os hosts. Desde activar un servidor "baleiro" ata estar listo, tendo en conta 2 descargas longas, leva uns 20 minutos.

Engadindo un nodo a oVirt

É moi sinxelo:

Compute → Anfitrións → Novo →…

Os campos obrigatorios do asistente son Nome (nome para mostrar, por exemplo, kvm03), Nome de host (FQDN, por exemplo, kvm03.lab.example.com) e sección de autenticación - usuario root (inmutable) — contrasinal ou chave pública SSH.

Despois de premer o botón Ok Recibirás unha mensaxe "Non configuraches a xestión de enerxía para este host. Estás seguro de que queres continuar?". Isto é normal: analizaremos a xestión de enerxía máis tarde, despois de que o host se conecte correctamente. Non obstante, se as máquinas nas que están instalados os hosts non admiten a xestión (IPMI, iLO, DRAC, etc.), recoméndoo desactivala: Compute → Clusters → Default → Edit → Fencing Ploicy → Activar fencing, desmarque a caixa.

Se o repositorio de oVirt non estaba conectado ao host, a instalación fallará, pero está ben: debes engadilo e, a continuación, fai clic en Instalar -> Reinstalar.

Conectar o host non leva máis de 5-10 minutos.

Configuración da interface de rede

Dado que estamos a construír un sistema tolerante a fallos, a conexión de rede tamén debe proporcionar unha conexión redundante, que se fai na pestana Compute → Hosts → ACOLLIDA → Interfaces de rede - Configurar redes de host.

Dependendo das capacidades do seu equipo de rede e dos enfoques arquitectónicos, as opcións son posibles. É mellor conectarse a unha pila de conmutadores da parte superior do bastidor para que, se un falla, a dispoñibilidade da rede non se interrompa. Vexamos o exemplo dunha canle LACP agregada. Para configurar unha canle agregada, "colle" co rato o segundo adaptador que non se utiliza e "lévao" ao primeiro. Abrirase unha xanela Crear un novo vínculo, onde LACP (Modo 4, Agregación de ligazóns dinámicas, 802.3ad) está seleccionado por defecto. No lado do interruptor, realízase a configuración habitual do grupo LACP. Se non é posible construír unha pila de interruptores, pode utilizar o modo Active-Backup (Modo 1). Veremos a configuración da VLAN no seguinte artigo e entraremos en máis detalles coas recomendacións para configurar unha rede no documento Guía de planificación e requisitos previos.

Configuración FC

Fibre Channel (FC) é compatible desde a caixa e é fácil de usar. Non configuraremos unha rede de almacenamento, incluída a configuración de sistemas de almacenamento e conmutadores de tecido de zonificación como parte da configuración de oVirt.

Configuración de FCoE

FCoE, na miña opinión, non se estendeu nas redes de almacenamento, pero adoita utilizarse en servidores como a "última milla", por exemplo, en HPE Virtual Connect.

Configurar FCoE require pasos sinxelos adicionais.

Configurar o motor FCoE

Artigo na web de Red Hat B.3. Como configurar Red Hat Virtualization Manager para usar FCoE
Sobre o Xestor
, co seguinte comando engadimos a chave ao xestor e reiniciámolo:


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

Configuración do nodo FCoE

En oVirt-Hosts cómpre instalar

$ sudo yum install vdsm-hook-fcoe

O seguinte é a configuración habitual de FCoE, artigo sobre Red Hat: 25.5. Configuración dunha interface Fibre Channel sobre Ethernet.

Para Broadcom CNA, busque adicionalmente Guía de usuario Configuración FCoE para adaptadores baseados en Broadcom.

Asegúrese de que os paquetes estean instalados (xa en mínimos):

$ sudo yum install fcoe-utils lldpad

A continuación está a propia configuración (en lugar de ens3f2 e ens3f3 substituímos os nomes dos CNA incluídos na rede de almacenamento):

$ 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 a interface de rede admite DCB/DCBX no hardware, o parámetro DCB_REQUIRED debe establecerse en non.

DCB_REQUIRED=“si” → #DCB_REQUIRED="si"

A continuación, debes asegurarte de que adminStatus estea desactivado en todas as interfaces, incl. sen FCoE activado:

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

Se hai outras interfaces de rede, pode activar LLDP:

$ sudo systemctl start lldpad
$ sudo systemctl enable lldpad

Como se indicou anteriormente, se se usa hardware DCB/DCBX, a configuración DCB_REQUIRED debe estar activada en non e este paso pódese omitir.

$ 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

Para interfaces de rede, comprobe se o inicio automático está activado:

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

ONBOOT=yes

Ver as interfaces FCoE configuradas, a saída do comando non debe estar baleira.

$ sudo fcoeadm -i

A configuración posterior de FCoE realízase como para FC normal.

A continuación vén a configuración de sistemas de almacenamento e redes: zonificación, hosts SAN, creación e presentación de volumes/LUN, despois do cal o almacenamento pódese conectar a ovirt-hosts: Almacenamento → Dominios → Novo dominio.

Deixe a función de dominio como datos, o tipo de almacenamento como canle de fibra, o anfitrión como calquera, nomee, por exemplo, storNN-volMM.

Seguramente o teu sistema de almacenamento permite a conexión non só para a reserva de rutas, senón tamén para o equilibrio. Moitos sistemas modernos son capaces de transmitir datos por todos os camiños de forma igualmente óptima (ALUA activo/activo).

Para habilitar todas as rutas no estado activo, cómpre configurar a multipaso, máis sobre isto nos seguintes artigos.

A configuración de NFS e iSCSI realízase dun xeito similar.

Almacenamento de imaxes ISO

Para instalar o sistema operativo, necesitarás os seus ficheiros de instalación, a maioría das veces dispoñibles en forma de imaxes ISO. Podes usar o camiño incorporado, pero para traballar con imaxes en oVirt, desenvolveuse un tipo especial de almacenamento: ISO, que pode estar dirixido a un servidor NFS. Engádeo:

Almacenamento → Dominios → Novo dominio,
Función de dominio → ISO,
Ruta de exportación: por exemplo, mynfs01.example.com:/exports/ovirt-iso (no momento da conexión, o cartafol debe estar baleiro, o xestor debe poder escribir nel),
Nome: por exemplo, mynfs01-iso.

O xestor creará unha estrutura para almacenar imaxes
/exports/ovirt-iso/<some UUID>/images/11111111-1111-1111-1111-111111111111/

Se xa hai imaxes ISO no noso servidor NFS, para aforrar espazo é conveniente vinculalas a este cartafol en lugar de copiar ficheiros.

Primeiro VM

Nesta fase, xa pode crear a primeira máquina virtual, instalar o SO e o software de aplicación nela.

Compute → Máquinas virtuais → Novo

Para a nova máquina, especifique un nome (Nome), cree un disco (Imaxes de instancia → Crear) e conecte unha interface de rede (Instancia interfaces de rede de VM escollendo un perfil vNIC → selecciona o único ovirtmgmt da lista polo momento).

No lado do cliente necesitas un navegador moderno e Cliente SPICE para interactuar coa consola.

A primeira máquina foi lanzada con éxito. Non obstante, para un funcionamento máis completo do sistema, son necesarias unha serie de configuracións adicionais, que continuaremos nos seguintes artigos.

Fonte: www.habr.com

Engadir un comentario