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
Available LDAP implementations:
...
3 — Active Directory
...
Калі ласка, абярыце: 3
Please enter Active Directory Forest name: example.com

Please select protocol to use (startTLS, ldaps, plain) [startTLS]:
Please select method to obtain PEM encoded CA certificate (File, URL, Inline, System, Insecure): URL
URL: wwwca.example.com/myRootCA.pem
Enter search user DN (для example uid=username,dc=example,dc=com or leave empty for anonymous): CN=oVirt-Engine,CN=Users,DC=example,DC=com
Enter search user password: *password*
[ INFO ] Attempting to bind using 'CN=oVirt-Engine,CN=Users,DC=example,DC=com'
Давайце вы зможаце выкарыстоўваць адзін званак для віртуальных машын (так, не) [Так]:
Please specify profile name that will be visible to users [example.com]:
Please provide credentials для test login flow:
Увядзіце імя карыстальніка: someAnyUser
Enter user password:
...
[ INFO ] Login sequence executed successfully
...
Select test sequence to execute (Done, Abort, Login, Search) [Done]:
[ INFO ] Stage: Transaction setup
...
РЭЗЮМЭ КАНФІГУРАЦЫІ
...

Выкарыстанне майстра падыходзіць для большасці выпадкаў. Для складаных канфігурацый наладкі выконваюцца ўручную. Падрабязней у дакументацыі oVirt, Карыстальнікі і ролі. Пасля паспяховага падлучэння Engine да AD, у акне падлучэння з'явіцца дадатковы профіль, а на ўкладцы Дазволу у аб'ектаў сістэмы - магчымасць выдаваць паўнамоцтвы карыстальнікам і групам AD. Варта адзначыць, што вонкавым каталогам карыстачоў і груп можа быць не толькі AD, але і IPA, eDirectory і інш.

Шматшлях

У вытворчым асяроддзі сістэма захоўвання павінна быць падлучаная да хаста некалькімі незалежнымі шляхамі множнага ўводу-высновы. Як правіла, у 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 -> HOST - Edit -> Power Management, далей уключыць "Enable Power Management" і дадаць агента - "Add Fence Agent" -> +.

Указваем тып (напр., для iLO5 трэба паказаць ilo4), імя/адрас ipmi інтэрфейсу, а таксама імя/пароль карыстальніка. Карыстальніка рэкамендуецца стварыць асобнага (напр., oVirt-PM) і, у выпадку з iLO выдаць яму прывілеі:

  • Увайсці
  • Аддаленая кансоль
  • Virtual Power and Reset
  • Віртуальныя медыя
  • Configure iLO Settings
  • Administer User Accounts

Не пытайце чаму менавіта так, падабрана дасведчаным шляхам. Кансольны fencing agent патрабуе меншага набору правоў.

Пры наладзе спісаў кантролю доступу варта мець на ўвазе, што агент запускаецца не на engine, а на «суседнім» хасце (так званы Power Management Proxy), г.зн., калі ў кластары апынецца толькі адзін вузел, кіраванне сілкаваннем працаваць не будзе.

Настройка SSL

Поўная афіцыйная інструкцыя - у дакументацыі, Appendix D: oVirt і SSL – Replacing the oVirt Engine SSL / TLS Certificate.

Сертыфікат можа быць як нашага карпаратыўнага ЦС, так і знешняга камерцыйнага цэнтра сертыфікацыі.

Важная заўвага: сертыфікат прызначаны для падлучэння да мэнэджэра, не паўплывае на ўзаемадзеянне паміж 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 [email protected]:/etc/pki/tls/cachain.pem [email protected]:/opt/certs
[myuser@mydesktop] $ scp -3 [email protected]:/etc/pki/tls/private/ovirt.key [email protected]:/opt/certs
[myuser@mydesktop] $ scp -3 [email protected]/etc/pki/tls/certs/ovirt.crt [email protected]:/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 сертыфікатам.

Архівацыя

Куды ж без яе! У гэтай секцыі гаворка пойдзе аб архівацыі мэнэджара, архівацыя ВМ - асобнае пытанне. Архіўныя копіі будзем рабіць 1 раз у суткі і складаць па 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

Цяпер кожную ноч мы будзем атрымліваць архіў налад мэнэджара.

Мэнэджмент-інтэрфейс хастоў

Какпіт - сучасны адміністрацыйны інтэрфейс для Linux сістэм. У дадзеным выпадку выконвае ролю, блізкую web-інтэрфейсу 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

VLAN

Больш падрабязна пра сеткі варта пачытаць у дакументацыі. Магчымасцяў шмат, тут апішам падлучэнне віртуальных сетак.

Для падлучэння іншых падсетак іх спачатку варта апісаць у канфігурацыі: 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