Upraszczając, można myśleć o maszynie wirtualnej jak o „komputerze składającym się z oprogramowania”, który umożliwia uruchamianie dowolnego oprogramowania uruchamianego na komputerze fizycznym. Maszyna wirtualna, podobnie jak maszyna fizyczna, ma swój własny system operacyjny (Windows, Linux itp.), pamięć, sieć, ustawienia konfiguracji oraz oprogramowanie i jest w pełni izolowana od innych maszyn wirtualnych działających na tym samym hoście.
Wirtualizacja konsoliduje wiele niewielkich obciążeń na jednym komputerze fizycznym, co zapewnia większą wydajność i mniejsze koszty IT. Wdrażanie nowej maszyny wirtualnej z systemem operacyjnym i aplikacjami umożliwia administratorom IT łatwe wdrażanie środowisk dewelopersko-testowych i weryfikacji koncepcji przed zmianą środowisk produkcyjnych.
Maszyny wirtualne mogą także ułatwić zarządzanie zasobami za sprawą konsolidacji maszyn wirtualnych na mniejszej liczbie serwerów fizycznych. Zarządzanie maszynami wirtualnymi pomaga również oszczędzić czas dzięki utrzymywaniu mniejszej ilości sprzętu, szybszemu udostępnianiu zasobów i skracaniu przestojów. Mogą one też zmniejszyć przestrzeń potrzebną do rozmieszczenia serwerów, a w rezultacie ograniczają zużycie energii, co sprawia, że są nieco bardziej ekologicznym wyborem.
Co więcej, maszyny wirtualne pozwalają na ekonomiczne uruchamianie starszych aplikacji bez konieczności migracji do całkowicie nowego systemu operacyjnego. Gdy sprzęt się zużywa lub staje przestarzały, wirtualizacja umożliwia użytkownikom korzystanie z tego, co najlepsze w obu światach: mogą uaktualnić sprzęt, zachowując jednocześnie dostęp do starszych systemów operacyjnych.
Najlepsza maszyna wirtualna jest w pełni przenośna, co oznacza, że można ją przenosić między fizycznymi komputerami w sieci, a nawet między środowiskami lokalnymi i chmurowymi. Uruchamianie wielu maszyn wirtualnych na tym samym hoście może zoptymalizować wykorzystanie zasobów systemowych.
Nasza platforma chmurowa oferuje najnowsze korzyści technologii wirtualizacji. Maszyny wirtualne oparte na Oracle Cloud Infrastructure (OCI) zapewniają bezpieczną, elastyczną zdolność przetwarzania w chmurze dla różnych obciążeń — od małych projektów programistycznych po rozbudowane aplikacje. Umożliwiamy łatwe wdrażanie, zarządzanie i wycofywanie maszyn wirtualnych. Ponadto obsługujemy wiele systemów operacyjnych Microsoft Windows Server i Linux ze standardowymi obrazami i bezpiecznymi konfiguracjami, które zapobiegają występowaniu błędów ludzkich, a także obniżają koszty i zwiększają bezpieczeństwo.
Dzięki wirtualizacji jeden komputer (host) może uruchamiać wiele komputerów wirtualnych (maszyny wirtualne), z których każdy ma własny system operacyjny, rdzenie procesora, pamięć i sieć. Ponieważ wirtualizacja umożliwia konsolidację wielu małych obciążeń na jednym fizycznym komputerze, zapewnia ona wysokie wykorzystanie zasobów, co zmniejsza koszty IT.
Jeśli wirtualizacja jest definiowana jako proces umożliwiający działanie wielu systemów operacyjnych na komputerze z jednym hostem, to niezwykle istotnym składnikiem stosu wirtualizacji jest hipernadzorca, który łączy maszynę wirtualną i komputer host. Hipernadzorca to warstwa oprogramowania, która umożliwia uruchamianie maszyn wirtualnych na komputerze hoście oraz dystrybucję procesorów i pamięci masowej do wszystkich maszyn wirtualnych.
Hipernadzorca może być także nazywany monitorem maszyn wirtualnych (virtual machine monitor, VMM) i tworzy wirtualną platformę, za pomocą której wiele maszyn wirtualnych jest uruchamianych i monitorowanych. Pozwala to na współdzielenie zasobów sprzętowych przez wiele systemów operacyjnych.
Przykładem może być VirtualBox, popularny produkt, który służy do tworzenia środowiska wirtualnego. Jest to bezpłatne oprogramowanie typu open source umożliwiające programistom i administratorom IT szybkie wdrażanie systemów operacyjnych. VirtualBox można zainstalować na systemach macOS, Linux i Windows. Inni hipernadzorcy to np. VMware vSphere oraz Microsoft Hyper-V.
Współczesne organizacje muszą zmierzyć się z problemem rosnącej złożoności i udostępniania w centrach danych, jeśli chcą się rozwijać. Ograniczenia, jakich doświadczają obejmują zwiększone zapotrzebowanie na energię, koszty centrów danych, ograniczenia przestrzeni fizycznej i złożoność połączeń wzajemnych.
Producenci oprogramowania i sprzętu zaczęli zajmować się niektórymi z tych problemów, zmieniając sposób projektowania tradycyjnych centrów danych za pomocą wirtualizacji. Istnieją różne rodzaje wirtualizacji:
Wirtualizacja sprzętu, w tym wersji komputerów i systemów operacyjnych, tworzy pojedynczy, wirtualny, skonsolidowany serwer podstawowy.
Tworzy system komputerowy, włączając w to sprzęt, który umożliwia uruchamianie jednego lub więcej systemów operacyjnych gościa na fizycznym komputerze hosta.
Wirtualizuje pamięć masową poprzez konsolidację wielu urządzeń pamięci masowej, które pojawiają się jako pojedyncza jednostka, co zapewnia większą wydajność i szybkość.
Zapewnia wirtualną sieć w chmurze opartą na aplikacjach w rozproszonym zestawie systemów, oddzielając ją od fizycznej infrastruktury sieciowej. Wirtualizacja sieci przydziela przepustowość między kanałami, dostarczając zasoby serwerom i urządzeniom w czasie rzeczywistym.
Oddziela środowisko pulpitu od urządzenia fizycznego i przechowuje pulpit na zdalnym serwerze, umożliwiając dostęp z dowolnego miejsca na dowolnym urządzeniu.
Łatwo jest pomylić wirtualizację z chmurą, głównie dlatego, że obie te rzeczy dotyczą tworzenia funkcjonalnych środowisk z zasobów w sieci. Wirtualizacja to jednak technologia służąca do uruchamiania wielu maszyn wirtualnych na jednym sprzęcie. Sprzęt obsługuje oprogramowanie, umożliwiając instalację wielu systemów operacyjnych, które mogą działać jednocześnie i niezależnie, w bezpiecznym środowisku i przy minimalnym spadku wydajności.
Z kolei chmury to środowiska IT, które abstrahują, łączą i współdzielą skalowalne zasoby w sieci.
Wirtualizacja to technologia, w której przetwarzanie w chmurze jest środowiskiem. Stanowi podstawowe oprogramowanie umożliwiające przetwarzanie w chmurze, które stało się tak niezbędnym narzędziem, że firmy, które z niego nie korzystają, znajdują się w niekorzystnej sytuacji konkurencyjnej.
Kontenery i maszyny wirtualne są używane zarówno przez programistów, jak i specjalistów IT do tworzenia izolowanych środowisk wirtualnych do testowania i tworzenia oprogramowania. Podczas gdy maszyna wirtualna jest zależna od hosta w kwestii uruchamiania kompletnego systemu operacyjnego, kontener to izolowany silos, który uruchamia aplikację na hoście. Kontenery uruchamiają aplikacje, które nie są zależne od systemu operacyjnego — izolują za to aplikację, wirtualizując ją.
Ponieważ kontenery nie zawierają systemów operacyjnych, są one lekkie i bardziej przenośne niż maszyny wirtualne. Jedna mimo że kontenery są przenośne, to nadal są ograniczone przez ich system operacyjny, więc np. kontener dla systemu Windows nie będzie działać w systemie Linux. Ostatecznie decyzja o wyborze kontenera lub maszyny wirtualnej zależy od tego, w jaki sposób będzie wykorzystywane środowisko wirtualne.
Kubernetes to system open source do zarządzania aplikacjami w środowisku kontenerowym. Automatyzuje procesy wdrażania i skalowania aplikacji kontenerowych. Stosowanie wielu kontenerów dla aplikacji stało się powszechną praktyką; kontenery są rozdzielane na kilka serwerów. Nasze rozwiązanie Container Engine for Kubernetes to zarządzana usługa umożliwiająca wdrażanie kontenerów, tak by można je było skalować w celu dopasowania do obciążenia.
Dowiedz się więcej o różnicach między tworzeniem i wdrażaniem aplikacji na maszynach wirtualnych oraz przy użyciu Kubernetes.
Oferujemy zintegrowane produkty do wirtualizacji — od komputerów stacjonarnych po centrum danych i chmurę publiczną. Wykraczając daleko poza prostą konsolidację, umożliwiamy użytkownikom wirtualizację całego sprzętu i stosu oprogramowania oraz zarządzanie nim.
Dowiedz się więcej o tym, jak zarządzać swoją maszyną Oracle Linux KVM:
Oracle VM daje użytkownikom możliwość wdrażania systemów operacyjnych i oprogramowania aplikacji w obsługiwanym środowisku wirtualizacji. Oferta Oracle obejmuje następujące produkty: