Ця стаття - наступна в циклі по oVirt, початок .
Статті
- Установка менеджера (ovirt-engine) та гіпервізорів (hosts) — Ми тут
Отже, розглянемо питання первинної установки компонентів ovirt-engine та ovirt-host.
Більш докладно процеси встановлення завжди можна подивитися в .
Зміст
Установка ovirt-engine
Для Engine мінімальні вимоги 2 ядра/4 ГіБ ОЗУ/25 ГіБ сховища. Рекомендовані - від 4 ядер/16 ГіБ ОЗУ/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-host
На фізичний хост встановлюємо CentOS 7 у мінімальній конфігурації, далі підключаємо репозиторій, оновлюємо та перезавантажуємо систему:
$ sudo yum install https://resources.ovirt.org/pub/yum-repo/ovirt-release43.rpm
$ sudo yum update -y && sudo reboot
Примітка: для встановлення зручно використовувати засоби автоматизації розгортання або встановлення 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
Збережіть цей файл, наприклад, на . Для використання сценарію при запуску установки ОС слід вибрати пункт '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.
Після натискання кнопки Ok Ви отримаєте повідомлення «Якщо configured Power Management for this Host. Are you sure you want to continue?». Це нормально - управління живленням ми розглянемо далі після успішного підключення хоста. Однак, якщо машини, на які встановлені хости, не підтримує керування (IPMI, iLO, DRAC тощо), рекомендую його вимкнути: Compute → Clusters → Default → Edit → Fencing Ploicy → Enable fencing, прибрати галку.
Якщо на хості не був підключений репозиторій oVirt, установка закінчиться невдачею, але нічого страшного треба його додати, потім натиснути Install -> Reinstall.
Підключення хоста займає трохи більше 5-10 хвилин.
Налаштування мережного інтерфейсу
Оскільки ми будуємо стійку до відмови систему, мережне підключення також повинно забезпечувати резервоване підключення, що і виконується на вкладці Compute → Hosts → HOST → Network Interfaces — Setup Host Networks.
Залежно від можливостей вашого мережного обладнання та підходів до архітектури, можливі варіанти. Найкраще підключатися до стека top-of-rack комутаторів, щоб при відмові одного мережева доступність не перервалася. Розглянемо з прикладу агрегованого каналу LACP. Для налаштування агрегованого каналу "взяти" мишкою 2-й незадіяний адаптер і "відвезти" до 1-го. Відкриється вікно Create New Bond, де LACP (Mode 4, Dynamic link aggregation, 802.3ad) вибрано за замовчуванням. На стороні комутаторів виконується звичайне налаштування групи LACP. Якщо немає можливості побудувати стек комутаторів, можна використовувати режим Active-Backup (Mode 1). Налаштування VLAN розглянемо в наступній статті, а докладніше з рекомендаціями щодо налаштування мережі у документі .
Налаштування FC
Fibre Channel (FC) підтримується "з коробки", його використання складнощів не викликає. Налаштування мережі зберігання, що включає налаштування систем зберігання та зонування fabric комутаторів у рамках налаштування oVirt ми не будемо.
Налаштування FCoE
FCoE на мій погляд так і не набув широкого поширення в мережах зберігання, але часто застосовується на серверах як «остання миля», напр., в HPE Virtual Connect.
Налаштування FCoE потребує додаткових нескладних кроків.
Setup FCoE Engine
Стаття на сайті Red Hat , наступною командою додаємо ключ до менеджера і перезапускаємо його:
$ sudo engine-config -s UserDefinedNetworkCustomProperties='fcoe=^((enable|dcb|auto_vlan)=(yes|no),?)*$'
$ sudo systemctl restart ovirt-engine.service
Setup Node FCoE
На oVirt-Host'ах потрібно встановити
$ sudo yum install vdsm-hook-fcoeДалі звичайне налаштування FCoE, стаття на Red Hat: .
Для Broadcom CNA додатково дивимося .
Переконатись, що встановлені пакети (вже йдуть у minimal):
$ 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 (на момент підключення папка повинна бути порожньою, менеджер повинен мати можливість писати в неї),
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).
На стороні клієнта потрібний сучасний браузер і для взаємодії з консоллю.
Перша машина успішно запущена. Однак для повнішої роботи системи потрібно виконати ряд додаткових налаштувань, про що продовжимо в наступних статтях.
Джерело: habr.com
