oVirt em 2 horas. Parte 2. Instalando o gerenciador e os hosts

Este artigo é o próximo da série oVirt, o início aqui.

Artigos

  1. Introdução
  2. Instalando o gerenciador (ovirt-engine) e hipervisores (hosts) - Chegamos
  3. Configurações Avançadas

Portanto, vamos considerar os problemas da instalação inicial dos componentes ovirt-engine e ovirt-host.

Você sempre pode ver o processo de instalação com mais detalhes em documentação.

Conteúdo

  1. Instalando o motor ovirt
  2. Instalando ovirt-host
  3. Adicionando um nó ao oVirtN
  4. Configuração da interface de rede
  5. configuração FC
  6. Configuração do FCoE
  7. Armazenamento de imagens ISO
  8. Primeira VM

Instalando o motor ovirt

Os requisitos mínimos do mecanismo são 2 núcleos/4 GiB de RAM/25 GiB de armazenamento. Recomendado - de 4 núcleos / 16 GiB de RAM / 50 GiB de armazenamento. Usamos a opção Standalone Manager quando o mecanismo é executado em uma máquina física ou virtual dedicada fora de um cluster gerenciado. Para nossa instalação, usaremos uma máquina virtual, por exemplo, em um ESXi* autônomo. É conveniente usar ferramentas de automação de implantação ou clonar de um modelo previamente preparado ou instalar o kickstart.

*Nota: Esta é uma má ideia para um sistema de produção, pois o gerente trabalha sem reservas e se torna um gargalo. Nesse caso, é melhor considerar a opção Mecanismo auto-hospedado.

Se necessário, o procedimento para converter Standalone para Self Hosted é descrito em detalhes em documentação. Em particular, o host precisa receber um comando de reinstalação com o Hosted Engine ativado.

Na VM, instale o CentOS 7 na configuração mínima, atualize e reinicie o sistema:

$ sudo yum update -y && sudo reboot

Para uma máquina virtual, é útil instalar um agente convidado:

$ sudo yum install open-vm-tools

para hosts VMware ESXi ou para oVirt:

$ sudo yum install ovirt-guest-agent

Conectamos o repositório e instalamos o gerenciador:

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

Configuração básica:

$ sudo engine-setup

Na maioria dos casos, as configurações padrão são suficientes, para usá-las automaticamente, você pode executar a configuração com a chave:

$ sudo engine-setup --accept-defaults

Agora podemos nos conectar ao nosso novo motor em ovirt.lab.example.com. Ainda está vazio, então vamos instalar os hipervisores.

Instalando ovirt-host

No host físico, instale o CentOS 7 na configuração mínima, conecte o repositório, atualize e reinicie o sistema:

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

Nota: É conveniente usar ferramentas de automação de implantação ou uma instalação kickstart para instalação.

Exemplo de arquivo Kickstart
Atenção! As seções existentes são excluídas automaticamente! Tenha cuidado!

# 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

Salve este arquivo, por exemplo, para ftp.example.com/pub/labkvm.cfg. Para utilizar o script ao iniciar a instalação do SO, selecione o item 'Instalar CentOS 7', habilite o modo de edição de parâmetros (tecla Tab) e ao final (com espaço, sem aspas) adicione

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

.
O script de instalação remove as partições existentes em /dev/sda, cria novas em recomendações do desenvolvedor (é conveniente visualizá-los após a instalação com o comando lsblk). O nome do host é definido como kvm01.lab.example.com (após a instalação, pode ser alterado com o comando hostnamectl set-hostname kvm03.lab.example.com), a aquisição do endereço IP é automática, o fuso horário é Moscou, idioma russo o suporte foi adicionado.

Senha raiz: monteV1DE0, senha do usuário mgmt: metroP0!is.
Atenção! As seções existentes são excluídas automaticamente! Tome cuidado!

Repita (ou execute em paralelo) em todos os hosts. De ligar o servidor "vazio" ao estado pronto, considerando 2 downloads longos, leva cerca de 20 minutos.

Adicionando um nó ao oVirt

É feito de forma muito simples:

Computação → Hosts → Novo →…

Os campos obrigatórios no assistente são Nome (nome de exibição, por exemplo, kvm03), Nome do host (FQDN, por exemplo, kvm03.lab.example.com) e a seção Autenticação — usuário root (invariável) - senha ou chave pública SSH.

Depois de pressionar o botão Ok Você receberá uma mensagem "Você não configurou o gerenciamento de energia para este host. Você tem certeza que quer continuar?". Isso é normal - veremos o gerenciamento de energia mais tarde, depois que o host for conectado com sucesso. No entanto, se as máquinas nas quais os hosts estão instalados não suportam gerenciamento (IPMI, iLO, DRAC, etc.), recomendo desativá-lo: Compute → Clusters → Default → Edit → Fencing Ploicy → Enable fencing, desmarque-o.

Se o repositório oVirt não estiver conectado ao host, a instalação falhará, mas tudo bem - você precisa adicioná-lo e clicar em Instalar -> Reinstalar.

A conexão do host não leva mais que 5 a 10 minutos.

Configuração da interface de rede

Como estamos construindo um sistema tolerante a falhas, a conexão de rede também deve fornecer uma conexão redundante, o que é feito na aba Compute → Hosts → HOST → Interfaces de rede - Redes host de configuração.

Dependendo das capacidades do seu equipamento de rede e abordagens de arquitetura, as opções são possíveis. É melhor conectar-se a uma pilha de switches top-of-rack para que, se um deles falhar, a disponibilidade da rede não seja interrompida. Considere o exemplo de um canal LACP agregado. Para configurar um canal agregado, "pegue" o 2º adaptador não utilizado com o mouse e "leve-o" para o 1º. Uma janela se abrirá Criar novo vínculo, onde LACP (Modo 4, agregação de link dinâmico, 802.3ad) é selecionado por padrão. No lado do switch, a configuração usual do grupo LACP é executada. Se não for possível construir uma pilha de switches, você pode usar o modo Active-Backup (Modo 1). Consideraremos as configurações de VLAN no próximo artigo e com mais detalhes com recomendações para configurar uma rede no documento Guia de planejamento e pré-requisitos.

configuração FC

O Fibre Channel (FC) é compatível imediatamente e é fácil de usar. Não configuraremos uma rede de armazenamento, incluindo a configuração de sistemas de armazenamento e comutadores de malha de zoneamento como parte da configuração do oVirt.

Configuração do FCoE

O FCoE, na minha opinião, não se difundiu nas redes de armazenamento, mas costuma ser usado em servidores como uma "última milha", por exemplo, no HPE Virtual Connect.

A configuração do FCoE requer etapas adicionais simples.

Configurar Mecanismo FCoE

Artigo no site da Red Hat B.3. Como configurar o Red Hat Virtualization Manager para usar o FCoE
No gerente
, adicione a chave ao gerenciador com o seguinte comando e reinicie-o:


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

Nó de Configuração FCoE

No oVirt-Hosts você precisa instalar

$ sudo yum install vdsm-hook-fcoe

Aqui está a configuração usual do FCoE, artigo da Red Hat: 25.5. Configurando uma interface Fibre Channel sobre Ethernet.

Para Broadcom CNA, procure adicionalmente Guia do usuário Configuração de FCoE para adaptadores baseados em Broadcom.

Verifique se os pacotes estão instalados (já vá para o mínimo):

$ sudo yum install fcoe-utils lldpad

A seguir, a configuração propriamente dita (em vez de ens3f2 e ens3f3 substituímos os nomes dos CNAs incluídos na rede de armazenamento):

$ 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 o hardware da interface de rede suportar DCB/DCBX, o parâmetro DCB_REQUIRED deve ser definido como não.

DCB_REQUIRED="sim" → #DCB_REQUIRED="sim"

Em seguida, certifique-se de que adminStatus esteja desabilitado em todas as interfaces, incl. sem FCoE habilitado:

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

Se houver outras interfaces de rede, você pode habilitar o LLDP:

$ sudo systemctl start lldpad
$ sudo systemctl enable lldpad

Conforme mencionado anteriormente, se um DCB/DCBX de hardware for usado, a configuração DCB_REQUIRED deve ser incluída em não e esta etapa pode ser pulada.

$ 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, verifique se a inicialização automática está habilitada:

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

ONBOOT=yes

Veja as interfaces FCoE configuradas, a saída do comando não deve estar vazia.

$ sudo fcoeadm -i

A configuração subsequente do FCoE é feita como para o FC normal.

Segue-se a configuração de sistemas e redes de armazenamento - zoneamento, hosts SAN, criação e apresentação de volumes / LUNs, após o que o armazenamento pode ser conectado a hosts ovirt: Armazenamento → Domínios → Novo domínio.

Função de domínio deixe Dados, Tipo de armazenamento - Fibre Channel, Host - qualquer, nome - por exemplo, storNN-volMM.

Certamente seu sistema de armazenamento permite conectar não apenas caminhos redundantes, mas também balanceamento. Muitos sistemas modernos são capazes de transmitir dados ao longo de todos os caminhos de maneira igualmente otimizada (ALUA ativo/ativo).

Para habilitar todos os caminhos no estado ativo, você precisa configurar o multipassing, mais sobre isso nos próximos artigos.

A configuração de NFS e iSCSI é feita de maneira semelhante.

Armazenamento de imagens ISO

Para instalar o sistema operacional, você precisará dos arquivos de instalação, geralmente disponíveis como imagens ISO. Você pode usar o caminho integrado, mas para trabalhar com imagens, oVirt desenvolveu um tipo especial de armazenamento - ISO, que pode ser direcionado para um servidor NFS. Vamos adicioná-lo:

Armazenamento → Domínios → Novo domínio,
Função de domínio → ISO,
Export Path - por exemplo, mynfs01.example.com:/exports/ovirt-iso (no momento da conexão, a pasta deve estar vazia, o gerente deve poder gravar nela),
Nome - por exemplo, mynfs01-iso.

Para armazenar as imagens, o gestor criará uma estrutura
/exportações/ovirt-iso/<some UUID>/images/11111111-1111-1111-1111-111111111111/

Se já houver imagens ISO em nosso servidor NFS, para economizar espaço, é conveniente vinculá-las a esta pasta em vez de copiar arquivos.

Primeira VM

Nesta fase, você já pode criar a primeira máquina virtual, instalar o sistema operacional e o software aplicativo nela.

Computação → Máquinas Virtuais → Novo

Para a nova máquina, especifique um nome (Nome), crie um disco (Instance Images → Create) e conecte uma interface de rede (Instantiate VM network interfaces selecionando um perfil vNIC → selecione o único ovirtmgmt da lista até agora).

Do lado do cliente, você precisa de um navegador moderno e cliente SPICE para interagir com o console.

A primeira máquina foi lançada com sucesso. No entanto, para uma operação mais completa do sistema, são necessárias várias configurações adicionais, que continuaremos nos próximos artigos.

Fonte: habr.com

Adicionar um comentário