Co to jest wirtualizacja?

Udostępnij na: Facebook

Autor: Dariusz Porowski

Opublikowano: 2011-08-11

Jeżeli mamy odpowiedzieć jednym zdaniem na pytanie „co to jest wirtualizacja?”, to można śmiało powiedzieć, że jest to osiągnięcie logicznego zasobu przez abstrakcję zasobów fizycznych. To stwierdzenie można dopasować do każdego obszaru wirtualizacji, jednak ono nie mówi nam o jakim obszarze dyskutujemy oraz co to właściwie jest ta wirtualizacja. Obszar wirtualizacji? Tak! Dla większości wirtualizacja kojarzy się wyłącznie z wirtualizacją serwerów dlatego, że jest ona najbardziej rozpowszechniona. Jednak istnieją różne obszary, które mają zarówno zupełnie inne  zastosowanie, jak i techniczną implementację.

Po zapoznaniu się z tym artykułem będziesz:

  • rozróżniał obszary wirtualizacji i potrafił dopasować je do stawianych celów,
  • wiedział, jakie technologie Microsoftu wchodzą w dany obszar wirtualizacji.

Artykuł jest początkiem serii artykułów w ramach sekcji Początki z wirtualizacją wchodzącej w cykl Podstawy wirtualizacji i Hyper-V. W ramach serii dostępny jest jeszcze artykuł:

  • Wirtualizacja serwerów na dzień dobry, w którym znajdziemy podstawowe informacje na temat terminologii, narzędzi oraz technologii używanych w wirtualizacji serwerów.

Obszary wirtualizacji

Wirtualizacja serwerów (ang. Server Virtualization) – technologia ta  umożliwia wielu aplikacjom działanie na wielu systemach operacyjnych uruchomionych na tym samym fizycznym serwerze z wykorzystaniem wolnej mocy. Dzięki temu można w pełni wykorzystać moc obliczeniową i zasobową serwerów, stawiając kolejne maszyny wirtualne na jednym fizycznym serwerze – zamiast kupować kolejne serwery fizyczne. Dodatkową zaletą jest też szybsze dostarczenie usług dla biznesu w ciągu bardzo krótkiego czasu tworzenia nowego wirtualnego systemu operacyjnego gotowego do pracy. Ponadto podstawowe zadania konserwacyjne związane z serwerami są znacznie uproszczone i przyśpieszone.

Technologie:

  • Hyper-V
  • Virtual Server

Wirtualizacja aplikacji (ang. Application Virtualization) – ta technologia izoluje od siebie aplikacje, dzięki czemu rozwiązuje problem zgodności różnych aplikacji, umożliwiając tym samym aplikacjom działanie razem, mimo że mogą wymagać tych samych zasobów systemu operacyjnego w różnych wersjach (np. różne wersje bibliotek DLL). Usprawnia to również proces testowania aplikacji, ponieważ nie musimy już sprawdzać, jak różne grupy aplikacji współpracują ze sobą, za każdym razem, kiedy jedną z aplikacji aktualizujemy. Zastosowanie tej technologii pozwala również na przechowywanie aplikacji centralnie i strumieniowanie ich do komputera PC w oparciu o aktualnie zalogowanego użytkownika. Ponadto całkowite usunięcie standardowo instalowanych aplikacji ze stacji roboczej pozwala na zmniejszenie ilości obrazów systemów operacyjnych dla różnych grup biznesowych.

Technologie:

  • Application Virtualization (App-V)
  • Application Virtualization for Remote Desktop Services (App-V for RDS)

Wirtualizacja prezentacji (ang. Presentation Virtualization) – to technologia dostarczenia aplikacji lub całego pulpitu poprzez strumieniowanie obrazu do odbiorcy. Cały kod aplikacji oraz przetwarzanie danych odbywa się po stronie serwera. Umożliwia pracownikom elastyczną pracę niezależnie od ich lokalizacji lub lokalizacji urządzenia dostępowego, dając użytkownikom dostęp do aplikacji i całych pulpitów ze stron WWW, lokalnych komputów w domu lub przez Internet. Rozwiązanie to upraszcza również proces wdrażania aplikacji biznesowych, gdyż wdrożenie realizowane jest jedynie na serwerach działających w farmie, a nie – jak w przypadku standardowej aplikacji – na wszystkich stacjach roboczych.

Technologie:

  • Remote Desktop Services (RDS)
  • Terminal Services (TS)

Wirtualizacja stacji roboczych (utrzymywana na kliencie) (ang. Client-HostedDesktop Virtualization) – to rodzaj wirtualizacji, która oddziela system operacyjny kliencki od sprzętu fizycznego i umożliwia uruchomienia maszyn wirtualnych na jednym komputerze PC obok klienckiego systemu operacyjnego hosta. Może być centralnie zarządzana, a obrazy maszyn wirtualnych mogą być dostarczane również centralnie. Technologię tę stosuje się wtedy, gdy zachodzi potrzeba zapewnienia zgodności aplikacji z systemem operacyjnym. Aplikacje są zainstalowane w maszynie wirtualnej i tam wykonuje się ich kod. Dostarczenie aplikacji do użytkownika odbywa się najczęściej w trybie seamless, czyli bez dodatkowej otoczki pulpitu – jedynie widok samej aplikacji.

Technologie:

  • Enterprise Desktop Virtualization (MED-V)
  • Windows Virtual PC XP Mode

Wirtualizacja stacji roboczych (utrzymywana na serwerze)(ang. Server-Based Desktop Virtualization) – znana bardziej pod nazwą Wirtualna infrastruktura stacji roboczych (ang. Virtual Desktop Infrastructure – VDI). Jest to przeniesienie klasycznego środowiska pracy użytkownika, opartego na stacjach roboczych, do centrum przetwarzania danych, gdzie stacja robocza jest uruchomiona w postaci maszyny wirtualnej, a dostęp do niej zapewniony jest drogą sieciową. Połączenie może być zrealizowane z dowolnego komputera PC, laptopa lub cienkiego klienta, który jest preferowaną formą dostępu do VDI. Sam w sobie VDI nie jest jedną technologią – to połączenie kilku niezależnych rozwiązań, które w podstawowej architekturze łączy ze sobą wirtualizację serwerów z wirtualizacją prezentacji.

Technologie:

  • VDI
    —  Hyper-V
    —  Remote Desktop Services (RDS)
    —  Windows Virtual Enterprise Centralized Desktop (VECD)
    —  Windows ThinPC

Wirtualizacja pamięci masowych (ang. Storage Virtualization) – jest to koncepcja, dzięki której można osiągnąć niezależność lokalizacyjną dla danych przez abstrakcję fizycznej lokalizacji danych. To w pewnym sensie odwrotny efekt, niż w przypadku wirtualizacji serwerów. Zamiast zamieniać pojedyncze serwery fizyczne na wiele maszyn wirtualnych, wirtualizacja pamięci masowych daje możliwość, aby wiele macierzy było widocznych jako jedno wirtualne urządzenie, do którego podłączają się odbiorcy.

Technologie:

  • Windows Storage Server
  • System Center Data Protection Manager (SCDPM)

Wirtualizacja stanu użytkownika (ang. User State Virtualization) – polega na oddzieleniu danych użytkownika od komputera PC i przechowywaniu ich centralnie (np. w centrum przetwarzania danych), z jednoczesną możliwością podjęcia ich na dowolnym komputerze PC. Użytkownik, który często zmienia miejsce logowania się w firmie, ma dostarczone swoje pliki dokumentów bez długiego czasu ściągania ich lub ręcznego kopiowania. Upraszcza to tworzenie kopii zapasowych danych użytkownika, ponieważ dane są już zapisane centralnie na serwerach.

Technologie:

  • OfflineFiles
  • Folder Redirection
  • Roaming User Profile

Wirtualizacja sieci (ang. Network Virtualization), którą można podzielić na dwa rodzaje – zewnętrzną oraz wewnętrzną. Zewnętrzna wirtualizacja sieci to znana od lat technologia VLAN (802.1Q), czyli logiczny podział segmentów sieci na fizycznym sprzęcie sieciowym przez znakowanie ramek. Wewnętrzna natomiast to rozwiązanie polegające na tworzeniu wirtualnych przełączników i portów na poziomie hiperwizora. Takie zwirtualizowane przełączniki dostarczają komunikację sieciową dla maszyn wirtualnych oraz łączą je z zewnętrzną fizyczną siecią.

Technologie:

  • Hyper-V
  • VLAN

Chmura prywatna (ang. Private Cloud) to realizacja koncepcji chmury wewnątrz własnej firmy, czyli na własnych serwerach i własnym oprogramowaniu. W wersji podstawowej w chmurze prywatnej można zrealizować model infrastruktury jako usługi (ang. Infrastructure as a Service  – IaaS). Bardziej złożone chmury prywatne mogą realizować model platformy jako usługi (ang. Platform as a Service – PaaS). Odbiorca mocy obliczeniowej lub zasobów nie wie tak naprawdę, w którym miejscu infrastruktury firmy się znajduje, gdyż jego przestrzeń może dynamicznie wędrować między serwerami oraz dynamicznie się skalować. Podsumowując, chmura prywatna to nic innego, jak usługi przetwarzania w chmurze świadczone przez dział IT dla własnej firmy.

Technologie:

  • Hyper-V Cloud:
    — Hyper-V
    — System Center Virtual Machine Manager (SCVMM)
    — System Center Operations Manager (SCOM)
    — System Center Orchestrator (SCOR)

Chmura publiczna (ang. Public Cloud) – jest podstawowym modelem chmury obliczeniowej  (ang. Cloud Computing), w której można rozróżnić trzy typy usług: IaaS, PaaS oraz oprogramowanie jako usługa (ang. Software as a Service – SaaS). Wszystko, co stoi za utrzymaniem usług (miejsce, sprzęt, zasoby, ludzie, zarządzanie, bezpieczeństwo) jest realizowane za pośrednictwem firmy zewnętrznej. My, jako odbiorca usług, jedynie płacimy określoną kwotę np. za pomocą abonamentu rocznego i korzystamy z wykupionej usługi – cała reszta nas nie interesuje, tzn. problemy sprzętowe, kopie zapasowe, bezpieczeństwo fizyczne, personel i jego szkolenia, itp. Reasumując, chmura publiczna to określony zestaw usług IT oferowany w całości przez zewnętrznego dostawcę.

Technologie:

  • Office 365
  • Azure Platform
  • Dynamics CRM Online
  • Windows Intune
  • Windows Live

Chmura dedykowana (ang. Dedicated Cloud) – jest w pewnym sensie odmianą chmury publicznej, gdzie usługodawca wydziela konkretny kawałek sprzętu i zasobów na potrzeby usługobiorcy. Rozwiązanie jest dedykowane dla firm, które chcą mieć usługi mocno dostosowane do własnych potrzeb na kształt chmury prywatnej oraz chcą mieć wyizolowane środowisko na poziomie sprzętu.

Technologie:

  • Na dzień pisania artykułu firma Microsoft nie świadczy usług związanych z chmurą dedykowaną.

Chmura hybrydowa (ang. Hybrid Cloud) – to połączenie chmury prywatnej oraz chmury publicznej. Cały organizm chmury działa w bliskim połączeniu obu rodzajów chmur, gdzie część mechanizmów oraz usług jest realizowana lokalnie w chmurze prywatnej, a część zdalnie w chmurze publicznej.

Technologie:

  • Wymienione w ramach Chmura prywatna oraz Chmura publiczna.

Podsumowanie

Niniejszy artykuł miał na celu przybliżenie obszarów wirtualizacji oraz przedstawienie technologii, jakie wchodzą w dany obszar. Dzięki tej wiedzy łatwiej będzie dopasować technologię do realizacji założonego celu biznesowego.

W kolejnym artykule zbliżymy się do wirtualizacji serwerów. Przedstawiona w nim będzie terminologia używana w wirtualizacji serwerów oraz narzędzia oraz technologie, jakie się z nią wiążą.