Strona korzysta z plików cookies w celu realizacji usług i zgodnie z Polityką Plików Cookies.



17.09.2019

PLNOG23 czyli sieci 5G,...

Największa polska konferencja telekomunikacyjna powraca do Krakowa! Wśród nowości ścieżka...
05.09.2019

Cloudya – nowa usługa NFON

Po ponad dekadzie ciągłego rozwoju technologii Cloudya, swobodna i niczym nie ograniczona...
02.09.2019

Na dużą skalę

Kaspersky Hybrid Cloud Security
02.09.2019

Bezpieczny brzeg sieci

Fortinet Secure SD-Branch
02.09.2019

Nowoczesne centra danych

AMD EPYC
30.08.2019

Dostęp do AI i ML

VMware Cloud Foundation
30.08.2019

Lekkość i moc

Toshiba Portégé A30-E
30.08.2019

Bez przestojów

APC Easy UPS On-Line
29.08.2019

Duże moce

Lenovo ThinkSystem SR635 i SR655

KVM w praktyce

Data publikacji: 23-05-2019 Autor: Konrad Kubecki
Virtual Machine Manager jest...

W poprzednim artykule o wirtualizacji KVM przedstawiliśmy ogólną charakterystykę tego oprogramowania. Skupiliśmy się na jego możliwościach, zastosowaniach oraz narzędziach przeznaczonych do obsługi maszyn wirtualnych. Niniejszy artykuł jest kontynuacją rozpoczętych wątków – to przegląd możliwości poleceń służących do tworzenia i obsługi maszyn wirtualnych.

 

Korzystanie z wirtualizacji wymaga wsparcia technologii wirtualizacji przez procesor. Jest ona powszechna w procesorach serwerowych. Współczesne jednostki obliczeniowe przeznaczone do stacji roboczych oraz komputerów przenośnych – w większości przypadków – mają wsparcie dla wirtualizacji.

> INSTALACJA KVM

Procesory wyprodukowane przez firmę Intel muszą być wyposażone w technologię Intel VT. W przypadku procesorów AMD jest to AMD-V. Bez jej obecności nie będzie możliwe uruchomienie maszyny wirtualnej, mimo że da się zainstalować KVM i nawet wykreować maszynę. W Linuksie wsparcie dla wirtualizacji przez procesor Intel można sprawdzić poleceniem cat /proc/cpuinfo | grep vmx. Obecność parametru vmx oznacza, że procesor pozwala na korzystanie z KVM. Analogiczna weryfikacja na stacji wyposażonej w produkt AMD to polecenie cat /proc/cpuinf | grep svm.

Obecność Intel VT lub AMD-V można potwierdzić jeszcze przed instalacją systemu operacyjnego. Taka informacja powinna znajdować się na stronie pomocy technicznej producenta. Specyfikacja wybranego modelu procesora powinna zawierać adnotację o obecności lub braku wspomnianej technologii.

Jako środowisko testowe posłuży nam dowolny komputer stacjonarny lub przenośny z procesorem spełniającym opisany wyżej warunek. Przyjęty system operacyjny to CentOS 7, mający graficzne środowisko Gnome. Okienka nie są składnikiem wymaganym, w środowiskach produkcyjnych byłyby wręcz niepotrzebne. Przydadzą się natomiast w kontekście graficznych narzędzi, które wspomagają pracę z lokalnym oraz zdalnym serwerem KVM.

Instalacja KVM w systemie CentOS 7 może odbyć się na kilka sposobów. Jednym z nich jest zainstalowanie pojedynczym poleceniem wszystkich podstawowych, niezbędnych pakietów: yum groupinstall "Virtualization Host". Efektem będzie wdrożenie m.in. pakietów: libvirt, libguestfs, mailcap oraz perl. Nie zostanie natomiast zainstalowany graficzny menedżer Virtual Machine Manager. W środowiskach testowych, w których system gospodarza ma okienka takie jak Gnome lub KDE, obecność KVM może być przydatna. Dlatego alternatywą jest podanie własnej listy pakietów:

 

 

Zainstalowane zostaną m.in.: KVM, program służący do tworzenia maszyn wirtualnych virt-install, program do bieżącej obsługi i rekonfiguracji maszyn virsh (jako składnik pakietu libvirt-client), łączący funkcje virt-install i virsh graficzny Virtual Machine Manager, a także służący do zerowania konfiguracji systemu operacyjnego sklonowanej maszyny wirtualnej virt-sysprep (jako składnik libguestfs-tools).

 

Na koniec pozostaje oznaczenie do automatycznego startu podczas uruchamiania systemu operacyjnego gospodarza oraz uruchomienie KVM:

 

 

> VIRSH

Do podstawowych operacji na maszynach wirtualnych służy polecenie virsh. Poniżej przedstawiono przykłady zastosowań tego programu w codziennej pracy.

Jeśli usługa KVM jest podniesiona, to lokalna obsługa wymaga już tylko okna konsoli shell. Wyświetlenie wszystkich maszyn wirtualnych wraz z ich stanem realizuje polecenie virsh list --all. Efekt będzie przedstawiał się podobnie do poniższego:

 

 

Ta sama komenda użyta bez parametru --all zaprezentuje listę tylko uruchomionych maszyn. Nie znajdą się na niej maszyny, które w danej chwili są wyłączone. Pierwsza kolumna zawiera identyfikatory maszyn – można je stosować zamiennie z nazwami. Wyłączenie maszyny da się zatem realizować przez polecenie virsh shutdown 1. Jest to ułatwienie w przypadku, gdy nazwy maszyn są dość długie, zawierają cyfry i znaki, ponieważ użycie numeru jest po prostu wygodniejsze. Należy mieć na uwadze, że identyfikator ulega zmianie – po ponownym uruchomieniu tej samej maszyny identyfikator będzie już inny.

Start/stop/restart maszyny realizują polecenia: virsh start/shutdown/reboot nazwa_maszyny. Wstrzymanie i wznowienie maszyny to z kolei polecenia virsh suspend oraz virsh resume. Informacje o wybranej maszynie można uzyskać, wykonując komendę:

 

 

 

 

Domyślnie maszyny wirtualne nie uruchamiają się wraz ze startem systemu hipernadzorcy. W środowiskach produkcyjnych autostart wybranych krytycznych maszyn wirtualnych znacznie ułatwia uruchomienie całego środowiska w przypadku planowanego lub nieplanowanego przestoju większej liczby komponentów. Wśród usług, które powinny się uruchamiać w pierwszej kolejności, są m.in. usługa katalogowa, DHCP, DNS i NTP. Wszystkie pozostałe (np. zwirtualizowane serwery aplikacyjne, bazodanowe, front/back endy, węzły wysokiej dostępności, serwery plikowe i terminalowe) uruchamia się później, na podstawie ich priorytetu oraz zależności między nimi. Włączenie trybu autostartu dla wybranej maszyny realizuje polecenie virsh autostart nazwa_maszyny.

Virsh może także posłużyć do zmiany parametrów maszyny wirtualnej. Najczęściej spotykane modyfikacje są związane z rosnącym zapotrzebowaniem na moc obliczeniową procesorów oraz pamięć operacyjną. Dodanie tych zasobów wiąże się z koniecznością wyłączenia maszyny wirtualnej i edycji jej pliku konfiguracyjnego. Służy do tego polecenie virsh edit nazwa_maszyny. Definiujący maszynę plik XML zostanie otwarty w edytorze, którego obsługa jest taka sama jak w przypadku pracy z programem vi lub vim.

 

W celu zmiany liczby przypisanych do maszyny procesorów należy odnaleźć linię zawierającą <vcpuplacement='static'>1</vcpu> i podać docelową liczbę wirtualnych procesorów. Zwiększenie pamięci operacyjnej to modyfikacja linii:

<memory unit='KiB'>2048576</memory>
<currentMemory unit='KiB'>2048576</currentMemory>

Po zapisaniu zmian w pliku konfiguracyjnym można uruchomić maszynę i sprawdzić jej aktualne zasoby wspomnianymi wcześniej poleceniami virsh start nazwa_maszyny oraz virsh dominfo nazwa_maszyny.

Pliki konfiguracyjne XML zawierają więcej szczegółów opisujących każdą maszynę. Zawarte w nich dane definiują m.in.: architekturę, rodzaj systemu operacyjnego gościa, urządzenie do bootowania maszyny, typy akcji na wybrane zdarzenia oraz sprzęt przypisany maszynie, np. dyski twarde, napędy, karty sieciowe, interfejsy USB, PCI i Serial. Ich lokalizacja to /etc/libvirt/qemu. Mają nazwy zgodnie z nazwami maszyn. Sugerowaną metodą edycji jest polecenie virsh edit lub skorzystanie z graficznego programu Virtual Machine Manager. Dokonywanie zmian poprzez edycję zwykłym edytorem tekstowym nie jest zalecane.

 

[...]

 

Specjalista ds. utrzymania infrastruktury i operacji. Zajmuje się problematyką budowy i utrzymania centrów przetwarzania danych oraz zarządzania nimi i koordynowaniem zmian dotyczących krytycznej infrastruktury IT. 

Pełna treść artykułu jest dostępna w papierowym wydaniu pisma.

.

Transmisje online zapewnia: StreamOnline

All rights reserved © 2019 Presscom / Miesięcznik "IT Professional"