Instalowanie i konfigurowanie KVM Hypervisor na CentOS

W tym artykule przyjrzymy się instalacji i podstawowej konfiguracji. Hiperwizor KVM na serwerze z systemem Linux CentOS. Pokażemy, jak utworzyć maszynę wirtualną w KVM, zmienić jej ustawienia, zainstalować system operacyjny gościa i podstawowe polecenia zarządzania maszyną wirtualną.

Kvm (Maszyna wirtualna oparta na jądrze) Narzędzie do wirtualizacji systemu Linux, które wykorzystuje wirtualizację sprzętową Intel VT lub AMD SVM. Za pomocą KVM możesz tworzyć izolowane maszyny wirtualne na własnym sprzęcie wirtualnym: karty sieciowe, dyski, karty graficzne i inne urządzenia. Możesz zainstalować dowolny system operacyjny na maszynach wirtualnych (nie tylko Linux).

Treść

  • Zainstaluj KVM na CentOS
  • Konfiguracja sieci w KVM
  • KVM: tworzenie maszyny wirtualnej
  • Łączenie z maszyną wirtualną na KVM przez VNC, instalacja systemu operacyjnego

Zainstaluj KVM na CentOS

Podczas konfiguracji Kvm na serwerze musisz zacząć od sprawdzenia procesora. Musisz dowiedzieć się, czy sprzęt zainstalowany na serwerze obsługuje wirtualizację sprzętu. Z konsoli serwera uruchom polecenie:

# cat / proc / cpuinfo | egrep "(vmx | svm)"

Jeśli twój procesor obsługuje technologię VT-x, powinieneś mieć coś takiego:

Jeśli polecenie nic nie zwróciło, ale Twój procesor zdecydowanie obsługuje wirtualizację, sprawdź, czy ta opcja jest wyłączona w BIOS serwer. Poszukaj opcji „Technologia wirtualizacji Intel” lub „TRYB SVM”.

Dowiedz się więcej o uzyskiwaniu informacji o sprzęcie w systemie Linux..

Na moim serwerze obsługa tej technologii jest włączona, więc możesz rozpocząć instalowanie niezbędnych komponentów w CentOS za pomocą menedżera pakietów yum / dnf:

# mniam zainstaluj libvirt libvirt-python libguestfs-tools qemu-kvm virt-install -y

  • qemu-kvm - Sam hypervisor KVM
  • libvirt - biblioteki do zarządzania wirylizacją;
  • virt-install - Komendy zarządzania maszyną wirtualną KVM.

Duża liczba pakietów zostanie zainstalowana na serwerze, upewnij się, że nie wystąpią błędy podczas procesu instalacji.

Teraz musisz dodać usługę libvirtd aby automatycznie załadować i uruchomić:

# systemctl enable libvirtd
# systemctl start libvirtd

Sprawdź, czy moduły jądra zostały załadowane kvm_intel i kvm:

[root @ localhost /] # lsmod | grep kvm

kvm_intel 188688 0 kvm 636931 1 kvm_intel irqbypass 13503 1 kvm

Jeśli nic nie jest wyświetlane, uruchom ponownie serwer i sprawdź ponownie.

Konfiguracja sieci w KVM

Teraz utwórz katalogi, w których będą przechowywane dyski maszyn wirtualnych i obrazy ISO:

# mkdir -p / vz / disk, iso

Aby utworzone maszyny wirtualne miały dostęp do Internetu, musimy skonfigurować sieć przez most. Będzie to wymagać pakietu narzędzia mostowe, sprawdź, czy jest zainstalowany w systemie Linux za pomocą polecenia:

# rpm -qa | grep most-utils

W razie potrzeby zainstaluj:

# yum zainstaluj most-utils -y

Po zainstalowaniu pakietów dla KVM w systemie pojawił się interfejs sieciowy virbr0:

# ip a

Aby utworzyć mostek sieciowy (most), musisz skonfigurować plik konfiguracyjny interfejsu sieciowego serwera:

# cp / etc / sysconfig / network-scripts / ifcfg-enp1s0f0 / etc / sysconfig / network-scripts / ifcfg-enp1s0f0_bak - zrób plik kopii zapasowej

# nano / etc / sysconfig / network-scripts / ifcfg-enp1s0f0 - otwarte do edycji

Usuń całą zawartość i zamień na następujące:

DEVICE = "enp1s0f0" ONBOOT = "tak" MOST = br0

W twoim przypadku nazwa interfejsu może się różnić (patrz polecenie ip).

Następnie utwórz plik:

# nano / etc / sysconfig / network-scripts / ifcfg-br0

z treścią:

DEVICE = „br0” TYPE = MOST ONBOOT = tak BOOTPROTO = statyczny IPADDR = „adres_serwera” NETMASK = „255.255.255.0” BRAMA = „Brama podstawowa” DNS1 = „77.88.8.8” DNS2 = „8.8.4.4”

Gdzie podaj swoje dane: adres IP serwera i główną bramę. Po edycji plików konfiguracyjnych interfejsów sieciowych musisz ponownie uruchomić usługę:

# usługa restart sieci

Jeśli utraciłeś dostęp do serwera po zrestartowaniu sieci, spróbuj go zrestartować. Czasami jest to wymagane do prawidłowej konfiguracji mostu..

Aby sprawdzić status mostu, użyj polecenia:

# brctl show

nazwa mostu identyfikator mostu włączone interfejsy STP br0 8000.ac1f6b945206 nie enp1s0f0 virbr0 8000.5254003f23cf tak virbr0-nic

Ostatnim krokiem jest skonfigurowanie przekierowania ruchu sieciowego:

# echo -e "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf && sysctl -p

Teraz uruchom ponownie usługę libvirtd:

# service libvirtd restart

To kończy podstawową konfigurację KVM, możesz stworzyć maszynę wirtualną.

KVM: tworzenie maszyny wirtualnej

Przed utworzeniem maszyny wirtualnej pobrałem obraz CentOS 8 z oficjalnego serwera lustrzanego do katalogu / vz / iso:

# cd / vz / iso && wget https://mirror.yandex.ru/centos/8.1.1911/isos/x86_64/CentOS-8.1.1911-x86_64-dvd1.iso

Aby utworzyć nową maszynę wirtualną KVM:

virt-install -n test-centos \
--noautoconsole \
--sieć = most: br0 \
--ram 2048 --arch = x86_64 \
--vcpus = 4 - host cpu --check-cpu \
--ścieżka dysku = / vz / disk / test-centos.img, size = 32 \
--cdrom /vz/iso/CentOS-8.1.1911-x86_64-dvd1.iso \
--grafika vnc, Listen = IP, hasło = 123456789 \
--os-type linux --os-variant = rhel7 --boot cdrom, hd, menu = wł

  • test-centos - nazwa maszyny wirtualnej;
  • noautoconsole - po utworzeniu nie trzeba automatycznie łączyć się z konsolą maszyny wirtualnej;
  • sieć - rodzaj sieci (w naszym przypadku most);
  • ram - ilość pamięci RAM w maszynie wirtualnej;
  • vcpus - liczba rdzeni procesora (ustawienie vCPU w KVM);
  • dysk - dysk wirtualny, ścieżka - ścieżka do dysku. rozmiar - objętość (w przyszłości można go rozszerzyć / zmniejszyć);
  • cdrom - wirtualny cdrom, w którym montowany jest obraz ISO w celu zainstalowania systemu-gościa;
  • grafika - ustawienia połączenia z maszyną za pomocą konsoli graficznej. Łączymy się przez VNC, dlatego w nasłuchiwaniu wskazuje adres IP serwera, na którym utworzyliśmy maszynę wirtualną i hasło do połączenia w konsoli maszyny wirtualnej (hasło).

Aby automatycznie uruchomić maszynę wirtualną, wykonaj:

# virsh autostart centra testowe

Łączenie z maszyną wirtualną na KVM przez VNC, instalacja systemu operacyjnego

Aby połączyć się z maszyną wirtualną za pośrednictwem VNC, musimy znaleźć port, na którym ona działa:

[root @ local vz] # virsh vncdisplay centra testowe

IP: 0

0 oznacza, że ​​port do połączenia z VNC 5900, jeśli masz inny wynik, po prostu dodaj do 5900 liczbę, którą poda ci polecenie.

Aby połączyć się z serwerami za pomocą VNC, używam narzędzia TightVNC. Uruchom go i podaj adres IP serwera oraz port VNC, którego poznaliśmy wcześniej (poprzez podwójny dwukropek).

Kliknij „Połącz”, W oknie, które zostanie otwarte, określ hasło ustawione podczas tworzenia maszyny wirtualnej. Jeśli wszystko zostanie wykonane poprawnie, zobaczysz konsolę serwera, na której uruchomiona jest instalacja CentOS (lub inny system operacyjny, którego obraz został zamontowany).

Jeśli na serwerze jest zainstalowana zapora ogniowa, otwórz porty sieciowe dla VNC 5900-5910 w firewalld / iptables, ta liczba powinna wystarczyć. Po zainstalowaniu systemu-gościa na maszynie wirtualnej uruchom maszynę wirtualną z konsoli serwera:

Aby zamknąć maszynę wirtualną KVM, użyj polecenia:

# virsh test-centos

Aby wyświetlić listę wszystkich zarejestrowanych maszyn wirtualnych KVM:

# lista virsh - wszystkie

Dowiedz się więcej o zarządzaniu maszynami wirtualnymi KVM z konsoli serwera za pomocą virsh, dodawania pamięci, procesora, dysków i interfejsów sieciowych.

To kończy podstawową konfigurację serwera KVM i utworzenie maszyny wirtualnej. W KVM możesz tworzyć nieograniczoną liczbę maszyn wirtualnych, wszystko zależy od zasobów twojego serwera i twoich potrzeb.