Virt za 2 godziny. Część 2. Instalowanie menedżera i hostów

Ten artykuł jest kolejnym z serii oVirt, początek tutaj.

Artykuły

  1. Wprowadzenie
  2. Instalacja menedżera (ovirt-engine) i hypervisorów (hostów) - Już tu jesteśmy
  3. Ustawienia zaawansowane

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.

Zawartość

  1. Instalowanie silnika ovirt
  2. Instalowanie ovirt-hosta
  3. Dodanie węzła do oVirtN
  4. Konfigurowanie interfejsu sieciowego
  5. Konfiguracja FC
  6. Konfigurowanie FCoE
  7. Przechowywanie obrazu ISO
  8. Pierwsza maszyna wirtualna

Instalowanie silnika ovirt

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:

$ sudo yum install open-vm-tools

w przypadku hostów VMware ESXi lub oVirt:

$ sudo yum install ovirt-guest-agent

Podłącz repozytorium i zainstaluj menedżera:

$ sudo yum install https://resources.ovirt.org/pub/yum-repo/ovirt-release43.rpm
$ sudo yum install ovirt-engine

Podstawowe ustawienia:

$ sudo engine-setup

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:

$ sudo yum install https://resources.ovirt.org/pub/yum-repo/ovirt-release43.rpm
$ sudo yum update -y && sudo reboot

Uwaga: wygodnie jest użyć narzędzi do automatyzacji wdrażania lub instalacji typu kickstart.

Przykładowy plik kickstartu
Ostrzeżenie! Istniejące partycje zostaną automatycznie usunięte! Bądź ostrożny!

# 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.

Hasło użytkownika root: monteV1DE0, hasło użytkownika mgmt: metroP0!is.
Uwaga! Istniejące partycje zostaną automatycznie usunięte! Bądź ostrożny!

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.

Skonfiguruj silnik FCoE

Artykuł na stronie internetowej Red Hat B.3. Jak skonfigurować menedżera wirtualizacji Red Hat do korzystania z FCoE
Na Menedżerze
, za pomocą następującego polecenia dodajemy klucz do menedżera i uruchamiamy go ponownie:


$ sudo engine-config -s UserDefinedNetworkCustomProperties='fcoe=^((enable|dcb|auto_vlan)=(yes|no),?)*$'
$ sudo systemctl restart ovirt-engine.service

Skonfiguruj węzeł FCoE

Na oVirt-Hosts musisz zainstalować

$ sudo yum install vdsm-hook-fcoe

Dalej jest zwykła konfiguracja FCoE, artykuł na temat Red Hat: 25.5. Konfigurowanie interfejsu Fibre Channel przez Ethernet.

W przypadku Broadcom CNA spójrz dodatkowo Podręcznik użytkownika Konfiguracja FCoE dla kart Broadcom.

Upewnij się, że pakiety są zainstalowane (już w minimalnym):

$ sudo yum install fcoe-utils lldpad

Następnie następuje sama konfiguracja (zamiast ens3f2 i ens3f3 podstawiamy nazwy kart CNA wchodzących w skład sieci pamięci masowej):

$ 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

To jest ważne: Jeśli interfejs sieciowy obsługuje sprzętowo DCB/DCBX, parametr DCB_REQUIRED musi być ustawiony na no.

DCB_REQUIRED=„tak” → #DCB_REQUIRED=„tak”

Następnie upewnij się, że adminStatus jest wyłączony na wszystkich interfejsach, w tym. bez włączonego FCoE:

$ sudo lldptool set-lldp -i ens3f0 adminStatus=disabled
...
$ sudo lldptool set-lldp -i ens3f3 adminStatus=disabled

Jeśli istnieją inne interfejsy sieciowe, możesz włączyć LLDP:

$ sudo systemctl start lldpad
$ sudo systemctl enable lldpad

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.

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

Dodaj komentarz