Rozważmy więc kwestie pierwszej instalacji komponentów ovirt-engine i ovirt-host.
Bardziej szczegółowe procedury instalacji można zawsze znaleźć w dokumentacja.
W przypadku silnika minimalne wymagania to 2 rdzenie/4 GiB RAM/25 GiB pamięci. Zalecane - od 4 rdzeni/16 GiB pamięci RAM/50 GiB pamięci. Z opcji Standalone Manager korzystamy, gdy silnik pracuje na dedykowanej maszynie fizycznej lub wirtualnej poza zarządzanym klastrem. Do naszej instalacji weźmiemy maszynę wirtualną, na przykład na samodzielnym ESXi*. Wygodne jest skorzystanie z narzędzi do automatyzacji wdrażania lub klonowanie z wcześniej przygotowanego szablonu lub instalacja typu kickstart.
*Uwaga: w przypadku systemu produkcyjnego jest to zły pomysł, ponieważ... menadżer pracuje bez zastrzeżeń i staje się wąskim gardłem. W takim przypadku lepiej rozważyć opcję Self-hosted Engine.
W razie potrzeby procedura konwersji wersji Standalone na Self Hosted jest szczegółowo opisana w dokumentacja. W szczególności host musi otrzymać polecenie ponownej instalacji z obsługą Hosted Engine.
Instalujemy CentOS 7 na maszynie wirtualnej w minimalnej konfiguracji, następnie aktualizujemy i restartujemy system:
$ sudo yum update -y && sudo reboot
Przydatne jest zainstalowanie agenta gościa dla maszyny wirtualnej:
W większości przypadków wystarczą ustawienia domyślne, aby skorzystać z nich automatycznie, można uruchomić konfigurację klawiszem:
$ sudo engine-setup --accept-defaults
Teraz możemy połączyć się z naszym nowym silnikiem pod adresem ovirt.lab.example.com. Tutaj nadal jest pusto, więc przejdźmy do instalacji hypervisorów.
Instalowanie ovirt-hosta
Instalujemy CentOS 7 w minimalnej konfiguracji na hoście fizycznym, następnie podłączamy repozytorium, aktualizujemy i restartujemy system:
# 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
Zapisz ten plik np. ftp.example.com/pub/labkvm.cfg. Aby użyć skryptu podczas uruchamiania instalacji systemu operacyjnego, wybierz „Zainstaluj CentOS 7”, włącz tryb edycji parametrów (klawisz Tab) i dodaj na końcu (ze spacją, bez cudzysłowu)
' inst.ks=ftp://ftp.example.com/pub/labkvm.cfg'
.
Skrypt instalacyjny usuwa istniejące partycje na /dev/sda i tworzy nowe rekomendacje deweloperów (wygodnie jest je wyświetlić po instalacji za pomocą polecenia lsblk). Nazwa hosta jest ustawiona na kvm01.lab.example.com (po instalacji można ją zmienić za pomocą polecenia hostnamectl set-hostname kvm03.lab.example.com), adres IP jest uzyskiwany automatycznie, strefa czasowa to Moskwa, Dodano obsługę języka rosyjskiego.
Powtarzamy (lub wykonujemy równolegle) na wszystkich hostach. Od włączenia „pustego” serwera do stanu gotowości, biorąc pod uwagę 2 długie pobrania, zajmuje to około 20 minut.
Dodanie węzła do oVirt
To jest bardzo proste:
Oblicz → Hosty → Nowy →…
Wymagane pola w kreatorze to Nazwa (nazwa wyświetlana, np. kvm03), Nazwa hosta (FQDN, np. kvm03.lab.example.com) oraz sekcja Uwierzytelnianie - użytkownik root (niezmienny) — hasło lub klucz publiczny SSH.
Po naciśnięciu przycisku Ok Otrzymasz wiadomość „Nie skonfigurowałeś zarządzania energią dla tego hosta. Jesteś pewien, że chcesz kontynuować?". Jest to normalne — zajmiemy się zarządzaniem energią później, po pomyślnym podłączeniu hosta. Jeśli jednak komputery, na których zainstalowane są hosty, nie obsługują zarządzania (IPMI, iLO, DRAC itp.), zalecam jego wyłączenie: Obliczenia → Klastry → Domyślne → Edytuj → Ogrodzenie Ploicy → Włącz ogrodzenie, odznacz to pole.
Jeśli repozytorium oVirt nie było podłączone do hosta, instalacja nie powiedzie się, ale nie ma problemu - musisz je dodać, a następnie kliknąć Instaluj -> Zainstaluj ponownie.
Podłączenie hosta zajmuje nie więcej niż 5-10 minut.
Konfigurowanie interfejsu sieciowego
Ponieważ budujemy system odporny na awarie, połączenie sieciowe musi zapewniać również połączenie redundantne, czego dokonuje się w zakładce Obliczenia → Hosty → HOST → Interfejsy sieciowe - Skonfiguruj sieci hostów.
W zależności od możliwości sprzętu sieciowego i podejścia architektonicznego możliwe są różne opcje. Najlepiej jest połączyć się ze stosem przełączników montowanych na górze szafy, aby w przypadku awarii jednego z nich nie została zakłócona dostępność sieci. Spójrzmy na przykład zagregowanego kanału LACP. Aby skonfigurować kanał zagregowany, „zabierz” drugi nieużywany adapter za pomocą myszy i „przenieś” go do pierwszego. Otworzy się okno Utwórz nową więź, gdzie domyślnie wybrany jest LACP (tryb 4, dynamiczna agregacja łączy, 802.3ad). Po stronie przełącznika wykonywana jest zwykła konfiguracja grupy LACP. Jeżeli nie jest możliwe zbudowanie stosu przełączników, można skorzystać z trybu Active-Backup (Tryb 1). Przyjrzymy się ustawieniom VLAN w następnym artykule, a bardziej szczegółowo omówimy zalecenia dotyczące konfiguracji sieci w dokumencie Przewodnik po planowaniu i wymaganiach wstępnych.
Konfiguracja FC
Standard Fibre Channel (FC) jest obsługiwany od razu po wyjęciu z pudełka i jest łatwy w użyciu. W ramach konfiguracji oVirt nie będziemy konfigurować sieci pamięci masowej, w tym systemów pamięci masowej i przełączników strukturalnych w zakresie podziału na strefy.
Konfigurowanie FCoE
Moim zdaniem FCoE nie rozpowszechniło się w sieciach pamięci masowej, ale często jest wykorzystywane na serwerach jako „ostatnia mila”, na przykład w HPE Virtual Connect.
Konfigurowanie FCoE wymaga dodatkowych prostych kroków.
Jak wspomniano wcześniej, jeśli używany jest sprzęt DCB/DCBX, należy włączyć ustawienie DCB_REQUIRED Nie i ten krok można pominąć.
$ 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
W przypadku interfejsów sieciowych sprawdź, czy funkcja autostartu jest włączona:
$ sudo vim /etc/sysconfig/network-scripts/ifcfg-ens3f2
$ sudo vim /etc/sysconfig/network-scripts/ifcfg-ens3f3
ONBOOT=yes
Wyświetl skonfigurowane interfejsy FCoE. Dane wyjściowe polecenia nie powinny być puste.
$ sudo fcoeadm -i
Późniejsza konfiguracja FCoE odbywa się jak w przypadku zwykłego FC.
Następnie następuje konfiguracja systemów i sieci pamięci masowej - podział na strefy, hosty SAN, tworzenie i prezentacja woluminów/jednostek LUN, po czym można podłączyć pamięć masową do hostów ovirt: Magazyn → Domeny → Nowa domena.
Pozostaw funkcję domeny jako dane, typ magazynu jako Fibre Channel, host jako dowolny, nazwę np. storNN-volMM.
Z pewnością Twój system magazynowania umożliwia połączenie nie tylko w celu rezerwacji ścieżki, ale także w celu bilansowania. Wiele nowoczesnych systemów jest w stanie równie optymalnie przesyłać dane wszystkimi drogami (ALUA active/active).
Aby włączyć wszystkie ścieżki w stanie aktywnym należy skonfigurować multipasing, więcej na ten temat w kolejnych artykułach.
Konfiguracja NFS i iSCSI odbywa się w podobny sposób.
Przechowywanie obrazu ISO
Do zainstalowania systemu operacyjnego potrzebne będą pliki instalacyjne, najczęściej dostępne w postaci obrazów ISO. Możesz skorzystać z wbudowanej ścieżki, ale do pracy z obrazami w oVirt opracowano specjalny rodzaj przechowywania - ISO, który można skierować na serwer NFS. Dodaj to:
Pamięć → Domeny → Nowa domena,
Funkcja domeny → ISO,
Ścieżka eksportu - np. mynfs01.example.com:/exports/ovirt-iso (w momencie połączenia folder musi być pusty, menadżer musi mieć możliwość zapisu w nim),
Nazwa - np. mynfs01-iso.
Menedżer utworzy strukturę do przechowywania obrazów
/exports/ovirt-iso/<some UUID>/images/11111111-1111-1111-1111-111111111111/
Jeśli na naszym serwerze NFS znajdują się już obrazy ISO, aby zaoszczędzić miejsce, wygodnie jest połączyć je z tym folderem, zamiast kopiować pliki.
Pierwsza maszyna wirtualna
Na tym etapie można już stworzyć pierwszą maszynę wirtualną, zainstalować na niej system operacyjny i aplikacje.
Obliczenia → Maszyny wirtualne → Nowe
Dla nowej maszyny podaj nazwę (Nazwa), utwórz dysk (Obrazy instancji → Utwórz) i podłącz interfejs sieciowy (Utwórz interfejsy sieciowe maszyny wirtualnej, wybierając profil vNIC → wybierz na razie jedyny ovirtmgmt z listy).
Po stronie klienta potrzebujesz nowoczesnej przeglądarki i Klient SPICE do interakcji z konsolą.
Pierwsza maszyna została pomyślnie uruchomiona. Jednak do pełniejszego działania systemu wymagany jest szereg dodatkowych ustawień, o których będziemy kontynuować w kolejnych artykułach.