Udostępnij za pośrednictwem


Odporność zagnieżdżona dla bezpośrednich miejsc do magazynowania

Dotyczy: Azure Stack HCI, wersja 22H2 i nowsze; Windows Server 2022 i Windows Server 2019

Odporność zagnieżdżona to funkcja Storage Spaces Direct w usłudze Azure Stack HCI i systemie Windows Server. Dzięki temu klaster z dwoma serwerami może wytrzymać wiele awarii sprzętowych w tym samym czasie bez utraty dostępności magazynu, dzięki czemu użytkownicy, aplikacje i maszyny wirtualne będą nadal działać bez zakłóceń. W tym artykule wyjaśniono, jak działa zagnieżdżona odporność, zawiera instrukcje krok po kroku umożliwiające rozpoczęcie pracy oraz odpowiedzi na najczęściej zadawane pytania.

Zanim rozpoczniesz

Rozważ zagnieżdżone odporność, jeśli:

  • Klaster uruchamia jeden z następujących systemów operacyjnych: Azure Stack HCI w wersji 22H2 lub nowszej, Windows Server 2019 lub nowszej; i
  • Klaster ma dokładnie dwa węzły serwera.

Nie można użyć odporności zagnieżdżonej, jeśli:

  • Klaster działa z systemem Windows Server 2016; lub
  • Klaster ma tylko jeden węzeł serwera lub ma co najmniej trzy węzły serwera.

Dlaczego odporność zagnieżdżona

Woluminy korzystające z odporności zagnieżdżonej mogą pozostawać w trybie online i być dostępne, nawet jeśli wystąpi wiele awarii sprzętowych w tym samym czasie, w przeciwieństwie do klasycznej odporności dublowania dwukierunkowego . Jeśli na przykład dwa dyski kończą się niepowodzeniem w tym samym czasie lub gdy serwer ulegnie awarii, woluminy korzystające z zagnieżdżonej odporności pozostają w trybie online i są dostępne. W przypadku infrastruktury hiperkonwergentnej zwiększa to czas pracy aplikacji i maszyn wirtualnych; w przypadku obciążeń serwera plików oznacza to, że użytkownicy mają nieprzerwany dostęp do swoich plików.

Diagram przedstawiający dostępność przechowywania.

Kompromis polega na tym, że odporność zagnieżdżona ma niższą wydajność niż klasyczne dublowanie dwukierunkowe, co oznacza, że uzyskujesz nieco mniej miejsca do wykorzystania. Aby uzyskać szczegółowe informacje, zobacz sekcję Wydajność pojemności poniżej.

Jak to działa

Ta sekcja zawiera tło dotyczące odporności zagnieżdżonej dla bezpośrednich miejsc do magazynowania i opisuje dwie nowe opcje odporności i ich wydajność.

Inspiracja: RAID 5+1

RAID 5+1 to ustanowiona forma odporności rozproszonej pamięci masowej, która zapewnia przydatne tło do zrozumienia zagnieżdżonej odporności. W macierzy RAID 5+1 na każdym serwerze lokalna odporność jest zapewniana przez macierz RAID-5 lub pojedynczą parzystość, aby chronić przed utratą dowolnego pojedynczego dysku. Następnie dodatkowa odporność jest zapewniana przez dublowanie raid-1 lub dwukierunkowe, między dwoma serwerami w celu ochrony przed utratą jednego z serwerów.

Diagram przedstawiający macierz RAID 5+1.

Opcje odporności

Funkcja Bezpośrednie miejsca do magazynowania w usłudze Azure Stack HCI i systemie Windows Server oferuje dwie opcje odporności zaimplementowane w oprogramowaniu bez konieczności posiadania wyspecjalizowanego sprzętu RAID:

  • Zagnieżdżone dublowanie dwukierunkowe. W każdym serwerze lokalna odporność jest zapewniana przez dublowanie dwukierunkowe, a następnie dalsza odporność jest zapewniana przez dublowanie dwukierunkowe między dwoma serwerami. Jest to w zasadzie czterokierunkowe lustro, z dwiema kopiami na każdym serwerze, które znajdują się na różnych dyskach fizycznych. Zagnieżdżone dwukierunkowe mirrorowanie zapewnia najwyższą wydajność: zapisy trafiają do wszystkich kopii, a odczyty są wykonywane z dowolnej kopii.

    Diagram przedstawiający zagnieżdżone dublowanie dwukierunkowe.

  • Zagnieżdżona parzystość przyspieszana przez mirroring. Połącz dwukierunkowe zagnieżdżone odzwierciedlenie z poprzedniego obrazu z zagnieżdżoną parzystością. Na każdym serwerze lokalna odporność dla większości danych jest zapewniana przez pojedynczą arytmetykę parzystości bitowej, z wyjątkiem nowych, niedawnych zapisów, które korzystają z mirroringu dwukierunkowego. Następnie dodatkowa odporność dla wszystkich danych jest zapewniana przez dublowanie dwukierunkowe między serwerami. Nowe zapisy w woluminie przechodzą do części lustrzanej z dwoma kopiami na każdym serwerze na osobnych fizycznych dyskach. W miarę wypełniania części lustrzanej woluminu na każdym serwerze najstarsze dane są konwertowane i zapisywane do części z parzystością w tle. W związku z tym każdy serwer ma dane dla woluminu w formie lustrzanego odbicia dwukierunkowego lub w strukturze pojedynczej parzystości. Jest to podobne do sposobu działania parzystości przyspieszanej przez dublowanie — różnica polega na tym, że parzystość przyspieszana przez dublowanie wymaga czterech serwerów w klastrze i puli magazynów oraz używa innego algorytmu parzystości.

    Diagram przedstawiający zagnieżdżoną parzystość przyspieszaną przez dublowanie.

Efektywność wykorzystania pojemności

Wydajność pojemności to stosunek miejsca do wykorzystania do zużycia woluminu. Opisuje obciążenie pojemności związane z odpornością i zależy od wybranej opcji odporności. W prostym przykładzie przechowywanie danych bez odporności na awarie ma 100% efektywności pojemności (1 TB danych zajmuje 1 TB pojemności magazynu fizycznego), podczas gdy dwukierunkowe mirroring ma 50% efektywności pojemności (1 TB danych zajmuje 2 TB pojemności magazynu fizycznego).

  • Zagnieżdżone dwukierunkowe lustro zapisuje cztery kopie wszystkiego. Oznacza to, że do przechowywania 1 TB danych potrzebne jest 4 TB fizycznego miejsca do magazynowania. Chociaż jego prostota jest atrakcyjna, zagnieżdżone dublowanie dwukierunkowe o efektywności pojemności wynoszącej 25% ma najniższą wydajność ze wszystkich opcji odporności w rozwiązaniu Storage Spaces Direct.

  • Parzystość przyspieszana przez dublowanie osiąga wyższą wydajność, około 35%-40%, która zależy od dwóch czynników: liczby dysków pojemności na każdym serwerze oraz kombinacji dublowania i parzystości określonej dla woluminu. Ta tabela zawiera wyszukiwanie typowych konfiguracji:

    Dyski pojemności na serwer 10% lustro 20% lustro 30% lustro
    4 35,7% 34,1% 32,6%
    5 37,7% 35,7% 33,9%
    6 39,1% 36,8% 34,7%
    7+ 40,0% 37,5% 35,3%

    Poniżej przedstawiono przykład pełnej matematyki. Załóżmy, że mamy sześć dysków o dużej pojemności w każdym z dwóch serwerów i chcemy utworzyć jeden wolumin o pojemności 100 GB składający się z 10 GB mirroringu i 90 GB parytetu. Dublowanie dwukierunkowe serwera jest wydajne 50,0%, co oznacza, że 10 GB danych dublowania zajmuje 20 GB do przechowywania na każdym serwerze. Zamirrorowane na obu serwerach, jego całkowity rozmiar wynosi 40 GB. W tym przypadku pojedyncza parzystość serwera jest 5/6 = 83,3% wydajna, co oznacza, że 90 GB danych parzystości zajmuje 108 GB do przechowywania na każdym serwerze. Dublowane na obu serwerach całkowity rozmiar wynosi 216 GB. Całkowity ślad wynosi zatem [(10 GB / 50,0%) + (90 GB / 83,3%)] × 2 = 256 GB, dla 39,1% ogólnej wydajności.

    Należy zauważyć, że wydajność klasycznego dublowania dwukierunkowego (około 50%) i zagnieżdżone parzystości przyspieszanej przez dublowanie (do 40%) nie różni się bardzo. W zależności od wymagań nieznacznie niższa wydajność pojemności może być warta znacznego wzrostu dostępności magazynu. Wybierasz odporność dla każdego woluminu, aby można było mieszać woluminy o zagnieżdżonej odporności i klasyczne woluminy z dublowaniem dwukierunkowym w tym samym klastrze.

    Diagram przedstawiający kompromis między dwukierunkowym lustrem a zagnieżdżoną parzystością przyspieszaną przez lustro.

Tworzenie zagnieżdżonych woluminów odporności

Znane polecenia cmdlet magazynu w programie PowerShell umożliwiają tworzenie woluminów z zagnieżdżoną odpornością, jak opisano w poniższej sekcji.

Krok 1. Tworzenie szablonów warstw magazynowania (tylko system Windows Server 2019)

System Windows Server 2019 wymaga utworzenia nowych szablonów warstw magazynowania przy użyciu polecenia cmdlet przed utworzeniem New-StorageTier woluminów. Należy to zrobić tylko raz, a następnie każdy utworzony wolumin może odwoływać się do tych szablonów.

Uwaga / Notatka

Jeśli korzystasz z systemu Windows Server 2022, Azure Stack HCI, w wersji 21H2 lub Azure Stack HCI w wersji 20H2, możesz pominąć ten krok.

Określ -MediaType dla swoich dysków twardych o pojemności oraz opcjonalnie -FriendlyName swoich preferencji. Nie modyfikuj innych parametrów.

Jeśli na przykład dyski pojemnościowe są dyskami twardymi (HDD), uruchom program PowerShell jako administrator i uruchom następujące polecenia cmdletów.

Aby utworzyć warstwę NestedMirror:

New-StorageTier -StoragePoolFriendlyName S2D* -FriendlyName NestedMirrorOnHDD -ResiliencySettingName Mirror -MediaType HDD -NumberOfDataCopies 4

Aby utworzyć warstwę NestedParity:

New-StorageTier -StoragePoolFriendlyName S2D* -FriendlyName NestedParityOnHDD -ResiliencySettingName Parity -MediaType HDD -NumberOfDataCopies 2 -PhysicalDiskRedundancy 1 -NumberOfGroups 1 -FaultDomainAwareness StorageScaleUnit -ColumnIsolation PhysicalDisk

Jeśli dyski pojemności są dyskami półprzewodnikowymi (SSD), ustaw wartość -MediaTypeSSD zamiast i zmień wartość na -FriendlyName*OnSSD. Nie modyfikuj innych parametrów.

Wskazówka

Sprawdź, czy Get-StorageTier utworzył pomyślnie warstwy.

Krok 2. Tworzenie zagnieżdżonych woluminów

Utwórz nowe woluminy przy użyciu cmdlet New-Volume.

  • Zagnieżdżone lustro dwukierunkowe

    Aby użyć zagnieżdżonego lustra dwukierunkowego, użyj szablonu warstwy NestedMirror i określ rozmiar. Przykład:

    New-Volume -StoragePoolFriendlyName S2D* -FriendlyName Volume01 -StorageTierFriendlyNames NestedMirrorOnHDD -StorageTierSizes 500GB
    

    Jeśli te dyski pojemnościowe są dyskami półprzewodnikowymi (SSD), zmień wartość -StorageTierFriendlyNames na *OnSSD.

  • Parzystość przyspieszana przez zagnieżdżone lustrzane kopiowanie

    Aby użyć zagnieżdżonej parzystości przyspieszonej przez dublowanie, należy odwołać się zarówno do NestedMirror i NestedParity szablonów warstwy i wskazać dwa rozmiary, po jednym dla każdej części woluminu (najpierw dublowanie, potem parzystość). Aby na przykład utworzyć jeden wolumin o rozmiarze 500 GB, który jest 20% zagnieżdżonego dwukierunkowego lustra i 80% zagnieżdżonej parzystości, uruchom polecenie:

    New-Volume -StoragePoolFriendlyName S2D* -FriendlyName Volume02 -StorageTierFriendlyNames NestedMirrorOnHDD, NestedParityOnHDD -StorageTierSizes 100GB, 400GB
    

    Jeśli te dyski pojemnościowe są dyskami półprzewodnikowymi (SSD), zmień wartość -StorageTierFriendlyNames na *OnSSD.

Krok 3. Kontynuuj w Centrum administracyjnym systemu Windows

Woluminy korzystające z odporności zagnieżdżonej są wyświetlane w Centrum administracyjnym systemu Windows z wyraźnym etykietowaniem, jak na poniższym zrzucie ekranu. Po ich utworzeniu możesz zarządzać nimi i monitorować je za pomocą centrum administracyjnego systemu Windows, podobnie jak w przypadku dowolnego innego woluminu w funkcji Bezpośrednie miejsca do magazynowania.

Zarządzanie woluminami w Centrum administracyjnym systemu Windows.

Opcjonalnie: Rozszerz na dyski pamięci podręcznej

W przypadku ustawień domyślnych zagnieżdżona odporność chroni przed utratą wielu dysków twardych o pojemności w tym samym czasie lub jednego serwera i jednego dysku twardego o pojemności w tym samym czasie. Aby rozszerzyć tę ochronę na dyski pamięci podręcznej, należy wziąć pod uwagę inne kwestie: ponieważ dyski pamięci podręcznej często zapewniają buforowanie odczytu i zapisu dla wielu dysków pojemności, jedynym sposobem zapewnienia, że można tolerować utratę dysku pamięci podręcznej, gdy drugi serwer nie działa, to nie buforowanie zapisów, ale ma to wpływ na wydajność.

Aby rozwiązać ten scenariusz, funkcja Bezpośrednie miejsca do magazynowania oferuje opcję automatycznego wyłączania buforowania zapisu, gdy jeden serwer w klastrze dwóch serwerów nie działa, a następnie ponownie włącz buforowanie zapisu po utworzeniu kopii zapasowej serwera. Aby umożliwić rutynowe ponowne uruchamianie bez wpływu na wydajność, buforowanie zapisu nie jest wyłączone, dopóki serwer nie zostanie wyłączony przez 30 minut. Po wyłączeniu buforowania zapisu, zawartość buforu zapisu jest zapisywana na urządzeniach o dużej pojemności. Po tym serwer może tolerować nieudane urządzenie pamięci podręcznej na serwerze online, choć odczyty z pamięci podręcznej mogą być opóźnione lub kończą się niepowodzeniem, jeśli urządzenie pamięci podręcznej ulegnie awarii.

Uwaga / Notatka

W przypadku systemu fizycznego z pełnym buforem (pojedynczego rodzaju nośnika) nie musisz rozważać automatycznego wyłączania buforowania zapisu, gdy jeden z serwerów w klastrze dwuserwerowym przestanie działać. Należy uwzględnić tylko pamięć podręczną warstwy magistrali SBL, która jest wymagana tylko podczas korzystania z dysków twardych (HDD).

(Opcjonalnie) Aby automatycznie wyłączyć buforowanie zapisu, gdy jeden serwer w klastrze dwóch serwerów nie działa, uruchom program PowerShell jako administrator i uruchom polecenie:

Get-StorageSubSystem Cluster* | Set-StorageHealthSetting -Name "System.Storage.NestedResiliency.DisableWriteCacheOnNodeDown.Enabled" -Value "True"

Po ustawieniu wartości True zachowanie pamięci podręcznej jest następujące:

Sytuacja Zachowanie pamięci podręcznej Czy można tolerować utratę dysku pamięci podręcznej?
Oba serwery działają Operacje odczytu i zapisu w pamięci podręcznej, pełna wydajność Tak
Serwer w dół, pierwsze 30 minut Operacje odczytu i zapisu w pamięci podręcznej, pełna wydajność Nie (tymczasowo)
Po pierwszych 30 minutach Tylko odczyty pamięci podręcznej, wydajność, której dotyczy problem Tak (po zapisaniu pamięci podręcznej na dyskach o dużej pojemności)

Najczęściej zadawane pytania

Znajdź odpowiedzi na często zadawane pytania dotyczące odporności zagnieżdżonej.

Czy mogę przekonwertować istniejący wolumen między lustro dwukierunkowe a zagnieżdżoną odpornością?

Nie, woluminy nie mogą być konwertowane między typami odporności. W przypadku nowych wdrożeń w usłudze Azure Stack HCI, Windows Server 2022 lub Windows Server 2019 zdecyduj przed upływem czasu, który typ odporności najlepiej odpowiada Twoim potrzebom. W przypadku uaktualniania z systemu Windows Server 2016 można utworzyć nowe woluminy z zagnieżdżonym odpornością, przeprowadzić migrację danych, a następnie usunąć starsze woluminy.

Czy mogę używać odporności zagnieżdżonej z wieloma typami dysków pojemności?

Tak, po prostu określ -MediaType odpowiednio każdą warstwę w kroku 1 powyżej. Na przykład w przypadku dysków NVMe, SSD i HDD w tym samym klastrze urządzenie NVMe zapewnia pamięć podręczną, podczas gdy dwa ostatnie zapewniają pojemność: ustaw warstwę NestedMirror na -MediaType SSD i warstwę NestedParity na -MediaType HDD. W takim przypadku wydajność parzystości zależy tylko od liczby dysków HDD i potrzebujesz co najmniej 4 na każdy serwer.

Czy można używać zagnieżdżonej odporności przy użyciu trzech lub więcej serwerów?

Nie, używaj odporności zagnieżdżonej tylko wtedy, gdy klaster ma dokładnie dwa serwery.

Ile dysków potrzebuję do użycia zagnieżdżonej odporności?

Minimalna liczba dysków wymaganych dla bezpośrednich miejsc do magazynowania to cztery dyski pojemności na węzeł serwera, a także dwa dyski pamięci podręcznej na węzeł serwera (jeśli istnieje). Nie zmienia się to z systemu Windows Server 2016. Nie ma innego wymagania dotyczącego odporności zagnieżdżonej, a zalecenie dotyczące pojemności rezerwowej również nie zmienia się.

Czy odporność zagnieżdżona zmienia sposób działania wymiany dysku?

Nie.

Czy zagnieżdżona odporność zmienia sposób działania zamiany węzła serwera?

Nie. Aby zastąpić węzeł serwera i jego dyski, wykonaj następującą kolejność:

  1. Wycofaj dyski z wychodzącego serwera.
  2. Dodaj nowy serwer ze swoimi dyskami do klastra
  3. Pula pamięci zostanie ponownie zrównoważona
  4. Usuwanie serwera wychodzącego i jego dysków

Aby uzyskać szczegółowe informacje, zobacz artykuł Usuwanie serwerów .

Dalsze kroki