Lekcja wprowadzająca

Wirtualizacja

Podstawy wirtualizacji

Od modelu host-gość i rodzajów hipernadzorców, przez zasoby, dyski i sieci, aż po bezpieczeństwo, backup oraz świadomy cykl życia maszyny wirtualnej.

Cele lekcji i wymagania wstępne

Po lekcji

  • • wyjaśnisz elementy środowiska wirtualnego,
  • • odróżnisz modele hipernadzorców i platformy,
  • • dobierzesz zasoby, dysk i sieć do scenariusza,
  • • rozdzielisz snapshot, checkpoint i backup,
  • • zaplanujesz bezpieczny cykl życia VM.

Wymagania wstępne

Wystarczy podstawowa znajomość systemów operacyjnych, pamięci RAM, procesora, dysków i sieci IP. Lekcja nie wymaga instalacji hipernadzorcy ani wykonywania operacji na rzeczywistym hoście.

Podstawowe pojęcia

Wirtualizacja
Warstwa abstrakcji pozwalająca udostępniać zasoby fizycznego komputera wielu odseparowanym środowiskom. W tej lekcji chodzi przede wszystkim o pełne maszyny wirtualne, a nie kontenery.
Host
Fizyczny komputer wraz z systemem lub platformą wirtualizacyjną, który dostarcza procesor, pamięć, magazyn danych i interfejsy sieciowe.
System gościa
System operacyjny uruchomiony wewnątrz maszyny wirtualnej. Gość widzi sprzęt wirtualny udostępniony przez hipernadzorcę.
Maszyna wirtualna (VM)
Logiczny komputer z własną konfiguracją vCPU, pamięci, dysków, firmware i kart sieciowych, w którym działa system gościa oraz jego aplikacje.
Hipernadzorca (hypervisor)
Warstwa zarządzająca uruchamianiem VM, izolacją oraz dostępem gości do procesora, pamięci, urządzeń i sieci hosta.
vCPU
Wirtualny procesor planowany przez hipernadzorcę na dostępnych procesorach logicznych hosta. Jedno vCPU nie oznacza automatycznie jednego zarezerwowanego rdzenia fizycznego.
Pamięć wirtualizowana
Pamięć operacyjna prezentowana gościowi jako jego RAM. Nie należy mylić jej z mechanizmem pamięci wirtualnej i plikiem wymiany zarządzanym przez sam system operacyjny.
Wirtualny dysk
Urządzenie blokowe widoczne dla gościa, zwykle przechowywane jako plik obrazu albo wolumin w magazynie danych hosta.
Wirtualny przełącznik
Programowy element warstwy 2 łączący wirtualne karty sieciowe z innymi VM, hostem albo siecią fizyczną zgodnie z wybranym trybem.

Hipernadzorca typu 1 i typu 2

Porównanie hipernadzorców typu 1 i typu 2
ModelSposób działaniaZaletyOgraniczeniaZastosowaniePrzykłady
Typ 1 (bare metal)Hipernadzorca stanowi podstawową warstwę uruchomioną na sprzęcie; systemy zarządzające i goście działają ponad architekturą wirtualizacji.Dobra izolacja, przewidywalność, centralne zarządzanie i funkcje potrzebne w infrastrukturze serwerowej.Wymaga zgodnego sprzętu, planu sieci i magazynu oraz kompetencji administracyjnych.Serwery, klastry, centra danych i infrastruktura produkcyjna.Hyper-V; KVM jako część stosu Proxmox VE.
Typ 2 (hosted)Program wirtualizacyjny działa w systemie hosta i korzysta z jego sterowników, planisty oraz obsługi urządzeń.Prosta instalacja na komputerze użytkownika i wygodna praca w laboratorium.Większa zależność od systemu hosta i zwykle mniej funkcji klastrowych lub wysokiej dostępności.Nauka, testy, rozwój oprogramowania i pojedyncze stanowiska.Oracle VirtualBox; VMware Workstation Pro.
Ważne uproszczenie: podział typu 1/2 jest użytecznym modelem dydaktycznym. Współczesne platformy korzystają z partycji zarządzających, modułów jądra, sterowników hosta i usług użytkowych, dlatego ich pełna architektura może być bardziej złożona niż dwie proste warstwy na schemacie.

Wsparcie sprzętowe

Intel VT-x i AMD-V

Rozszerzenia procesora umożliwiają efektywne wykonywanie uprzywilejowanego kodu gościa pod kontrolą hipernadzorcy. Muszą być obsługiwane przez sprzęt, firmware i platformę.

IOMMU

Intel VT-d lub AMD-Vi pomagają kontrolować dostęp urządzeń do pamięci i są ważne między innymi przy bezpiecznym przekazywaniu urządzeń. Podstawowa VM nie zawsze wymaga passthrough.

Nested virtualization

Udostępnia rozszerzenia wirtualizacji wybranej VM, aby mogła uruchomić kolejny hipernadzorca. Wsparcie i ograniczenia są zależne od platformy, a dodatkowa warstwa zwiększa narzut.

Zarządzanie zasobami

vCPU i planowanie

Przydział vCPU opisuje zdolność VM do równoległej pracy, ale nie rezerwuje automatycznie rdzeni 1:1. Zbyt wiele vCPU może zwiększyć czas oczekiwania na zaplanowanie VM.

RAM i overcommit

Suma pamięci zadeklarowanej dla VM może przekraczać fizyczny RAM tylko wtedy, gdy platforma i obciążenia pozwalają tym świadomie zarządzać. Brak zapasu dla hosta prowadzi do intensywnego stronicowania lub zatrzymania usług.

Dynamiczna pamięć i ballooning

Są to różne, zależne od platformy mechanizmy zmiany lub odzyskiwania pamięci gościa. Wymagają właściwego wsparcia hipernadzorcy i systemu gościa; nie należy zakładać ich dostępności w każdym środowisku.

Nośniki i obrazy dysków

Role i właściwości popularnych formatów obrazów
Format lub nośnikRolaNa co uważać
ISOObraz nośnika optycznego, najczęściej używany do uruchomienia instalatora lub narzędzia ratunkowego.Nie jest obrazem zainstalowanego dysku VM i zwykle nie przechowuje zmian systemu gościa.
VHD / VHDXFormaty wirtualnych dysków kojarzone z ekosystemem Microsoft; VHDX jest nowszym formatem używanym przez Hyper-V.Format pliku nie przesądza sam w sobie o sposobie alokacji przestrzeni.
VDINatywny format obrazu wirtualnego dysku Oracle VirtualBox.Może być tworzony jako dynamicznie rosnący albo o stałym rozmiarze.
VMDKFormat wirtualnego dysku stosowany w produktach VMware i obsługiwany także przez inne platformy.Występuje w różnych wariantach, dlatego zgodność należy sprawdzać przed migracją.
QCOW2Format obrazu QEMU obsługujący między innymi alokację na żądanie i obrazy bazowe.Jest często używany w stosach opartych na QEMU/KVM, ale platforma może oferować również inne magazyny.

Dynamiczny i thin provisioned

Dynamicznie rosnący plik obrazu zajmuje miejsce wraz z zapisem kolejnych bloków. Thin provisioning może działać na poziomie puli lub woluminu magazynu. Pojęcia są podobne funkcjonalnie, lecz opisują różne warstwy i nie zawsze są zamienne.

Fixed i thick

Obraz fixed zwykle rezerwuje rozmiar pliku podczas tworzenia. Thick provisioning oznacza wcześniejsze przydzielenie przestrzeni w magazynie, ale szczegóły oraz warianty zależą od platformy. Zawsze oddzielaj format od polityki alokacji.

Snapshot lub checkpoint a backup

Stan krótkoterminowy

Snapshot lub checkpoint ułatwia powrót przed aktualizacją albo ćwiczeniem. Zakres zapisanego stanu zależy od platformy i wybranego rodzaju operacji.

Łańcuch zależności

Kolejne zapisy często trafiają do dysku różnicowego zależnego od dysku bazowego. Długie łańcuchy zwiększają złożoność, wykorzystanie przestrzeni i ryzyko problemów wydajnościowych.

Backup i test odtworzenia

Backup podlega osobnej polityce przechowywania i ochrony przed awarią hosta lub magazynu. Jego wartość potwierdza dopiero regularnie przeprowadzony test odtworzenia.

Sieci wirtualne

Nazwy trybów różnią się pomiędzy platformami. Zawsze analizuj rzeczywistą łączność, a nie tylko etykietę w interfejsie.

Porównanie podstawowych trybów sieci wirtualnych
TrybŁącznośćTypowe zastosowanieOgraniczenie
NATGość zwykle inicjuje ruch na zewnątrz przez translację realizowaną przez hosta lub platformę.Aktualizacje i dostęp do Internetu bez bezpośredniego dołączania VM do LAN.NAT nie jest pełnym mechanizmem bezpieczeństwa; nadal potrzebne są aktualizacje, zapora i kontrola usług.
Bridged / external bridgeWirtualna karta jest połączona z siecią zewnętrzną i VM może działać jak osobny host w LAN.Usługi dostępne z sieci fizycznej i scenariusze wymagające bezpośredniej komunikacji.Gość podlega regułom i zagrożeniom tej sieci; mostkowanie przez Wi-Fi może mieć ograniczenia platformowe.
Host-onlySieć łączy hosta i wybrane maszyny, domyślnie bez bezpośredniego wyjścia do sieci zewnętrznej.Zarządzanie VM z hosta oraz izolowane laboratoria.Host pozostaje uczestnikiem segmentu, więc nie jest to pełna izolacja od komputera prowadzącego ćwiczenie.
Internal / privateKomunikują się wyłącznie VM dołączone do tego samego wirtualnego segmentu; dokładny zakres zależy od platformy.Topologie laboratoryjne, routery programowe i bezpieczne ćwiczenia sieciowe.Dostęp do hosta lub Internetu wymaga dodatkowego interfejsu, routingu albo NAT.
VLAN i trunkTagi 802.1Q rozdzielają logiczne segmenty na wspólnym łączu przenoszącym wiele VLAN-ów.Laboratoria segmentacji i sieci serwerowe z kontrolowanym przypisaniem portów lub interfejsów.Wymaga spójnej konfiguracji przełącznika wirtualnego, gościa i ewentualnej infrastruktury fizycznej.

Narzędzia integracyjne

Narzędzia integracyjne popularnych platform wirtualizacyjnych
PlatformaNarzędziaRola
Oracle VirtualBoxGuest AdditionsSterowniki i usługi poprawiające integrację wejścia, grafiki, czasu oraz opcjonalnych funkcji współdzielenia.
VMwareVMware Tools / open-vm-toolsSterowniki i usługi gościa wspierające wydajność, synchronizację, zarządzanie i integrację z platformą.
QEMU/KVM i Proxmox VESterowniki VirtIO oraz agent gościaParawirtualizowane urządzenia dyskowe i sieciowe oraz wymiana informacji z warstwą zarządzającą.
Hyper-VUsługi integracji Hyper-VKanały współpracy host-gość, między innymi kontrolowane zamykanie, synchronizacja czasu i wymiana danych.

Instaluj wyłącznie narzędzia zgodne z platformą i systemem gościa. Funkcje takie jak współdzielony schowek lub katalogi zwiększają wygodę, ale równocześnie zmniejszają stopień separacji host-gość.

Bezpieczeństwo

  • Aktualizuj host, hipernadzorcę, systemy gości i narzędzia integracyjne.
  • Ogranicz konta administracyjne zgodnie z zasadą najmniejszych uprawnień.
  • Nie uruchamiaj niezaufanych obrazów tylko dlatego, że VM jest odseparowana.
  • Laboratoria z niebezpiecznym ruchem umieszczaj w sieci internal/private bez przypadkowego mostu do LAN.
  • Secure Boot i wirtualny TPM stosuj tam, gdzie wspierają je platforma, firmware VM i system gościa.
  • Wyłącz zbędne urządzenia oraz funkcje współdzielenia host-gość i monitoruj interfejsy zarządzające.

Cykl życia VM

  1. 1

    Planowanie

    Określ rolę VM, wymagania, właściciela, sieci, ochronę danych i kryteria wycofania.

  2. 2

    Utworzenie

    Nadaj jednoznaczną nazwę i przydziel początkowe zasoby bez nadmiernego overcommitu.

  3. 3

    Instalacja

    Użyj legalnego, zweryfikowanego obrazu oraz udokumentuj źródło nośnika.

  4. 4

    Konfiguracja

    Ustaw firmware, dyski, sieci, konta i polityki zgodnie z rolą środowiska.

  5. 5

    Integracja

    Zainstaluj właściwe sterowniki i usługi gościa, jeśli są potrzebne i zaufane.

  6. 6

    Aktualizacja

    Aktualizuj hipernadzorcę, narzędzia integracyjne, system gościa i aplikacje.

  7. 7

    Monitoring

    Obserwuj wykorzystanie CPU, RAM, magazynu, sieci oraz zdarzenia bezpieczeństwa.

  8. 8

    Backup

    Wykonuj kopie zgodnie z polityką retencji i przechowuj je poza pojedynczym punktem awarii.

  9. 9

    Odtworzenie

    Regularnie testuj odtwarzanie i zapisuj rzeczywisty czas oraz kompletność procesu.

  10. 10

    Wycofanie

    Usuń dostęp, bezpiecznie zagospodaruj dane, licencje i zależne zasoby.

Porównanie platform dostępnych w portalu

Porównanie Microsoft Hyper-V, Proxmox VE, VMware Workstation Pro i Oracle VirtualBox
PlatformaProfilMocne stronyDobre zastosowanie
Hyper-VHipernadzorca typu 1 zintegrowany z odpowiednimi wydaniami Windows i Windows Server.Integracja z ekosystemem Microsoft, przełączniki wirtualne, checkpointy i funkcje serwerowe.Laboratoria Windows oraz infrastruktura organizacji korzystającej z technologii Microsoft.
Proxmox VESerwerowa platforma zarządzająca maszynami KVM oraz kontenerami LXC.Wspólne zarządzanie obliczeniami, siecią, magazynem, kopiami i klastrami.Mała infrastruktura, laboratorium serwerowe i środowiska wymagające centralnego panelu.
VMware Workstation ProHostowane środowisko desktopowe uruchamiane w systemie użytkownika.Wygodna praca z wieloma VM na stacji roboczej oraz rozbudowane narzędzia integracyjne.Nauka, rozwój i testowanie systemów na komputerze osobistym.
Oracle VirtualBoxHostowane, wieloplatformowe środowisko desktopowe.Przystępne laboratoria, wiele trybów sieci i proste zarządzanie obrazami dysków.Pierwsze laboratoria, zajęcia sieciowe i nauka instalacji systemów gości.

Proxmox VE zarządza zarówno pełnymi maszynami KVM, jak i kontenerami LXC. Kontener nie jest VM: współdzieli jądro hosta i stosuje inny model izolacji.

Scenariusz 1: komputer osobisty

Student uruchamia jedną lub dwie VM w Oracle VirtualBox albo VMware Workstation Pro Workstation. Pozostawia zasoby dla hosta, korzysta z NAT do aktualizacji, a ćwiczenia sieciowe przenosi do host-only lub internal. Snapshot wykonuje przed krótkim eksperymentem, lecz ważne pliki zabezpiecza niezależnie.

Scenariusz 2: mała infrastruktura firmowa

Administrator planuje host Hyper-V lub Proxmox VE, oddziela sieć zarządzającą od ruchu VM, dobiera trwały magazyn i monitoring, ogranicza uprawnienia oraz wdraża backup z testem odtworzenia. Produkcja wymaga pojemności, redundancji i procedur, których nie potrzebuje proste stanowisko laboratoryjne.

Ćwiczenie praktyczne: zaprojektuj bezpieczną VM

Ćwiczenie wykonaj na papierze lub w dokumencie. Nie wymaga zmian w systemie, firmware ani na dyskach komputera.

  1. 1.Zapisz parametry przykładowego hosta: 8 procesorów logicznych, 16 GB RAM i 200 GB wolnego miejsca.
  2. 2.Zaprojektuj linuksową VM laboratoryjną i uzasadnij przydział 2 vCPU, 4 GB RAM oraz wirtualnego dysku 40 GB.
  3. 3.Wybierz obraz dysku dynamiczny lub thin, ale wskaż warstwę, na której następuje alokacja.
  4. 4.Dobierz NAT do aktualizacji oraz osobny segment internal/private do ćwiczeń między VM.
  5. 5.Wyznacz moment krótkotrwałego snapshotu i osobny plan backupu danych potrzebnych po awarii hosta.
  6. 6.Zapisz trzy metryki monitoringu oraz warunek bezpiecznego wycofania VM.

Pytania kontrolne

Dlaczego jedno vCPU nie musi oznaczać jednego fizycznego rdzenia?

Hipernadzorca planuje pracę vCPU na procesorach logicznych hosta. Wiele vCPU może współdzielić czas wykonania, a zachowanie zależy od obciążenia i polityki platformy.

Czym różni się ISO od obrazu wirtualnego dysku?

ISO zwykle reprezentuje nośnik optyczny z instalatorem. Obraz dysku, na przykład VDI lub VHDX, przechowuje strukturę dysku i zmiany zainstalowanego systemu gościa.

Dlaczego snapshot nie zastępuje backupu?

Snapshot jest związany ze stanem VM, dyskiem bazowym i mechanizmem platformy. Awaria magazynu lub uszkodzenie łańcucha może objąć zarówno bieżący stan, jak i snapshoty.

Kiedy wybrać host-only zamiast bridged?

Host-only jest właściwy, gdy VM mają komunikować się z hostem bez dołączania ich bezpośrednio do fizycznego LAN. Bridged wybiera się, gdy gość ma być osobnym uczestnikiem LAN.

Czy kontener LXC jest maszyną wirtualną?

Nie. Kontener współdzieli jądro hosta i izoluje procesy na poziomie systemu operacyjnego. VM uruchamia własny system gościa na sprzęcie wirtualnym.

Co należy sprawdzić przed użyciem nested virtualization?

Wsparcie procesora, hosta i platformy, sposób udostępnienia rozszerzeń gościowi, ograniczenia pamięci i sieci oraz narzut wydajnościowy danego scenariusza.

Typowe błędy

  • Przydzielenie VM prawie całej pamięci i wszystkich procesorów hosta.
  • Uznanie obrazu ISO za gotowy dysk z zainstalowanym systemem.
  • Pozostawienie długiego łańcucha snapshotów zamiast ich planowego scalenia lub usunięcia.
  • Traktowanie snapshotu przechowywanego na tym samym dysku jak niezależnego backupu.
  • Dołączenie ryzykownego laboratorium przez bridged do sieci organizacji.
  • Założenie, że NAT zastępuje zaporę, aktualizacje i bezpieczną konfigurację usług.
  • Pomylenie kontenera LXC z pełną maszyną KVM.
  • Włączenie współdzielonego schowka i katalogów bez oceny wpływu na izolację.

Podsumowanie

Maszyna wirtualna jest kompletnym środowiskiem systemu gościa, którego zasoby planuje hipernadzorca. Dobry projekt rozróżnia warstwy sprzętu, formatu dysku, alokacji i sieci, pozostawia zapas dla hosta, nie myli snapshotu z backupem oraz obejmuje cały cykl życia od planowania po bezpieczne wycofanie.

Oficjalne źródła

Dokumentacja funkcji i ograniczeń może zmieniać się wraz z platformami. Przed wdrożeniem produkcyjnym sprawdź aktualny dokument producenta dla używanego środowiska.