Instruktor: Wirtualizacja jest ważna dla bezpieczeństwa
zarówno naszych serwerów lokalnych, jak i serwerów w chmurze.
W ostatnich latach wirtualizacja
nadal się rozwija, pomagając zmniejszyć
zapotrzebowanie na dodatkowe zasilanie, przestrzeń
i chłodzenie naszych serwerowni oraz zmniejszając
fizyczną architekturę związaną ze wspieraniem naszych
operacji informatycznych.
Czym jest wirtualizacja?
Wirtualizacja to komputer-host z zainstalowanym
hiperwizorem, który może być używany
do instalowania i zarządzania
wieloma systemami operacyjnymi gościa lub maszynami
wirtualnymi, znanymi jako maszyny wirtualne.
Jak to wygląda?
Cóż, zasadniczo masz kawałek sprzętu, który
nazywa się bare bones lub bare metal, a następnie
instalujesz na nim jakieś oprogramowanie do wirtualizacji,
które będzie znane jako hypervisor.
Obecnie hiperwizor występuje w dwóch rodzajach.
Możesz mieć hiperwizor bare bones lub bare metal,
który działa natywnie na sprzęcie lub możesz
mieć system operacyjny z hiperwizorem
działającym na tym systemie operacyjnym i to jest nasz
drugi typ.
Na przykład na moim laptopie mam MacBooka Pro, a na
tym MacBooku Pro mam system operacyjny Mac.
W tym systemie operacyjnym Mac zainstalowałem
hiperwizor znany jako VMware, na którym mogę faktycznie
uruchamiać system Windows wewnątrz
maszyny wirtualnej na moim komputerze Mac.
Teraz, w ramach wirtualizacji hiperwizora, mogę
zainstalować system operacyjny gościa,
w moim przypadku Windows, i dodać dowolne aplikacje.
Tak więc na moim konkretnym systemie Mac,
mimo że używam Maca jako mojego systemu operacyjnego
jako systemu operacyjnego hosta,
mam maszynę wirtualną z systemem Windows 10 i drugą
z systemem Ubuntu Linux.
Mam jeszcze jeden, na którym działa Kali Linux i podobne rzeczy.
W ten sposób mam dostęp do wszystkich tych systemów operacyjnych dla
dowolnych programów, których potrzebuję
lub demonstracji, które próbuję przeprowadzić w moich kursach.
Tak więc, gdy używamy wirtualizacji, każdy
serwer lub host będzie uruchamiał swój własny system operacyjny
wewnątrz tej maszyny wirtualnej, ale
maszyny wirtualne są uruchamiane na hiperwizorze.
Hiperwizor służy do zarządzania dystrybucją
zasobów fizycznych serwera lub hosta do tych maszyn
wirtualnych, w tym ilością
przetwarzania, pamięci i miejsca na dysku
twardym, które każda z nich otrzyma.
Jak już wspomniałem, hiperwizory występują
w dwóch różnych typach lub smakach.
Nazywamy je typem pierwszym i typem drugim.
Hiperwizor typu pierwszego jest również znany jako bare
metal, ponieważ działa bezpośrednio na sprzęcie
hosta i działa jako sam system operacyjny.
Przykładami mogą być Hyper-V,
XenServer, ESXi i vSphere.
Wszystko to są hiperwizory typu pierwszego.
Teraz dwa hiperwizory działają z poziomu zwykłego
systemu operacyjnego.
Coś takiego jak Windows, macOS X lub Linux.
Na przykład, jeśli używamy VMware Workstation
lub VirtualBox wewnątrz pulpitu Windows 10, jest
to uważane za hiperwizor typu drugiego.
W przypadku hiperwizora typu pierwszego lub drugiego nadal
musimy upewnić się, że każda maszyna wirtualna uruchamia
własną kopię systemu operacyjnego.
Coś takiego jak Red Hat Linux lub Windows Server 2019.
Wszystkie te serwery wymagają takich samych aktualizacji,
łatek bezpieczeństwa i poprawek, jak
tradycyjny serwer, więc musimy śledzić
każdą z tych maszyn wirtualnych i upewnić się, że
ich stan bezpieczeństwa jest dobrze dostrojony.
Obecnie wykorzystanie wirtualizacji w całej
branży wzrosło wykładniczo.
Wirtualizacja rozpoczęła się od wirtualizacji serwerów,
a teraz rozszerzyła się również na dostarczanie aplikacji użytkownikom
z centralnej lokalizacji.
Istnieją tak naprawdę dwa modele dostarczania
zwirtualizowanych usług aplikacji.
Są one znane jako wirtualizacja aplikacji oparta na serwerze
lub usługach terminalowych oraz
wirtualizacja aplikacji oparta na kliencie, znana
jako strumieniowanie aplikacji.
Obecnie usługi terminalowe
to oparte na serwerze rozwiązanie wirtualizacyjne,
które uruchamia aplikację na serwerach
w scentralizowanej lokalizacji,
a użytkownicy uzyskują dostęp do tej aplikacji
za pośrednictwem protokołu zdalnego
klienta, takiego jak RDP firmy Microsoft lub ICA firmy Citrix.
Przykładami takich rozwiązań są Microsoft Terminal
Services i Citrix XenApp.
Z drugiej strony, strumieniowanie aplikacji
jest rozwiązaniem wirtualizacyjnym opartym na kliencie, które
umożliwia pakowanie aplikacji i przesyłanie ich strumieniowo
bezpośrednio do komputera użytkownika.
Tworzy to środowisko obliczeniowe aplikacji typu sandbox, które jest
odizolowane od systemu operacyjnego użytkownika.
App-V firmy Microsoft jest doskonałym przykładem tej technologii.
Zaletą korzystania z usług terminalowych
lub strumieniowania aplikacji
jest to, że możemy wymusić
na nich dodatkowe zabezpieczenia.
Rzeczy takie jak szyfrowanie, kontrola dostępu do serwera i zapobieganie
przechowywaniu danych lokalnie na komputerze
użytkownika końcowego w celu zapewnienia
bezpieczeństwa tych danych.