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. Първа ВМ

Инсталиране на 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.

На ВМ инсталираме 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.
Внимание! Съществуващите дялове се изтриват автоматично! Бъдете внимателни!

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

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

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

Compute → Hosts → New →…

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

След натискане на бутона Ок Получавате съобщение «You haven’t configured Power Management for this Host. Are you sure you want to continue?». Това е нормално — управлението на захранването ще разгледаме по-късно, след успешното свързване на хоста. Въпреки това, ако машините, на които са инсталирани хостовете, не поддържат управление (IPMI, iLO, DRAC и т.н.), ви препоръчвам да го деактивирате: Compute → Clusters → Default → Edit → Fencing Policy → Enable fencing, махнете отметката.

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

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

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

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

Възможностите на вашето мрежово оборудване и архитектурата позволяват различни опции. Най-добре е да се свържете с стек от комутатори top-of-rack, за да избегнете прекъсване на мрежовата достъпност при отказ на един от тях. Нека разгледаме примера на агрегирания канал 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=„да“ → #DCB_REQUIRED=„да“

Следва да се уверите, че 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-хостове: 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 (в момента на свързване папката трябва да е празна, мениджърът трябва да има възможност да записва в нея),
Name — напр., mynfs01-iso.

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

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

Първа ВМ

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

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