Virt za 2 godziny. Część 3. Dodatkowe ustawienia

W tym artykule przyjrzymy się szeregowi opcjonalnych, ale przydatnych ustawień:

Ten artykuł jest kontynuacją, zobacz oVirt za 2 godziny na początek Часть 1 и Część 2.

Artykuły

  1. Wprowadzenie
  2. Instalowanie menedżera (ovirt-engine) i hiperwizorów (hosty)
  3. Dodatkowe ustawienia - Jesteśmy tutaj

Dodatkowe ustawienia menedżera

Dla wygody zainstalujemy dodatkowe pakiety:

$ sudo yum install bash-completion vim

Aby umożliwić uzupełnianie poleceń, uzupełnianie bash wymaga przejścia na bash.

Dodanie dodatkowych nazw DNS

Będzie to wymagane, gdy będziesz musiał połączyć się z menedżerem przy użyciu alternatywnej nazwy (CNAME, alias lub po prostu krótka nazwa bez sufiksu domeny). Ze względów bezpieczeństwa menedżer zezwala na połączenia tylko przy użyciu listy dozwolonych nazw.

Utwórz plik konfiguracyjny:

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

następującą treść:

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

i zrestartuj menedżera:

$ sudo systemctl restart ovirt-engine

Konfigurowanie uwierzytelniania za pośrednictwem usługi AD

oVirt ma wbudowaną bazę użytkowników, ale obsługiwani są także zewnętrzni dostawcy LDAP, m.in. OGŁOSZENIE.

Najprostszym sposobem typowej konfiguracji jest uruchomienie kreatora i ponowne uruchomienie menedżera:

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

Przykład pracy mistrza
$ sudo ovirt-engine-extension-aaa-ldap-setup
Dostępne implementacje LDAP:
...
3 - Aktywny katalog
...
Proszę wybrać: 3
Proszę wprowadzić nazwę lasu Active Directory: example.com

Wybierz protokół, którego chcesz używać (startTLS, ldaps, zwykły) [startTLS]:
Wybierz metodę uzyskania certyfikatu CA zakodowanego w formacie PEM (plik, adres URL, wbudowany, systemowy, niezabezpieczony): URL
URL: wwwca.example.com/myRootCA.pem
Wpisz nazwę wyróżniającą użytkownika wyszukiwania (na przykład uid=nazwa użytkownika,dc=example,dc=com lub pozostaw puste dla anonimowego): CN=oVirt-Engine,CN=Użytkownicy,DC=przykład,DC=com
Wpisz hasło użytkownika wyszukiwania: *hasło*
[ INFO ] Próba powiązania przy użyciu 'CN=oVirt-Engine,CN=Users,DC=example,DC=com'
Czy zamierzasz używać pojedynczego logowania do maszyn wirtualnych (tak, nie) [Tak]:
Proszę podać nazwę profilu, która będzie widoczna dla użytkowników [przykład.com]:
Podaj dane uwierzytelniające, aby przetestować przepływ logowania:
Wpisz nazwę użytkownika: jakiśAnyUżytkownik
Wpisz hasło użytkownika:
...
[INFO] Sekwencja logowania wykonana pomyślnie
...
Wybierz sekwencję testową do wykonania (Gotowe, Przerwij, Zaloguj się, Szukaj) [Zrobione]:
[INFO] Etap: Konfiguracja transakcji
...
PODSUMOWANIE KONFIGURACJI
...

W większości przypadków odpowiednie jest użycie kreatora. W przypadku skomplikowanych konfiguracji ustawienia przeprowadza się ręcznie. Więcej szczegółów w dokumentacji oVirt, Użytkownicy i role. Po pomyślnym podłączeniu Engine do AD, w oknie połączenia oraz na zakładce pojawi się dodatkowy profil Uprawnienia Obiekty systemowe mają możliwość nadawania uprawnień użytkownikom i grupom AD. Należy zaznaczyć, że zewnętrznym katalogiem użytkowników i grup może być nie tylko AD, ale także IPA, eDirectory itp.

Wielościeżkowy

W środowisku produkcyjnym system pamięci masowej musi być podłączony do hosta za pośrednictwem wielu niezależnych ścieżek we/wy. Z reguły w CentOS (a więc i oVirt) nie ma problemów z montażem wielu ścieżek do urządzenia (find_multipaths tak). Zapisane są dodatkowe ustawienia dla FCoE 2. część. Warto zwrócić uwagę na zalecenie producenta systemu przechowywania danych - wielu zaleca stosowanie polityki okrężnej, ale domyślnie w Enterprise Linux 7 stosowany jest czas serwisowy.

Na przykładzie 3PAR
i dokument Przewodnik wdrażania HPE 3PAR Red Hat Enterprise Linux, CentOS Linux, Oracle Linux i OracleVM Server EL jest tworzony jako Host z Generic-ALUA Persona 2, dla którego w ustawieniach /etc/multipath.conf wprowadzane są następujące wartości:

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"
                 }
}

Po czym wydawane jest polecenie ponownego uruchomienia:

systemctl restart multipathd

Virt za 2 godziny. Część 3. Dodatkowe ustawienia
Ryż. 1 to domyślna zasada dotycząca wielu wejść/wyjść.

Virt za 2 godziny. Część 3. Dodatkowe ustawienia
Ryż. 2 - zasada wielu wejść/wyjść po zastosowaniu ustawień.

Konfigurowanie zarządzania energią

Umożliwia wykonanie np. resetu sprzętowego maszyny, jeżeli Silnik nie może przez dłuższy czas otrzymać odpowiedzi od Hosta. Wdrożone za pośrednictwem agenta ogrodzenia.

Obliczenia -> Hosty -> HOST — Edytuj -> Zarządzanie energią, następnie włącz „Włącz zarządzanie energią” i dodaj agenta — „Dodaj agenta ogrodzenia” -> +.

Wskazujemy typ (przykładowo dla iLO5 należy podać ilo4), nazwę/adres interfejsu ipmi, a także nazwę użytkownika/hasło. Zalecane jest utworzenie osobnego użytkownika (np. oVirt-PM) i w przypadku iLO nadanie mu uprawnień:

  • Zaloguj
  • Zdalna konsola
  • Wirtualne zasilanie i resetowanie
  • Wirtualne media
  • Skonfiguruj ustawienia iLO
  • Zarządzaj kontami użytkowników

Nie pytajcie dlaczego tak jest, zostało to wybrane empirycznie. Agent ogrodzenia konsoli wymaga mniej uprawnień.

Konfigurując listy kontroli dostępu należy pamiętać, że agent działa nie na silniku, a na „sąsiednim” hoście (tzw. Power Management Proxy), czyli jeśli w klastrze jest tylko jeden węzeł, zarządzanie energią będzie działać nie będzie.

Konfigurowanie protokołu SSL

Pełne oficjalne instrukcje - w dokumentacja, Dodatek D: oVirt i SSL — Zastąpienie certyfikatu SSL/TLS oVirt Engine.

Certyfikat może pochodzić z naszego korporacyjnego urzędu certyfikacji lub z zewnętrznego komercyjnego urzędu certyfikacji.

Ważna uwaga: Certyfikat przeznaczony jest do łączenia się z menadżerem i nie będzie miał wpływu na komunikację pomiędzy Silnikiem a węzłami - będą one korzystać z certyfikatów z podpisem własnym wydanych przez Silnik.

wymagania:

  • certyfikat wystawiającego urzędu certyfikacji w formacie PEM, z całym łańcuchem aż do głównego urzędu certyfikacji (od podrzędnego urzędu wystawiającego na początku do głównego urzędu certyfikacji na końcu);
  • certyfikat dla Apache wydany przez wystawiający CA (uzupełniony także całym łańcuchem certyfikatów CA);
  • klucz prywatny dla Apache, bez hasła.

Załóżmy, że nasz wystawiający urząd certyfikacji działa w systemie CentOS o nazwie subca.example.com, a żądania, klucze i certyfikaty znajdują się w katalogu /etc/pki/tls/.

Wykonujemy kopie zapasowe i tworzymy katalog tymczasowy:

$ 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

Pobierz certyfikaty, wykonaj je ze swojej stacji roboczej lub przenieś w inny wygodny sposób:

[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

W rezultacie powinieneś zobaczyć wszystkie 3 pliki:

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

Instalowanie certyfikatów

Skopiuj pliki i zaktualizuj listy zaufanych:

$ 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

Dodaj/zaktualizuj pliki konfiguracyjne:

$ 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

Następnie uruchom ponownie wszystkie usługi, których to dotyczy:

$ 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

Gotowy! Czas połączyć się z menadżerem i sprawdzić, czy połączenie jest chronione podpisanym certyfikatem SSL.

Archiwizacja

Gdzie byśmy byli bez niej? W tej sekcji porozmawiamy o archiwizacji menedżerskiej, archiwizacja maszyn wirtualnych to osobne zagadnienie. Raz dziennie będziemy robić kopie archiwalne i przechowywać je np. poprzez NFS w tym samym systemie, w którym umieściliśmy obrazy ISO - mynfs1.example.com:/exports/ovirt-backup. Nie zaleca się przechowywania archiwów na tym samym komputerze, na którym działa Silnik.

Zainstaluj i włącz autofs:

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

Stwórzmy skrypt:

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

następującą treść:

#!/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 {} ;

Uczynienie pliku wykonywalnym:

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

Teraz co wieczór będziemy otrzymywać archiwum ustawień menedżera.

Interfejs zarządzania hostem

Kabina pilota — nowoczesny interfejs administracyjny dla systemów Linux. Pełni w tym przypadku rolę zbliżoną do interfejsu sieciowego ESXi.

Virt za 2 godziny. Część 3. Dodatkowe ustawienia
Ryż. 3 — wygląd panelu.

Instalacja jest bardzo prosta, potrzebujesz pakietów kokpitu i wtyczki Cockpit-ovirt-dashboard:

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

Włączanie Kokpitu:

$ sudo systemctl enable --now cockpit.socket

Konfiguracja zapory:

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

Teraz możesz połączyć się z hostem: https://[IP hosta lub FQDN]:9090

VLAN

Powinieneś przeczytać więcej o sieciach w dokumentacja. Możliwości jest wiele, tutaj opiszemy łączenie sieci wirtualnych.

Aby podłączyć inne podsieci należy je najpierw opisać w konfiguracji: Sieć -> Sieci -> Nowa, tutaj polem wymaganym jest jedynie nazwa; Pole wyboru Sieć VM, które pozwala maszynom na korzystanie z tej sieci, jest włączone, ale aby połączyć tag, musi być włączone Włącz tagowanie VLAN, wprowadź numer VLAN i kliknij OK.

Teraz musisz przejść do Hosty obliczeniowe -> Hosty -> kvmNN -> Interfejsy sieciowe -> Skonfiguruj sieci hostów. Przeciągnij dodaną sieć z prawej strony Nieprzypisanych sieci logicznych w lewo do Przydzielonych sieci logicznych:

Virt za 2 godziny. Część 3. Dodatkowe ustawienia
Ryż. 4 - przed dodaniem sieci.

Virt za 2 godziny. Część 3. Dodatkowe ustawienia
Ryż. 5 - po dodaniu sieci.

Aby zbiorczo połączyć wiele sieci z hostem, wygodnie jest przypisać im etykiety podczas tworzenia sieci i dodawać sieci według etykiet.

Po utworzeniu sieci hosty przejdą w stan nieoperacyjny do czasu dodania sieci do wszystkich węzłów w klastrze. To zachowanie jest spowodowane flagą Wymagaj wszystkiego na karcie Klaster podczas tworzenia nowej sieci. W przypadku, gdy sieć nie jest potrzebna na wszystkich węzłach klastra, flagę tę można wyłączyć, wówczas po dodaniu sieci do hosta będzie ona po prawej stronie w sekcji Niewymagane i będziesz mógł wybrać, czy się połączyć go do konkretnego hosta.

Virt za 2 godziny. Część 3. Dodatkowe ustawienia
Ryż. 6 — wybierz atrybut wymagań sieciowych.

Specyficzne dla HPE

Prawie wszyscy producenci posiadają narzędzia poprawiające użyteczność ich produktów. Na przykładzie HPE przydatne są AMS (Agentless Management Service, amsd dla iLO5, hp-ams dla iLO4) i SSA (Smart Storage Administrator, praca z kontrolerem dysku) itp.

Podłączenie repozytorium HPE
Importujemy klucz i łączymy repozytoria HPE:

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

następującą treść:

[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

Wyświetl zawartość repozytorium i informacje o pakiecie (w celach informacyjnych):

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

Instalacja i uruchomienie:

$ sudo yum install amsd ssacli
$ sudo systemctl start amsd

Przykład narzędzia do pracy z kontrolerem dysku
Virt za 2 godziny. Część 3. Dodatkowe ustawienia

To wszystko na teraz. W kolejnych artykułach zamierzam omówić kilka podstawowych operacji i zastosowań. Na przykład jak zrobić VDI w oVirt.

Źródło: www.habr.com