Hyper-V - Rodzaje magazynów danych

Udostępnij na: Facebook

Autor: Dariusz Porowski

Opublikowano: 2012-01-12

W świecie wirtualizacji serwerów, wszystko, co jest poddane procesowi obliczeniowemu, prędzej czy później wymaga zapisania w pamięci twardej, podobnie jak w przypadku standardowego przetwarzania bez wirtualizacji. Oczywiście podpinanie fizycznego dysku lub macierzy, tylko dla jednej maszyny wirtualnej (chociaż jest to możliwe), mija się z koncepcją konsolidacji i wirtualizacji.W tym calu została opracowana technologia wirtualnych dysków twardych, która jest częścią grupy zwanej magazynem danych. Zapraszam do lektury, bowiem po zapoznaniu się z tym artykułem będziesz:

  • wiedział, co to są wirtualne dyski twarde,
  • znał rodzaje wirtualnych dysków twardych,
  • rozumiał potrzebę użycia fizycznych magazynów danych bezpośrednio w maszynie wirtualnej,
  • wiedział, co wspólnego mają migawki z wirtualnymi dyskami twardymi.

Artykuł jest początkiem z serii artykułów w ramach sekcji Magazyn danych w Hyper-V, wchodzącej w cykl Podstawy wirtualizacji i Hyper-V. W ramach serii dostępne są jeszcze artykuły:

  • Tworzenie i konfiguracja magazynów danych w Hyper-V, gdzie wykonasz konfigurację wszystkich rodzajów wirtualnych dysków twardych.
  • Co można zrobić w magazynach danych w Hyper-V, w artykule będą zawarte informacje na temat operacji dodatkowych, jakie możesz wykonać z wirtualnymi dyskami twardymi.
  • Operacje na magazynach danych w Hyper-V, gdzie wykonasz kilka operacji na wirtualnych dyskach twardych.

VHD (ang. Virtual Hard Drive)

VHD to właśnie skrót od nazwy wirtualny dysk twardy (ang. Virtual Hard Drive). Co to właściwie jest? Jest to plik zapisany na fizycznym nośniku danych i sformatowany do używania partycji NTFS. Takich plików na fizycznym nośniku może być nielimitowana ilość – ograniczeniem są jedynie limity NTFS. Limitem ze strony VHD jest jedynie ich wielkość – maksymalnie może ona wynosić 2040 GB. Są również funkcje, takie jak migawki, oraz kopie VSS, są one elastyczne oraz mobilne, ponieważ są plikami.

Pliki VHD dzielimy na trzy różne typy: o stałym rozmiarze, dynamicznie rozszerzalne, różnicowe. Poniżej opisane są wszystkie rodzaje.

VHD o stałym rozmiarze (ang. Fixed-Size VHD)

Jest preferowanym typem VHD w środowisku produkcyjnym. Zadeklarowany rozmiar alokowany jest tylko raz, podczas tworzenia pliku, poprzez wypełnienie go zerami. Przykładowo, deklarując pojemność 60 GB, taka pojemność jest również zajmowana na fizycznym nośniku, na którym został utworzony plik VHD.

Ten rodzaj VHD oferuje najlepszą wydajność, ponieważ hiperwizor nie musi wykonywać dodatkowych operacji, związanych z kontrolą magazynu danych, np. przez rozszerzanie VHD w czasie rzeczywistym, jak to ma miejsce w przypadku dynamicznie rozszerzalnych VHD.

Dodatkową zaletą jest również mniejsza fragmentacja, ze względu na z góry zadeklarowaną przestrzeń na fizycznym nośniku danych, co podnosi ogólną wydajność.

VHD dynamiczny (ang. Dynamic VHD)

Drugim typem VHD są dyski dynamicznie rozszerzalne. Można je stosować w środowiskach produkcyjnych, w systemach mniej krytycznych, oraz gdzie wydajność I/O podsystemu dyskowego nie jest kluczowa. Przykładowo, deklarując pojemność 60 GB, podczas tworzenia dynamicznego VHD, rzeczywisty rozmiar na dysku będzie wynosił zaledwie klika KB z informacją o strukturze dysku, zapisaną w nagłówku pliku. Jeżeli do takiego typu VHD zostanie zapisane np. 20 GB danych, to jego rozmiar będzie o kilka KB wyższy od 20 GB.

Rozszerzaniem zawartości zajmuje się hiperwizor w czasie rzeczywistym, co wiąże się z dodatkowym obciążeniem obliczeniowym. Istnieje również ryzyko większej fragmentacji.

VHD różnicowy (and. Differencing VHD)

Ten typ VHD nigdy nie powinien być używany w środowisku produkcyjnym. Za to idealnie sprawdza się we wszelkich środowiskach laboratoryjnych i testowych.

Różnicowe VHD są specyficznym wirtualnym dyskiem twardym –nie mogą działać samodzielnie, a jedynie w połączeniu z innym VHD (obojętnie jakiego typu – może być stały lub dynamiczny), zwanym dyskiem „rodzicem”. Zasada działania jest taka, że dane odczytywane są z dysku „rodzica”, natomiast zapisywane są w dysku różnicowym. Dzięki tej technologii, można stworzyć kilka niezależnych obrazów, z identycznymi danymi źródłowymi, lub mieć możliwość szybkiego cofnięcia się do stanu pierwotnego. Różnicowe dyski, podobnie jak dynamiczne, podczas tworzenia zajmują kilka KB.

Należy pamiętać o tym, że jakakolwiek zmiana danych na dysku „rodzica”, lub zerwanie łańcucha połączeń, wiąże się z utratą danych!

Dysk pass-through

Dysk pass-through nie jest plikiem VHD, jest to podpięcie całego fizycznego magazynu danych bezpośrednio do maszyny wirtualnej. Ten typ dysku używany jest w sytuacji, kiedy wymagana pojemność jest większa niż 2040 GB lub jeżeli jest potrzeba użycia pełnej wydajności, oferowanej przez fizyczny magazyn danych. Limitem tego typu rozwiązania jest brak mobilności, gdyż nie jest to plik, oraz opcji zarządzania typu migawki oraz kopii VSS.

VHD a sprawa migawki, czyli AVHD

W środowisku wirtualizacji można używać funkcji migawek dla maszyn wirtualnych. Co to jest? To nic innego jak automatyczne utworzenie różnicowego dysku VHD przez hiperwizor i podpięcie go do dysku „rodzica”. Jedyną różnicą jest zmiana rozszerzenia z .vhd na .avhd. Pod względem funkcjonalności niczym się oba pliki nie różnią.

Wirtualne kontrolery dyskowe

W środowisku Hyper-V istnieją dwa rodzaje kontrolerów magazynu danych – IDE oraz SCSI. Do obu można podpiąć zarówno pliki VHD jak i dyski pass-through. Należy pamiętać, że tylko z dysku, podpiętego do kontrolera IDE, można załadować system operacyjny.

Oba kontrolery w zasadzie niczym się nie różnią w momencie, kiedy w maszynie wirtualnej zainstalowane są komponenty integracyjne. Wtedy wymiana danych odbywa się za pomocą syntetycznej komunikacji przez VMBus za pośrednictwem pary VSC oraz VSP. Jedyną różnicę stanowi limit wielkości bloku I/O do 512 KB lub mniej dla IDE. Kontroler SCSI ma limit wielkości bloku do 8 MB.

W momencie, kiedy w maszynie wirtualnej nie ma zainstalowanych komponentów integracyjnych, kontroler IDE działa w trybie emulacji. Wydłuża to ścieżkę komunikacji przez przeniesienie kontekstu obsługi z trybu jądra do trybu użytkownika, który działa w procesie roboczym w partycji nadrzędnej. Bez komponentów integracyjnych nie ma także możliwości używania kontrolerów SCSI.

Dobra praktyka jest taka:, dysk z systemem operacyjnym musi być podłączony do kontrolera IDE, natomiast pozostałe dyski dla danych powinny być podłączone do kontrolera SCSI.

Poniżej znajduje się krótka charakterystyka każdego z kontrolerów.

IDE

Każda maszyna wirtualna może mieć 2 kontrolery IDE, gdzie każdy z nich obsługuje do 4 urządzeń, łącznie z dyskiem rozruchowym oraz wirtualnym napędem CD/DVD.

Manipulacja urządzeniami, podłączonymi do kontrolera IDE, w momencie kiedy działa maszyna wirtualna, nie jest możliwa. Takie operacje należy wykonywać wówczas, kiedy maszyna wirtualna jest wyłączona.

SCSI

Każda maszyna wirtualna może mieć 4 kontrolery SCSI, gdzie każdy z nich obsługuje do 64 urządzeń, co daje możliwość podpięcia aż 256 dysków do jednej maszyny wirtualnej.

W przeciwieństwie do kontrolera IDE, manipulacja urządzeniami podłączonymi do kontrolera SCSI, w momencie kiedy działa maszyna wirtualna, jest możliwa. Można w każdej chwili dodać lub usunąć dysk.

Podsumowanie

Z artykułu dowiedziałeś się, co to są wirtualne dyski twarde, jakie są ich rodzaje. Dodatkowo nauczyłeś się, co mają wspólnego migawki z wirtualnymi dyskami twardymi oraz jakie wirtualne kontrolery magazynów danych dostępne są dla maszyn wirtualnych.

W następnym artykule utworzysz i wykonasz konfigurację wszystkich, opisanych w tym artykule, elementów magazynu danych w Hyper-V.

 


https://msdn.microsoft.com/pl-pl/library/hh770314