oVirt за 2 часа. Част 3. Допълнителни настройки

В тази статия ще разгледаме редица незадължителни, но полезни настройки:

Тази статия е продължение, началото вижте oVirt за 2 часа Част 1 и част 2.

Статии

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

Допълнителни настройки на мениджъра

За удобство на работата ще инсталираме допълнителни пакети:

$ sudo yum install bash-completion vim

За активиране на автоматично допълване на команди, bash-completion трябва да се използва в bash.

Добавяне на допълнителни DNS имена

Това ще се наложи, когато е необходимо да се свържете с мениджъра под алтернативно име (CNAME, псевдоним или просто кратко име без доминен суфикс). По съображения за сигурност, мениджърът позволява връзка само чрез разрешен списък с имена.

Създаваме конфигурационен файл:

$ sudo vim /etc/ovirt-engine/engine.conf.d/99-custom-sso-setup.conf

следното съдържание:

SSO_ALTERNATE_ENGINE_FQDNS="ovirt.example.com some.alias.example.com ovirt"

и рестартираме мениджъра:

$ sudo systemctl restart ovirt-engine

Настройка на удостоверяване чрез AD

oVirt разполага с вградена база данни с потребители, но също така поддържа външни LDAP доставчици, включително AD.

Най-лесният начин за стандартна конфигурация е стартиране на магистрала и рестартиране на мениджъра:

$ sudo yum install ovirt-engine-extension-aaa-ldap-setup
$ sudo ovirt-engine-extension-aaa-ldap-setup
$ sudo systemctl restart ovirt-engine

Пример за работа на магистралата
$ sudo ovirt-engine-extension-aaa-ldap-setup
Достъпни LDAP реализации:
…
3 — Active Directory
…
Моля, изберете: 3
Моля, въведете името на леса на Active Directory: example.com

Моля, изберете протокол за използване (startTLS, ldaps, plain) [startTLS]:
Моля, изберете метод за получаване на PEM кодиран CA сертификат (Файл, URL, Inline, Система, Небезопасен): URL
URL: wwwca.example.com/myRootCA.pem
Въведете DN на потребителя за търсене (например uid=username,dc=example,dc=com или оставете празно за анонимен): CN=oVirt-Engine,CN=Users,DC=example,DC=com
Въведете парола на потребителя за търсене: *парола*
[ INFO ] Опит за свързване с ‘CN=oVirt-Engine,CN=Users,DC=example,DC=com’
Ще използвате ли Single Sign-On за виртуални машини (Да, Не) [Да]:
Моля, посочете име на профил, което ще е видимо за потребителите [example.com]:
Моля, предоставете удостоверения за тестване на потока на влизане:
Въведете име на потребителя: someAnyUser
Въведете паролата на потребителя:
…
[ INFO ] Последователността на влизане е изпълнена успешно
…
Изберете поредицата от тестове за изпълнение (Готово, Прекрати, Влез, Търси) [Готово]:
[ INFO ] Етап: Настройка на транзакцията
…
РЕЗЮМЕ НА НАСТРОЙКИТЕ
…

Използването на магистралата е подходящо за повечето случаи. За сложни конфигурации настройките се изпълняват ръчно. Вижте допълнително в документацията на oVirt, Потребители и роли. След успешното свързване на Engine с AD, в прозореца на свързването ще се появи допълнителен профил, а на раздела Разрешения в системата обекти — възможност за предоставяне на права на потребители и групи AD. Трябва да се отбележи, че външен каталог на потребители и групи може да бъде не само AD, но и IPA, eDirectory и др.

Multipath

В производствена среда системата за съхранение трябва да бъде свързана към хоста чрез няколко независими пътеки за множество входове-изходи. Обикновено в CentOS (а следователно и в oVirt) не възникват проблеми с изграждането на множество пътеки към устройството (find_multipaths yes). Допълнителни настройки за FCoE са описани в част 2. Следва да се обърне внимание на препоръката на производителя на СХД — много производители препоръчват да се използва политика round-robin, докато по подразбиране в Enterprise Linux 7 се използва service-time.

На примера на 3PAR
и документа HPE 3PAR Red Hat Enterprise Linux, CentOS Linux, Oracle Linux и OracleVM Server Implementation Guide EL се създава като Host с Generic-ALUA Persona 2, за него в настройките /etc/multipath.conf се въвеждат следните стойности:

defaults {
           polling_interval      10
           user_friendly_names   no
           find_multipaths       yes
          }
devices {
          device {
                   vendor                   "3PARdata"
                   product                  "VV"
                   path_grouping_policy     group_by_prio
                   path_selector            "round-robin 0"
                   path_checker             tur
                   features                 "0"
                   hardware_handler         "1 alua"
                   prio                     alua
                   failback                 immediate
                   rr_weight                uniform
                   no_path_retry            18
                   rr_min_io_rq             1
                   detect_prio              yes
                   fast_io_fail_tmo         10
                   dev_loss_tmo             "infinity"
                 }
}

След което се дава команда за рестартиране:

systemctl restart multipathd

oVirt за 2 часа. Част 3. Допълнителни настройки
Рис. 1 — политика на множество входове-изходи по подразбиране.

oVirt за 2 часа. Част 3. Допълнителни настройки
Рис. 2 — политика на множество входове-изходи след прилагане на настройките.

Настройка на управление на захранването

Позволява, например, да се извърши хардуерен рестарт на машината, ако Engine не може дълго време да получи отговор от Host-а. Реализира се чрез Fence Agent (агент по ограждане).

Compute -> Hosts -> ХОСТ — Edit -> Управление на захранването, след което включваме "Enable Power Management" и добавяме агента — "Add Fence Agent" -> +.

Указваме типа (например, за iLO5 трябва да укажем ilo4), име/адрес на интерфейса ipmi, както и име/парола на потребителя. Препоръчително е да се създаде отделен потребител (например oVirt-PM) и, в случай на iLO, му се предоставят привилегии:

  • Вход
  • Отдалечен конзолен достъп
  • Отдалечено захранване и нулиране
  • Отдалечени медии
  • Конфигуриране на настройките на iLO
  • Администриране на потребителски акаунти

Не питайте любопитство, это было выбрано на основании опыта. Консольный агент fencing требует меньшего набора прав.

При настройке списков контроля доступа важно учитывать, что агент запускается не на engine, а на ''соседнем'' хосте (так называемом Power Management Proxy), что означает, что если в кластере будет только один узел, управление питанием не будет работать. няма да.

Настройка SSL

Полная официальная инструкция доступна в документацията, Приложение D: oVirt и SSL — Замена SSL/TLS сертификата oVirt Engine.

Сертификат может быть как нашего корпоративного удостоверяющего центра, так и от внешнего коммерческого центра сертификации.

Важное примечание: сертификат предназначен для подключения к менеджеру и не повлияет на взаимодействие между Engine и узлами — они будут использовать самоподписанные сертификаты, выданные Engine.

Изисквания:

  • сертификат, выданный удостоверяющим центром в формате PEM, с полной цепочкой до корневого ЦС (от подчиненного удостоверяющего в начале до корневого в конце);
  • сертификат для Apache, выданный удостоверяющим центром (также дополненный всей цепочкой сертификатов ЦС);
  • приватный ключ для Apache, без пароля.

Предположим, что наш центр сертификации работает на CentOS, называется subca.example.com, а запросы, ключи и сертификаты находятся в каталоге /etc/pki/tls/.

Создаем резервные копии и создаем временный каталог:

$ sudo cp /etc/pki/ovirt-engine/keys/apache.key.nopass /etc/pki/ovirt-engine/keys/apache.key.nopass.`date +%F`
$ sudo cp /etc/pki/ovirt-engine/certs/apache.cer /etc/pki/ovirt-engine/certs/apache.cer.`date +%F`
$ sudo mkdir /opt/certs
$ sudo chown mgmt.mgmt /opt/certs

Загрузка сертификатов, выполняем ее со своей рабочей станции или передаем иным удобным способом:

[myuser@mydesktop] $ scp -3 causer@subca.example.com:/etc/pki/tls/cachain.pem mgmt@ovirt.example.com:/opt/certs
[myuser@mydesktop] $ scp -3 causer@subca.example.com:/etc/pki/tls/private/ovirt.key mgmt@ovirt.example.com:/opt/certs
[myuser@mydesktop] $ scp -3 causer@subca.example.com/etc/pki/tls/certs/ovirt.crt mgmt@ovirt.example.com:/opt/certs

В результате вы должны увидеть все 3 файла:

$ ls /opt/certs
cachain.pem  ovirt.crt  ovirt.key

Установка сертификатов

Копируем файлы и обновляем списки доверия:

$ sudo cp /opt/certs/cachain.pem /etc/pki/ca-trust/source/anchors
$ sudo update-ca-trust
$ sudo rm /etc/pki/ovirt-engine/apache-ca.pem
$ sudo cp /opt/certs/cachain.pem /etc/pki/ovirt-engine/apache-ca.pem
$ sudo cp /opt/certs/ovirt03.key /etc/pki/ovirt-engine/keys/apache.key.nopass
$ sudo cp /opt/certs/ovirt03.crt /etc/pki/ovirt-engine/certs/apache.cer
$ sudo systemctl restart httpd.service

Добавить/обновить конфигурационные файлы:

$ sudo vim /etc/ovirt-engine/engine.conf.d/99-custom-truststore.conf
ENGINE_HTTPS_PKI_TRUST_STORE="/etc/pki/java/cacerts"
ENGINE_HTTPS_PKI_TRUST_STORE_PASSWORD=""
$ sudo vim /etc/ovirt-engine/ovirt-websocket-proxy.conf.d/10-setup.conf
SSL_CERTIFICATE=\/etc\/pki\/ovirt-engine\/certs\/apache.cer
SSL_KEY=\/etc\/pki\/ovirt-engine\/keys\/apache.key.nopass
$ sudo vim \/etc\/ovirt-imageio-proxy\/ovirt-imageio-proxy.conf
# Key file for SSL connections
ssl_key_file = /etc/pki/ovirt-engine/keys/apache.key.nopass
# Certificate file for SSL connections
ssl_cert_file = /etc/pki/ovirt-engine/certs/apache.cer

Следва да рестартираме всички засегнати услуги:

$ sudo systemctl restart ovirt-provider-ovn.service
$ sudo systemctl restart ovirt-imageio-proxy
$ sudo systemctl restart ovirt-websocket-proxy
$ sudo systemctl restart ovirt-engine.service

Готово! Време е да се свържем с мениджъра и да проверим, че връзката е защитена с подписан SSL сертификат.

Архивиране

Къде без нея! В тази секция ще разгледаме архивирането на мениджъра, архивирането на ВМ е отделен въпрос. Архивни копия ще правим веднъж на ден и ще ги съхраняваме по NFS, например на същата система, където сме разположили ISO образите — mynfs01.example.com:\/exports\/ovirt-backup. Не се препоръчва да се съхраняват архиви на същата машина, където работи Engine.

Инсталираме и активираме autofs:

$ sudo yum install autofs
$ sudo systemctl enable autofs
$ sudo systemctl start autofs

Създаваме скрипт:

$ sudo vim \/etc\/cron.daily\/make.oVirt.backup.sh

следното съдържание:

#!/bin/bash

datetime=`date +"%F.%R"`
backupdir="/net/mynfs01.example.com/exports/ovirt-backup"
filename="$backupdir/`hostname --short`.`date +"%F.%R"`"
engine-backup --mode=backup --scope=all --file=$filename.data --log=$filename.log
#uncomment next line for autodelete files older 30 days 
#find $backupdir -type f -mtime +30 -exec rm -f {} ;

Правим файла изпълняем:

$ sudo chmod a+x \/etc\/cron.daily\/make.oVirt.backup.sh

Сега всяка вечер ще получаваме архив от настройките на мениджъра.

Интерфейсът за управление на хостовете

Cockpit — модерен административен интерфейс за Linux системи. В този случай изпълнява роля, близка до уеб интерфейса на ESXi.

oVirt за 2 часа. Част 3. Допълнителни настройки
Рис. 3 — външен вид на панела.

Инсталира се много лесно, нужни са пакетите cockpit и плъгинът cockpit-ovirt-dashboard:

$ sudo yum install cockpit cockpit-ovirt-dashboard -y

Активиране на Cockpit:

$ sudo systemctl enable --now cockpit.socket

Настройка на защитната стена:

sudo firewall-cmd --add-service=cockpit
sudo firewall-cmd --add-service=cockpit --permanent

Сега можем да се свържем с хоста: https:\/[Host IP or FQDN]:9090

VLANs

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

За свързване на други подсистеми, те първо трябва да бъдат описани в конфигурацията: Network -> Networks -> New, като задължително поле е само името; чекбоксът VM Network, разрешаващ машините да използват тази мрежа, е активиран, а за свързването на таг трябва да се активира Enable VLAN tagging, да се запише номерът на VLAN и да се натисне Ок.

Сега трябва да влезем в хостовете Compute -> Hosts -> kvmNN -> Network Interfaces -> Setup Host Networks. Добавената мрежа от дясната страна Unassigned Logical Networks да се прехвърли наляво в Assigned Logical Networks:

oVirt за 2 часа. Част 3. Допълнителни настройки
Рис. 4 — преди добавяне на мрежата.

oVirt за 2 часа. Част 3. Допълнителни настройки
Рис. 5 — след добавяне на мрежата.

За масово свързване на няколко мрежи към хост е удобно при създаването на мрежи да им се присвояват етикет(и) и да се добавят мрежи по етикети.

След създаването на мрежата, хостовете ще преминат в статус Non Operational, докато не завърши добавянето на мрежата към всички възли в кластера. Такова поведение се дължи на характеристиката Require All на таба Cluster при създаване на нова мрежа. В случай, че мрежата не е необходима на всички възли в кластера, тази характеристика може да бъде изключена, след което мрежата при добавяне към хост ще бъде отдясно в секцията Non Required и може да се избере дали да се свърже с конкретен хост.

oVirt за 2 часа. Част 3. Допълнителни настройки
Рис. 6 — избор на характеристиката на мрежовото изискване.

Специфично за HPE

Почти всички производители предлагат инструменти, които улесняват работата с техните продукти. Например, за HPE, полезни са AMS (Agentless Management Service, amsd за iLO5, hp-ams за iLO4) и SSA (Smart Storage Administrator, работа с дисковия контролер) и др.

Свързване на репозитория HPE
Импортираме ключа и свързваме репозиториите HPE:

$ sudo rpm --import https://downloads.linux.hpe.com/SDR/hpePublicKey2048_key1.pub
$ sudo vim /etc/yum.repos.d/mcp.repo

следното съдържание:

[mcp]
name=Management Component Pack
baseurl=http://downloads.linux.hpe.com/repo/mcp/centos/$releasever/$basearch/current/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/GPG-KEY-mcp

[spp]
name=Service Pack for ProLiant
baseurl=http://downloads.linux.hpe.com/SDR/repo/spp/RHEL/$releasever/$basearch/current/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/GPG-KEY-mcp

Преглед на съдържанието на репозитория и информация за пакета (справочно):

$ sudo yum --disablerepo="*" --enablerepo="mcp" list available
$ yum info amsd

Инсталиране и стартиране:

$ sudo yum install amsd ssacli
$ sudo systemctl start amsd

Пример за работа с утилитата за дисковия контролер
oVirt за 2 часа. Част 3. Допълнителни настройки

Засега това е всичко. В следващите статии ще планирам да разкажа за някои основни операции и приложения. Например, как да направим VDI в oVirt.

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

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