Kontakt: +48 606 356 235 lub napisz do nas

Oracle VM VirtualBox - wirtualizacja na szybko

Autor: Ireneusz Piasecki   21 Luty 2024   22 Luty 2024

“Oracle VM VirtualBox”

1. Wstęp

Oracle VM VirtualBox to idealne narzędzie, które pozwala na łatwe zapoznanie się ze światem wirtualizacji i do tego, co najważniejsze, jako dojrzały produkt udostępniony na licencji typu “Open Source” umożliwia uruchomienie praktycznie dowolnego systemu operacyjnego na komputerze klasy “desktop”.

VirtualBox jest rozwiązaniem w pełni profesjonalnym, ciągle rozwijanym i dostępnym za darmo na wiele platform: Linux, Windows, macOS.

Niemniej należy mieć na uwadze, iż VirtualBox używa architektury hypervisora typu drugiego, co ma wpływ na wydajność i przez to zazwyczaj jest używany w środowisku “desktop” and “developer”.

2. Co daje wirtualizacja

VirtualBox posiada cechy i funkcje, które są użyteczne w następujących przypadkach:

  1. Jednoczesne uruchamianie wielu systemów operacyjnych - Oracle VM VirtualBox umożliwia jednoczesne uruchomienie więcej niż jednego systemu operacyjnego. Dzięki temu można uruchamiać oprogramowanie napisane dla jednego systemu operacyjnego na innym. Jako przykład: uruchamianie systemu Windows i jego oprogramowania na Linuksie lub komputerze Mac, bez konieczności ponownego uruchamiania komputera.

    VirtualBox pozwala skonfigurować różnorodny sprzęt na poziomie wirtualnym i w ten spsób prezentować go danej maszynie wirtualnej. Można więc zainstalować praktycznie dowolny system operacyjny, nawet taki jak DOS lub OS/2, mimo tego, że sprzęt komputera gospodarza (“hosta”) tak naprawdę nie jest już obsługiwany przez ten system operacyjny. Daje to ogromne możliwości testowania wielu systemów operacyjnych w zunifikowanym środowisku, bez konieczności trwałej instalacji jakiegokolwiek systemu operacyjnego.

  2. Łatwiejsza instalacja oprogramowania - dostawcy oprogramowania mogą używać maszyn wirtualnych do dostarczania całych konfiguracji oprogramowania nazywanym z ang. “applance” (“urządzenie”). Na przykład instalacja kompletnego rozwiązania serwera poczty na prawdziwym komputerze może być zadaniem czasochłonnym i trudnym do wykonania dla osoby, która wcześniej nie miała z tym styczności. Dzięki Oracle VM VirtualBox tak złożoną konfigurację, często nazywaną urządzeniem, można spakować do maszyny wirtualnej. Instalacja i uruchomienie serwera pocztowego staje się tak proste, jak zaimportowanie takiego urządzenia do Oracle VM VirtualBox. Wszystko jest praktycznie gotowe do uruchomienia - “z pudełka”.

  3. Testowanie i odzyskiwanie po awarii - po zainstalowaniu maszynę wirtualną i jej wirtualne dyski twarde można uznać niejako za kontener, który można dowolnie zamrażać, wzbudzać, kopiować, tworzyć kopie zapasowe i migrować między hostami.

    Korzystanie z maszyn wirtualnych umożliwia na przykład budowanie i testowanie wielowęzłowej usługi sieciowej. Można łatwo zbadać problemy z siecią, systemem operacyjnym i konfiguracją oprogramowania.

    Dodatkowo, wykorzystując kolejną funkcję Oracle VM VirtualBox zwaną migawkami, można zapisać określony stan maszyny wirtualnej i w razie potrzeby powrócić do tego stanu. W ten sposób można swobodnie eksperymentować ze środowiskiem komputerowym. Jeśli coś pójdzie nie tak, np. problemy po instalacji oprogramowania lub zainfekowaniu maszyny wirtualnej wirusem, można łatwo wrócić do poprzedniej migawki i uniknąć konieczności częstego tworzenia kopii zapasowych i przywracania.

    Można utworzyć dowolną liczbę migawek, co pozwala na podróżowanie w przód i w tył w czasie maszyny wirtualnej. Można usuwać migawki podczas działania maszyny wirtualnej, aby odzyskać miejsce na dysku.

  4. Konsolidacja infrastruktury i obniżenie kosztów - wirtualizacja może znacznie obniżyć koszty sprzętu i energii elektrycznej oraz ułatwić zarządzanie. W większości przypadków współczesne komputery zużywają jedynie ułamek swojej potencjalnej mocy i działają przy niskim średnim obciążeniu systemu. W ten sposób marnuje się wiele zasobów sprzętowych i energii elektrycznej. Zamiast więc uruchamiać wiele takich komputerów fizycznych, które są tylko częściowo wykorzystywane, można spakować wiele maszyn wirtualnych na kilka potężnych hostów i zrównoważyć obciążenia między nimi. Ponadto wykonywanie kopii bezpieczeństwa na działającej maszynie wirtualnej dodatkowo podnosi elastyczność rozwiązania.

3. Trochę terminologii

Przy omawianiu tematu wirtualizacji, nie sposób pominąć wyjaśnienia terminologi, które da więcej światła na terminy używane w tej dziedzinie i pozwoli łatwiej zrozumieć temat osobom, które dopiero zaczynają swoją przygodę z wirtualizacją.

  1. System operacyjny hosta - to jest system operacyjny komputera fizycznego, na którym zainstalowano Oracle VM VirtualBox. Istnieją wersje Oracle VM VirtualBox dla hostów Windows, macOS, Linux i Oracle Solaris.

  2. System operacyjny gościa - to system operacyjny działający na maszynie wirtualnej. Teoretycznie Oracle VM VirtualBox może uruchomić dowolny system operacyjny x86, taki jak DOS, Windows, OS/2, FreeBSD i OpenBSD. Jednak aby osiągnąć niemal natywną wydajność kodu gościa na komputerze hosta, twórcy musieli dokonać wiele optymalizacji specyficznych dla niektórych systemów operacyjnych. Tak więc, chociaż każdy system operacyjny może działać jako gość, oficjalnie Oracle VM VirtualBox wspiera i posiada optymalizację dla kilku wybranych systemów, w tym najpopularniejszych systemów operacyjnych.

  3. Maszyna wirtualna (VM) - to specjalne środowisko, które Oracle VM VirtualBox tworzy dla systemu gościa podczas jego działania. Innymi słowy, na maszynie wirtualnej jest uruchamiany system gościa. Zwykle maszyna wirtualna jest wyświetlana jako okno na pulpicie komputera. W zależności od tego, który z różnych interfejsów Oracle VM VirtualBox jest używany, maszyna wirtualna może być wyświetlana w trybie pełnoekranowym lub zdalnie na innym komputerze.

    Wewnętrznie Oracle VM VirtualBox traktuje maszynę wirtualną jako zestaw parametrów określających jej zachowanie. Niektóre parametry opisują ustawienia sprzętowe, takie jak ilość pamięci i liczba przypisanych procesorów. Inne parametry opisują informacje o stanie, takie jak to, czy maszyna wirtualna jest uruchomiona czy zapisana.

  4. Dodatki gościa - odnosi się to do specjalnych pakietów oprogramowania dostarczanych z Oracle VM VirtualBox, ale zaprojektowanych do instalacji wewnątrz maszyny wirtualnej w celu poprawy wydajności systemu gościa i dodania dodatkowych funkcji jak np.: schowek dwukierunkowy, tryb pełnoekranowy, wyłączenie maszyny wirtualnej za pomocą interfejsu ACPI itp.

4. Przegląd funkcjonalności

  1. Przenośność - Oracle VM VirtualBox działa na dużej liczbie 64-bitowych systemów operacyjnych hostów. Oracle VM VirtualBox to tak zwany hostowany hiperwizor, czasami nazywany hiperwizorem typu 2. Podczas gdy hypervisor typu bare-metal lub typu 1 działa bezpośrednio na sprzęcie, Oracle VM VirtualBox wymaga zainstalowania istniejącego systemu operacyjnego. Może zatem działać równolegle z istniejącymi aplikacjami na tym hoście.

    W bardzo dużym stopniu Oracle VM VirtualBox jest funkcjonalnie identyczny na wszystkich platformach hostujących, stosowane są te same formaty plików i obrazów. Umożliwia to uruchamianie maszyn wirtualnych utworzonych na jednym hoście na innym hoście z innym systemem operacyjnym hosta. Na przykład możesz utworzyć maszynę wirtualną w systemie Windows, a następnie uruchomić ją w systemie Linux.

    Ponadto maszyny wirtualne można łatwo importować i eksportować za pomocą Open Virtualization Format (OVF), standardu branżowego stworzonego do tego celu. Można nawet importować OVF utworzone za pomocą innego oprogramowania do wirtualizacji.

    W przypadku użytkowników Oracle Cloud Infrastructure funkcjonalność obejmuje eksportowanie i importowanie maszyn wirtualnych do i z chmury. Upraszcza to tworzenie aplikacji i wdrażanie ich w środowisku produkcyjnym.

  2. Dodatki dla gości - foldery współdzielone, płynne okna, wirtualizacja 3D. “Dodatki dla gości” Oracle VM VirtualBox to pakiety oprogramowania, które można zainstalować w obsługiwanych systemach-gościach w celu poprawy ich wydajności oraz zapewnienia dodatkowej integracji i komunikacji z systemem hosta. Po zainstalowaniu “dodatków dla gości” maszyna wirtualna będzie obsługiwać automatyczną regulację rozdzielczości wideo, płynne okna, przyspieszoną grafikę 3D i wiele więcej.

    W szczególności “dodatki dla gości” zapewniają foldery współdzielone, które umożliwiają dostęp do plików w systemie hosta z poziomu komputera-gościa.

  3. Kompleksowe wsparcie sprzętowe - Oracle VM VirtualBox obsługuje między innymi następujące funkcje:

    • Przetwarzanie wieloprocesowe gościa (SMP) - Oracle VM VirtualBox może zaprezentować do 32 wirtualnych procesorów każdej maszynie wirtualnej, niezależnie od tego, ile rdzeni procesora jest fizycznie obecnych na hoście.

    • Obsługa urządzeń USB - Oracle VM VirtualBox implementuje wirtualny kontroler USB i umożliwia podłączanie dowolnych urządzeń USB do maszyn wirtualnych bez konieczności instalowania sterowników specyficznych dla urządzenia na hoście. Obsługa USB nie jest ograniczona do niektórych kategorii urządzeń.

    • Kompatybilność sprzętu - Oracle VM VirtualBox wirtualizuje szeroką gamę urządzeń wirtualnych, w tym wiele urządzeń zwykle dostarczanych przez inne platformy wirtualizacyjne. Obejmuje to kontrolery dysków twardych IDE, SCSI i SATA, kilka wirtualnych kart sieciowych i dźwiękowych, wirtualne porty szeregowe i równoległe oraz zaawansowany programowalny kontroler przerwań wejścia/wyjścia (I/O APIC), który można znaleźć w wielu systemach komputerowych. Umożliwia to łatwe klonowanie obrazów dysków z rzeczywistych maszyn i importowanie maszyn wirtualnych innych firm do Oracle VM VirtualBox.

    • Pełna obsługa ACPI - zaawansowany interfejs konfiguracji i zasilania (ACPI) jest w pełni obsługiwany przez Oracle VM VirtualBox. Umożliwia to łatwe klonowanie obrazów dysków z rzeczywistych maszyn lub maszyn wirtualnych innych firm do Oracle VM VirtualBox. Dzięki unikalnej obsłudze stanu zasilania ACPI, Oracle VM VirtualBox może nawet raportować systemom operacyjnym gościa obsługującym ACPI stan zasilania hosta. W przypadku systemów mobilnych zasilanych baterią gość może w ten sposób włączyć oszczędzanie energii i powiadomić użytkownika o pozostałej energii, na przykład w trybach pełnoekranowych.

    • Rozdzielczość wieloekranowa - Maszyny wirtualne Oracle VM VirtualBox obsługują rozdzielczości ekranu wielokrotnie przekraczające rozdzielczość ekranu fizycznego, co pozwala na rozłożenie ich na dużą liczbę ekranów podłączonych do systemu hosta.

    • Wbudowana obsługa iSCSI - ta unikalna funkcja umożliwia podłączenie maszyny wirtualnej bezpośrednio do serwera pamięci masowej iSCSI bez konieczności przechodzenia przez system hosta. Maszyna wirtualna uzyskuje bezpośredni dostęp do celu iSCSI bez dodatkowego obciążenia wymaganego do wirtualizacji dysków twardych w plikach kontenerów.

    • Uruchomienie sieci PXE - zintegrowane wirtualne karty sieciowe Oracle VM VirtualBox w pełni obsługują zdalne uruchamianie przy użyciu środowiska Preboot Execution Environment (PXE).

    • Zagnieżdzona wirtualizacja - obsługa zagnieżdżonej wirtualizacji (“wirtualizacja w wirtualizacji”) pozwala uruchamiać i testować środowiska uruchamiane w innych hypervisorach wirtualizacyjnych, które są uruchamiane w środowisku Oracle VM VirtualBox.

  4. Rozgałęzione migawki - Oracle VM VirtualBox może zapisywać dowolne migawki stanu maszyny wirtualnej. Można cofnąć się w czasie i przywrócić maszynę wirtualną do dowolnej takiej migawki, a następnie rozpocząć od niej alternatywną konfigurację maszyny wirtualnej, skutecznie tworząc całe drzewo migawek. Można tworzyć i usuwać migawki, gdy maszyna wirtualna jest uruchomiona.

  5. Grupy maszyn wirtualnych - Oracle VM VirtualBox udostępnia funkcję grup, która umożliwia użytkownikowi organizowanie i kontrolowanie maszyn wirtualnych zarówno zbiorowo, jak i indywidualnie. Oprócz grup podstawowych możliwe jest również to, że każda maszyna wirtualna może znajdować się w więcej niż jednej grupie, a grupy będą zagnieżdżone w hierarchii. Oznacza to, że można tworzyć grupy grup. Ogólnie rzecz biorąc, operacje, które można wykonać na grupach, są takie same, jak te, które można zastosować do poszczególnych maszyn wirtualnych: Start, Wstrzymaj, Resetuj, Zamknij (Zapisz stan, Wyślij wyłączenie, Wyłącz), Odrzuć zapisany stan.

  6. Czysta architektura i niespotykana dotąd modułowość - Oracle VM VirtualBox ma wyjątkowo modułową konstrukcję z dobrze zdefiniowanymi wewnętrznymi interfejsami programistycznymi i czystym oddzieleniem kodu klienta i serwera. Ułatwia to sterowanie nim z kilku interfejsów jednocześnie. Na przykład można uruchomić maszynę wirtualną, po prostu klikając przycisk w graficznym interfejsie użytkownika Oracle VM VirtualBox, a następnie sterować tą maszyną z wiersza poleceń lub nawet zdalnie.

    Dzięki swojej modułowej architekturze Oracle VM VirtualBox może również udostępnić pełną funkcjonalność i konfigurowalność poprzez kompleksowy zestaw programistyczny (SDK), który umożliwia integrację Oracle VM VirtualBox z innymi systemami oprogramowania.

  7. Zdalny wyświetlacz maszyny - rozszerzenie VirtualBox Remote Desktop Extension (VRDE) umożliwia wydajny zdalny dostęp do dowolnej działającej maszyny wirtualnej. To rozszerzenie obsługuje protokół Remote Desktop Protocol (RDP), pierwotnie wbudowany w system Microsoft Windows, ze specjalnymi dodatkami zapewniającymi pełną obsługę USB klienta.

    VRDE nie opiera się na serwerze RDP wbudowanym w Microsoft Windows. Zamiast tego VRDE jest podłączane bezpośrednio do warstwy wirtualizacji. Dzięki temu współpracuje z systemami gościnnymi innymi niż Windows, nawet w trybie tekstowym i nie wymaga także obsługi aplikacji na maszynie wirtualnej.

  8. Więcej unikalnych funkcji:

    • Rozszerzalne uwierzytelnianie RDP. Oracle VM VirtualBox obsługuje już Winlogon w systemie Windows i PAM w systemie Linux w celu uwierzytelniania RDP. Ponadto zawiera łatwy w użyciu pakiet SDK, który umożliwia tworzenie dowolnych interfejsów dla innych metod uwierzytelniania.

    • USB przez RDP. Korzystając z obsługi kanałów wirtualnych RDP, Oracle VM VirtualBox umożliwia także lokalne podłączenie dowolnych urządzeń USB do maszyny wirtualnej działającej zdalnie na serwerze Oracle VM VirtualBox RDP.

5. Podsumowanie

Oracle VM VirtualBox jest świetnym narzędziem i sprawdza się wszędzie tam, gdzie istnieje konieczność szybkiego przetestowania różnych funkcjonalności w danym środowisku operacyjnym. Oszczędza czas i pieniądze, ponieważ nie trzeba angażować fizycznych maszyn, aby przetestować daną koncepcję czy rozwiązanie. Jego stabilność pozwala na codzienną pracę również z systemem operacyjnym zainstalowanym jak maszyna wirtualna Oracle VM VirtualBox.

Kilka przykładowych ekranów

“Oracle VM VirtualBox”

“Oracle VM VirtualBox”

“Oracle VM VirtualBox”