oVirt за 2 часа. Част 2. Инсталация на мениджъра и хостовете

Тази статия е следваща в цикъла за oVirt, начало тук..

Статии

  1. Въведение
  2. Инсталиране на мениджъра (ovirt-engine) и хипервизорите (hosts) — Ние сме тук
  3. Допълнителни настройки

Така, да разгледаме въпросите на първоначалното инсталиране на компонентите ovirt-engine и ovirt-host.

По-подробно процесите на инсталиране може винаги да се видят в документацията.

Съдържание

  1. Инсталиране на ovirt-engine
  2. Инсталиране на ovirt-host
  3. Добавяне на възел в oVirtN
  4. Настройка на мрежовия интерфейс
  5. Настройка на FC
  6. Настройка на FCoE
  7. Хранилище на ISO образи
  8. Първа VM

Инсталиране на ovirt-engine

За Engine минималните изисквания са 2 ядра/4 ГиБ RAM/25 ГиБ хранилище. Рекомендованите са от 4 ядра/16 ГиБ RAM/50 ГиБ хранилище. Използваме варианта Standalone Manager, когато engine работи на отделна физическа или виртуална машина извън управлявания клъстер. За нашата инсталация ще вземем виртуална машина напр., на самостоятелен ESXi*. Удобно е да се използват средства за автоматизация на разгръщането или клониране от предварително подготвен шаблон или инсталация с kickstart.

*Забележка: за производствена система това не е добра идея, тъй като мениджърът работи без излишък и става тясно място. В този случай е по-добре да се обмисли вариантът Self-hosted Engine.

При необходимост, процедурата за конвертиране от Standalone в Self Hosted е подробно описана в документацията. В частност, на хоста трябва да се даде команда reinstall с поддръжка на Hosted Engine.

На VM инсталираме CentOS 7 в минимална конфигурация, след което обновяваме и рестартираме системата:

$ sudo yum update -y && sudo reboot

За виртуалната машина е полезно да се инсталира гостовият агент:

$ sudo yum install open-vm-tools

за хостове на VMware ESXi или за oVirt:

$ sudo yum install ovirt-guest-agent

Свързваме хранилището и инсталираме мениджъра:

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

Основна настройка:

$ sudo engine-setup

В повечето случаи избраните по подразбиране настройки са достатъчни; за автоматичното им използване можете да стартирате конфигурацията с ключа:

$ sudo engine-setup --accept-defaults

Сега можем да се свържем с нашия нов engine на адрес ovirt.lab.example.com. Тук още е празно, затова преминаваме към инсталирането на хипервизори.

Инсталиране на ovirt-host

На физическия хост инсталираме CentOS 7 в минимална конфигурация, след което свързваме хранилището, обновяваме и рестартираме системата:

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

Забележка: за инсталацията е удобно да се използват средства за автоматизация на разгръщането или инсталация с kickstart.

Пример за файл kickstart
Внимание! Съществуващите дялове ще бъдат изтрити автоматично! Бъдете внимателни!

# 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

Запазете този файл, например, на ftp.example.com/pub/labkvm.cfg. За да използвате скрипта при стартиране на инсталацията на ОС, трябва да изберете опцията 'Install CentOS 7', да активирате режим на редактиране на параметрите (бутон Tab) и в края (с интервал, без кавички) да добавите

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

.
Инсталационният скрипт изтрива съществуващите дялове на /dev/sda, създава нови според препоръките на разработчика (можете да ги видите след инсталацията с команда lsblk). Името на хоста се назначава като kvm01.lab.example.com (след инсталацията може да се промени с команда hostnamectl set-hostname kvm03.lab.example.com), получаването на IP адреса е автоматично, часовата зона е московска, добавена е поддръжка на руски език.

Парола за потребителя root: monteV1DE0, парола за потребителя mgmt: metroP0!is.
Внимание! Съществуващите дялове ще бъдат изтрити автоматично! Бъдете внимателни!

Повтаряме (или извършваме паралелно) на всички хостове. От включване на „празен“ сървър до готово състояние, с оглед на 2 дълги зареждания, се изискват около 20 минути.

Добавяне на узел в oVirt

Извършва се много лесно:

Compute → Hosts → New →…

В съветника полетата Name (отображаемо име, например, kvm03), Hostname (FQDN, например kvm03.lab.example.com) и секцията Authentication — потребител root (непроменящ се) — парола или SSH Public Key.

След натискване на бутона Добре Ще получите съобщение «Не сте конфигурирали управление на захранването за този хост. Сигурни ли сте, че искате да продължите?». Това е нормално — управлението на захранването ще разгледаме по-късно, след успешното свързване на хоста. Въпреки това, ако машините, на които са инсталирани хостовете, не поддържат управление (IPMI, iLO, DRAC и т.н.), препоръчвам да го деактивирате: Compute → Clusters → Default → Edit → Fencing Policy → Enable fencing, махнете отметката.

Ако репозиторият oVirt не е бил свързан към хоста, инсталацията ще завърши с неуспех, но нищо страшно — трябва да го добавите, след това натиснете Install -> Reinstall.

Свързването на хоста отнема не повече от 5-10 минути.

Настройка на мрежовия интерфейс

Тъй като изграждаме отказоустойчива система, мрежовото свързване също трябва да осигури резервирано свързване, което се извършва на раздела Compute → Hosts → ХОСТ → Network Interfaces — Настройка на мрежите на хоста.

В зависимост от възможностите на вашето мрежово оборудване и архитектурни подходи, са възможни различни варианти. Най-добре е да се свържете с топ-комутационен стек от комутатори, за да не се прекъсне мрежовата достъпност при отказ на един от тях. Нека да разгледаме примера с агрегирания канал LACP. За настройка на агрегирания канал просто вземете втория неактивен адаптер с мишката и го пренесете към първия. Ще се отвори прозорец Създаване на нов канал, където LACP (Режим 4, Динамично агрегиране на връзки, 802.3ad) е избран по подразбиране. От страната на комутаторите се извършва стандартна настройка на LACP групата. Ако няма възможност за изграждане на стек комутатори, можете да използвате режима Active-Backup (Режим 1). Настройките за VLAN ще разгледаме в следващата статия, а подробно с препоръки за настройка на мрежата в документа Насоки за планиране и предварителни условия.

Настройка на FC

Fibre Channel (FC) се поддържа "извън кутията", като неговото използване не предизвиква затруднения. Настройката на мрежата за съхранение, включваща конфигурация на системите за съхранение и зониране на fabric комутаторите в рамките на настройката на oVirt, няма да разгледаме.

Настройка на FCoE

Според мен FCoE не постигна широко разпространение в мрежите за съхранение, но често се използва на сървъри като "последна миля", например в HPE Virtual Connect.

Настройката на FCoE изисква допълнителни, несложни стъпки.

Настройка на FCoE Engine

Статия на сайта на Red Hat B.3. Как да настроим Red Hat Virtualization Manager да използва FCoE
На мениджъра
, с помощта на следната команда добавяте ключа в мениджъра и го рестартирате:


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

Настройка на Node FCoE

На oVirt-Host трябва да се инсталира

$ sudo yum install vdsm-hook-fcoe

Следва обичайната настройка на FCoE, статия на Red Hat: 25.5. Конфигуриране на интерфейс за Fibre Channel over Ethernet.

За Broadcom CNA допълнително разглеждаме Ръководство за потребителя FCoE конфигурация за адаптери на базата на Broadcom.

Уверете се, че пакетите са инсталирани (вече идват в минималната конфигурация):

$ sudo yum install fcoe-utils lldpad

Следва самата настройка (вместо ens3f2 и ens3f3 заменяме имена на CNA, свързани с мрежата за съхранение):

$ 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

Важно: ако мрежовият интерфейс хардуерно поддържа DCB/DCBX, параметърът DCB_REQUIRED трябва да бъде зададен на no.

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

Следва да се уверите, че adminStatus е изключен на всичките интерфейси, включително и без активиран FCoE:

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

Ако има други мрежови интерфейси, можете да активирате LLDP:

$ sudo systemctl start lldpad
$ sudo systemctl enable lldpad

Как вече споменахме, ако се използва хардуерен DCB/DCBX, настройката DCB_REQUIRED трябва да бъде активирана в не и тази стъпка може да бъде пропусната.

$ 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

За мрежовите интерфейси проверете дали автоматичното стартиране е включено:

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

ONBOOT=yes

Преглед на настроените FCoE интерфейси, изходът от командата не трябва да бъде празен.

$ sudo fcoeadm -i

Последващата настройка на FCoE се извършва както за обикновен FC.

Следва настройката на системите и мрежата за съхранение — зониране, SAN хостове, създаване и презентация на томове/LUN, след което хранилището може да бъде свързано към ovirt-host: Storage → Domains → New Domain.

Domain Function оставяме Data, Storage Type — Fibre Channel, Host — произволен, име — например, storNN-volMM.

Сигурно вашата система за съхранение позволява не само резервиране на пътища, но и балансиране. Много съвременни системи могат да предават данни по всички пътища оптимално (ALUA active/active).

За да активирате всички пътища, трябва да настроите мултипасинг, за което ще става дума в следващите статии.

Настройката на NFS и iSCSI се извършва по подобен начин.

Хранилище на ISO образи

За инсталирането на ОС ще са необходими инсталационни файлове, най-често налични под формата на ISO образи. Може да се използва вграденият път, но за работа с образи в oVirt е разработен специален тип хранилище — ISO, който може да бъде насочен към NFS сървър. Добавяме го:

Storage → Domains → New Domain,
Domain Function → ISO,
Export Path — например, mynfs01.example.com:/exports/ovirt-iso (при свързване папката трябва да е празна, мениджърът трябва да има възможност да записва в нея),
Име — например, mynfs01-iso.

За съхранение на образи мениджърът ще създаде структура
/exports/ovirt-iso/<some UUID>/images/11111111-1111-1111-1111-111111111111/

Ако на нашия NFS сървър вече има ISO образи, за икономия на пространство е удобно вместо копиране на файлове да се свържат в тази папка.

Първа VM

На този етап вече можете да създадете първата виртуална машина, да инсталирате на нея ОС и приложение.

Compute → Virtual Machines → New

За новата машина задайте име (Name), създайте диск (Instance Images → Create) и свържете мрежов интерфейс (Instantiate VM network interfaces by picking a vNIC profile → изберете от списъка засега единствения ovirtmgmt).

От страна на клиента е необходим модерен браузър и SPICE клиент за взаимодействие с конзолата.

Първата машина е успешно стартирана. Въпреки това, за по-пълна работа на системата е необходимо да се извършат няколко допълнителни настройки, за които ще продължим в следващите статии.

Източник: habr.com

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster