Wirtualizacja cz.1: czym jest serwer wirtualny?
Aby zrozumieć serwery wirtualne pomocnym może być zrozumienie pojęcia wirtualnych urządzeń. Wykorzystując zasoby fizyczne naszego komputera (procesor, pamięć RAM, przestrzeń na dysku twardym) możemy uruchomić wersje wirtualną naszego komputera zwaną z angielskiego virtual machine (VM).
Z pomocą wirtualnej maszyny możemy zarządzać wirtualnym systemem operacyjnym, który na niej zainstalujemy – w skrócie, to taki komputer w komputerze. Warto wiedzieć, że wirtualny system zainstalowany na wirtualnym komputerze nie musi posiadać tej samej wersji, co system postawiony na komputerze fizycznym. Z serwerami jest podobnie. Serwer wirtualny to właśnie VM (virtual machine) z oprogramowaniem serwerowym – jak na przykład Windows Server 2012.
Po co serwer wirtualny?
Jest kilka powodów, dla których warto zainwestować w wirtualizację. Mając odpowiednio mocne urządzenie fizyczne (hardware) można zarządzać kilkoma wirtualnymi maszynami (VM), które na tym urządzeniu zainstalujemy. Dzięki temu nie musimy kupować nowego sprzętu dla każdego oddzielnego serwera. Dobrym przykładem takiego rozwiązania może być wirtualna maszyna działająca jako serwer pocztowy Kerio Connect i serwer MailStore służący do archiwizacji poczty. Obydwa serwery mogą być postawione na tej samej jednostce fizycznej i w żaden sposób nie będą sobie wzajemnie przeszkadzały, ponieważ każda z tych wirtualnych maszyn (VM) posiada przydzielony dla niej procesor, przestrzeń dyskową, pamięć operacyjną itd. Działają kompletnie niezależnie.
Oczywiście jak wszystko tak i nasze zasoby wirtualne są ograniczone, mamy tu na myśli ograniczenia urządzenia fizycznego (hardware) – zbyt duża ilość serwerów wirtualnych (VS) postawiona na jednym takim urządzeniu lub jeden serwer ze szczególnie obciążającymi system zasobami i całość drastycznie drastycznie nam zwolni. Aby ustrzec się takich sytuacji najbardziej efektywne wirtualne infrastruktury nie działają w oparciu o pojedynczy serwer fizyczny, zamiast tego używają kilku lub kilkunastu serwerów w celu rozłożenia obciążenia.
powyższa grafika przedstawia nam dwa rodzaje serwerów – z lewej strony widzimy architekturę serwera fizycznego: komputerowe hardware, system operacyjny, który instalujemy na nim oraz aplikacje uruchamiane na zainstalowanym systemie operacyjnym.
Z drugiej strony widzimy serwer wirtualny, posiadający dwa systemy operacyjne, z których każdy posiada inny procesor, pamięć, przestrzeń dyskową i zainstalowane tam aplikacje. Jest tam też coś jeszcze, o czym do tej pory nie wspominaliśmy – to coś, to Hypervisor.
Czym jest Hypervisor?
Hypervisor lub jeśli ktoś woli Virtual Machine Monitor (VMM), to swego rodzaju pośrednik pomiędzy serwerowym hardware a serwerami wirtualnymi, które sa na nim zainstalowane. To zupełnie tak jak system operacyjny Windows, który jest platformą, na której instalujemy różnego rodzaju aplikacje. Tutaj taką platformą jest hypervisor, na którym uruchamiamy naszego Windowsa lub inny serwer wirtualny. To właśnie hypervisor umożliwia oddzielenie od siebie wirtualnych maszyn. Hardware fizyczny jest tu nazywany hostem a nasze wirtualne maszyny gośćmi (ang. Guests).
Popularnymi hypervisorami są Microsoft Hyper-V lub Vmware czy Oracle VM, które jak wspominaliśmy wcześniej odpowiadają za komunikację i zarządzanie pomiędzy hostem i wirtualnymi maszynami. Bez nich uruchomienie serwera wirtualnego nie byłoby możliwe.
Jest jeszcze jedna bardzo istotna kwestia dotycząca serwerów wirtualnych – jeśli ulegną one awarii, w przeciwieństwie do serwerów fizycznych – można je przywrócić w bardzo szybkim czasie zwłaszcza, gdy użyjemy do tego oprogramowanie do tworzenia kopii zapasowych BackupAssist, dzięki temu jesteśmy w stanie ograniczyć przestoje do niezbędnego minimum, co w dzisiejszych czasach nie pozostaje bez znaczenia zwłaszcza dla biznesu.
Źródło