Udostępnij za pośrednictwem


Planowanie woluminów w klastrach Windows Server i Azure Stack HCI

Dotyczy: Azure Stack HCI, wersje 22H2 i 21H2; Windows Server 2022, Windows Server 2019

Ten artykuł zawiera wskazówki dotyczące planowania woluminów klastra w celu spełnienia wymagań dotyczących wydajności i pojemności obciążeń, w tym wybierania ich systemu plików, typu odporności i rozmiaru.

Uwaga

Miejsca do magazynowania Direct nie obsługuje serwera plików do użytku ogólnego. Jeśli musisz uruchomić serwer plików lub inne usługi ogólne w funkcji Bezpośrednie miejsce do magazynowania, skonfiguruj go na maszynach wirtualnych.

Przegląd: Co to są woluminy

Woluminy to miejsce, w których umieszczasz potrzebne pliki, takie jak pliki VHD lub VHDX dla maszyn wirtualnych funkcji Hyper-V. Woluminy łączą dyski w puli magazynów, aby wprowadzić odporność na uszkodzenia, skalowalność i wydajność korzyści z Miejsca do magazynowania Direct, technologii magazynu zdefiniowanego programowo za pomocą rozwiązania Azure Stack HCI i systemu Windows Server.

Uwaga

Termin "wolumin" jest używany do wspólnego odwoływania się do woluminu i dysku wirtualnego w nim, w tym funkcji udostępnianych przez inne wbudowane funkcje systemu Windows, takie jak udostępnione woluminy klastra (CSV) i system plików ReFS. Zrozumienie tych różnic na poziomie implementacji nie jest konieczne do planowania i wdrażania Miejsca do magazynowania Direct pomyślnie.

Diagram przedstawia trzy foldery oznaczone jako woluminy skojarzone z dyskiem wirtualnym oznaczonym jako woluminy, wszystkie skojarzone ze wspólną pulą magazynów dysków.

Wszystkie woluminy są dostępne dla wszystkich serwerów w klastrze jednocześnie. Po utworzeniu są one wyświetlane w folderze C:\ClusterStorage\ na wszystkich serwerach.

Przechwytywanie ekranu przedstawia okno eksploratora plików o nazwie ClusterStorage zawierające woluminy o nazwach Volume1, Volume2 i Volume3.

Wybieranie liczby woluminów do utworzenia

Zalecamy utworzenie liczby woluminów wielokrotnych liczby serwerów w klastrze. Jeśli na przykład masz 4 serwery, uzyskasz bardziej spójną wydajność z 4 całkowitymi woluminami niż 3 lub 5. Dzięki temu klaster może dystrybuować wolumin "własność" (jeden serwer obsługuje orkiestrację metadanych dla każdego woluminu) równomiernie między serwerami.

Zalecamy ograniczenie całkowitej liczby woluminów do 64 woluminów na klaster.

Wybieranie systemu plików

Zalecamy używanie nowego systemu plików ReFS (Resilient File System) dla Miejsca do magazynowania Direct. System plików ReFS to najwyższej klasy system plików przeznaczony do wirtualizacji i oferuje wiele zalet, w tym znaczne przyspieszenie wydajności i wbudowaną ochronę przed uszkodzeniem danych. Obsługuje prawie wszystkie kluczowe funkcje systemu plików NTFS, w tym deduplikację danych w systemie Windows Server w wersji 1709 lub nowszej. Aby uzyskać szczegółowe informacje, zobacz tabelę porównania funkcji systemu plików ReFS.

Jeśli obciążenie wymaga funkcji, która nie obsługuje jeszcze systemu plików ReFS, możesz zamiast tego użyć systemu plików NTFS.

Napiwek

Woluminy z różnymi systemami plików mogą współistnieć w tym samym klastrze.

Wybieranie typu odporności

Woluminy w Miejsca do magazynowania Direct zapewniają odporność na ochronę przed problemami sprzętowymi, takimi jak awarie dysku lub serwera, oraz zapewnienie ciągłej dostępności podczas konserwacji serwera, takich jak aktualizacje oprogramowania.

Uwaga

Typy odporności, które można wybrać, są niezależne od posiadanych typów dysków.

Z dwoma serwerami

W przypadku dwóch serwerów w klastrze można użyć dublowania dwukierunkowego lub użyć zagnieżdżonej odporności.

Dublowanie dwukierunkowe przechowuje dwie kopie wszystkich danych, jedną kopię na dyskach na każdym serwerze. Wydajność magazynowania wynosi 50 procent; aby zapisać 1 TB danych, potrzebujesz co najmniej 2 TB pojemności magazynu fizycznego w puli magazynów. Dublowanie dwukierunkowe może bezpiecznie tolerować jedną awarię sprzętową w danym momencie (jeden serwer lub dysk).

Diagram przedstawia woluminy oznaczone danymi i kopię połączoną ze strzałkami okrągłymi, a oba woluminy są skojarzone z bankiem dysków na serwerach.

Odporność zagnieżdżona zapewnia odporność danych między serwerami z dublowaniem dwukierunkowym, a następnie dodaje odporność na serwerze z dwukierunkowym dublowaniem lub parzystością przyspieszaną przez dublowanie. Zagnieżdżanie zapewnia odporność danych nawet wtedy, gdy jeden serwer jest ponownie uruchamiany lub niedostępny. Jego wydajność magazynowania wynosi 25 procent z zagnieżdżonym dublowaniem dwukierunkowym i około 35-40 procent dla zagnieżdżonej parzystości przyspieszanej przez dublowanie. Odporność zagnieżdżona może bezpiecznie tolerować dwa awarie sprzętowe jednocześnie (dwa dyski lub serwer i dysk na pozostałym serwerze). Ze względu na tę dodatkową odporność danych zalecamy używanie odporności zagnieżdżonej we wdrożeniach produkcyjnych klastrów z dwoma serwerami. Aby uzyskać więcej informacji, zobacz Zagnieżdżone odporność.

Diagram przedstawia zagnieżdżoną parzystość przyspieszoną dublowanie z dublowaniem dwukierunkowym między serwerami skojarzonymi z dublowaniem dwukierunkowym na każdym serwerze odpowiadającym warstwie parzystości w ramach każdego serwera.

Z trzema serwerami

W przypadku trzech serwerów należy używać dublowania trójstopniowego w celu zapewnienia lepszej odporności na uszkodzenia i wydajności. Dublowanie trzystopniowe przechowuje trzy kopie wszystkich danych, jedną kopię na dyskach na każdym serwerze. Wydajność magazynowania wynosi 33,3% — aby zapisać 1 TB danych, potrzebujesz co najmniej 3 TB fizycznej pojemności magazynu w puli magazynów. Dublowanie trójstopniowe może bezpiecznie tolerować co najmniej dwa problemy sprzętowe (dysk lub serwer) naraz. Jeśli 2 węzły staną się niedostępne, pula magazynów utraci kworum, ponieważ 2/3 dysków jest niedostępnych, a dyski wirtualne są niedostępne. Jednak węzeł może być wyłączony, a co najmniej jeden dysk w innym węźle może zakończyć się niepowodzeniem, a dyski wirtualne pozostają w trybie online. Jeśli na przykład uruchamiasz ponownie jeden serwer, gdy nagle inny dysk lub serwer ulegnie awarii, wszystkie dane pozostają bezpieczne i stale dostępne.

Diagram przedstawia dane z etykietą woluminu i dwie etykiety kopii połączone za pomocą strzałek okrągłych z każdym woluminem skojarzonym z serwerem zawierającym dyski fizyczne.

Z co najmniej czterema serwerami

W przypadku czterech lub większej liczby serwerów można wybrać dla każdego woluminu, czy używać dublowania trójstopniowego, parzystości podwójnej (często nazywanej "kodowaniem wymazywania") lub mieszać te dwa z parzystością przyspieszaną przez dublowanie.

Podwójna parzystość zapewnia taką samą odporność na uszkodzenia co dublowanie trójstopniowe, ale z lepszą wydajnością magazynowania. Dzięki czterem serwerom wydajność magazynowania wynosi 50,0%; do przechowywania 2 TB danych potrzebujesz 4 TB pojemności magazynu fizycznego w puli magazynów. Zwiększa się to do 66,7% wydajności magazynowania z siedmiu serwerów i utrzymuje się do 80,0% wydajności magazynowania. Kompromis polega na tym, że kodowanie parzystości jest bardziej intensywnie obciążające obliczenia, co może ograniczyć wydajność.

Diagram przedstawia dwie woluminy oznaczone danymi i dwie etykiety parzystości połączone za pomocą strzałek okrągłych z każdym woluminem skojarzonym z serwerem zawierającym dyski fizyczne.

Typ odporności, który ma być używany, zależy od potrzeb obciążenia. Oto tabela podsumowująca, które obciążenia są dobrym rozwiązaniem dla każdego typu odporności, oraz wydajnością i wydajnością magazynowania każdego typu odporności.

Typ odporności Wydajność pojemności Szybkość Pakiety robocze
Lustro Wydajność magazynowania pokazująca 33%
Dublowanie trójstopniowe: 33%
Dublowanie dwukierunkowe: 50%
Wydajność pokazująca 100%
Najwyższa wydajność
Zwirtualizowane obciążenia
Bazy danych
Inne obciążenia o wysokiej wydajności
Parzystość przyspieszana przez dublowanie Wydajność magazynowania pokazująca około 50%
Zależy od proporcji dublowania i parzystości
Wydajność pokazująca około 20%
Znacznie wolniejsze niż dublowanie, ale nawet dwa razy szybciej niż parzystość podwójna
Najlepsze w przypadku dużych zapisów sekwencyjnych i odczytów
Archiwizowanie i tworzenie kopii zapasowych
Infrastruktura pulpitu zwirtualizowanego
Podwójna parzystość Wydajność magazynowania pokazująca około 80%
4 serwery: 50%
16 serwerów: do 80%
Wydajność pokazująca około 10%
Największe opóźnienie we/wy i użycie procesora CPU na zapisach
Najlepsze w przypadku dużych zapisów sekwencyjnych i odczytów
Archiwizowanie i tworzenie kopii zapasowych
Infrastruktura pulpitu zwirtualizowanego

Kiedy wydajność ma największe znaczenie

Obciążenia, które mają ścisłe wymagania dotyczące opóźnień lub wymagają wielu mieszanych losowych operacji we/wy na sekundę, takich jak bazy danych programu SQL Server lub maszyny wirtualne funkcji Hyper-V z uwzględnieniem wydajności, powinny być uruchamiane na woluminach używających dublowania w celu zmaksymalizowania wydajności.

Napiwek

Dublowanie jest szybsze niż jakikolwiek inny typ odporności. Używamy dublowania dla prawie wszystkich naszych przykładów wydajności.

Kiedy pojemność ma największe znaczenie

Obciążenia, które zapisują rzadko, takie jak magazyny danych lub magazyn "zimny", powinny być uruchamiane na woluminach używających podwójnej parzystości w celu zmaksymalizowania wydajności magazynowania. Niektóre inne obciążenia, takie jak serwer plików skalowalny w poziomie (SoFS), infrastruktura pulpitu wirtualnego (VDI) lub inne, które nie tworzą wielu szybko dryfujących losowych ruchu we/wy i/lub nie wymagają najlepszej wydajności, mogą również używać parzystości podwójnej według własnego uznania. Parzystość nieuchronnie zwiększa wykorzystanie procesora CPU i opóźnienie operacji we/wy, szczególnie w przypadku zapisów, w porównaniu z dublowaniem.

Gdy dane są zapisywane zbiorczo

Obciążenia, które zapisują duże, sekwencyjne przebiegi, takie jak archiwalne lub docelowe kopie zapasowe, mają inną opcję: jeden wolumin może mieszać dublowanie i parzystość podwójną. Zapisuje ziemię najpierw w dublowanej części i są stopniowo przenoszone do części parzystości później. Przyspiesza to pozyskiwanie i zmniejsza wykorzystanie zasobów, gdy duże zapisy docierają, umożliwiając kodowanie parzystości intensywnie korzystające z obliczeń w dłuższym czasie. Podczas określania rozmiaru części należy wziąć pod uwagę, że ilość zapisów, które mają miejsce jednocześnie (np. jedna dzienna kopia zapasowa) powinna wygodnie zmieścić się w części dublowania. Jeśli na przykład pozyskujesz 100 GB raz dziennie, rozważ użycie dublowania dla 150 GB do 200 GB i parzystość podwójną dla reszty.

Wynikowa wydajność magazynowania zależy od proporcji, które wybierzesz.

Napiwek

Jeśli zauważysz gwałtowny spadek wydajności zapisu w części pozyskiwania danych, może to oznaczać, że część dublowania nie jest wystarczająco duża lub że parzystość przyspieszana przez dublowanie nie jest odpowiednia dla danego przypadku użycia. Jeśli na przykład wydajność zapisu spadnie z 400 MB/s do 40 MB/s, rozważ rozszerzenie części dublowania lub przełączenie na dublowanie trzystopniowe.

Informacje o wdrożeniach z dyskami NVMe, SSD i HDD

We wdrożeniach z dwoma typami dysków szybsze dyski zapewniają buforowanie, a wolniejsze dyski zapewniają pojemność. Dzieje się to automatycznie — aby uzyskać więcej informacji, zobacz Opis pamięci podręcznej w usłudze Miejsca do magazynowania Direct. W takich wdrożeniach wszystkie woluminy ostatecznie znajdują się na tym samym typie dysków — dyskach pojemnościowych.

We wdrożeniach ze wszystkimi trzema typami dysków tylko najszybsze dyski (NVMe) zapewniają buforowanie, pozostawiając dwa typy dysków (SSD i HDD) w celu zapewnienia pojemności. Dla każdego woluminu można wybrać, czy znajduje się on w całości w warstwie SSD, w całości na warstwie HDD, czy też obejmuje te dwa.

Ważne

Zalecamy użycie warstwy SSD w celu umieszczania najbardziej wrażliwych obciążeń na wszystkich dyskach flash.

Wybieranie rozmiaru woluminów

Zalecamy ograniczenie rozmiaru każdego woluminu do 64 TB w usłudze Azure Stack HCI.

Napiwek

Jeśli używasz rozwiązania do tworzenia kopii zapasowych, które opiera się na usłudze kopiowania woluminów w tle (VSS) i dostawcy oprogramowania Volsnap — podobnie jak w przypadku obciążeń serwera plików — ograniczenie rozmiaru woluminu do 10 TB poprawi wydajność i niezawodność. Rozwiązania do tworzenia kopii zapasowych korzystające z nowszego interfejsu API RCT funkcji Hyper-V i/lub klonowania bloków systemu plików ReFS i/lub natywnych interfejsów API kopii zapasowych SQL działają dobrze do 32 TB i nie tylko.

Ślad

Rozmiar woluminu odnosi się do pojemności użytecznej, ilości danych, które może przechowywać. Jest to dostarczane przez parametr -Sizepolecenia cmdlet New-Volume , a następnie pojawia się we właściwości Size po uruchomieniu polecenia cmdlet Get-Volume .

Rozmiar różni się od rozmiaru woluminu, czyli całkowitej pojemności magazynu fizycznego zajmowanego w puli magazynów. Ślad zależy od typu odporności. Na przykład woluminy korzystające z dublowania trójstopniowego mają rozmiar trzy razy większy.

Ślady woluminów muszą mieścić się w puli magazynów.

Diagram przedstawia wolumin o rozmiarze 2 TB w porównaniu z rozmiarem 6 TB w puli magazynów z określonym mnożnikiem trzech.

Wydajność rezerwowa

Pozostawienie pewnej pojemności w puli magazynów bez przydziału daje woluminom miejsce na naprawę "w miejscu" po awarii dysków, co poprawia bezpieczeństwo danych i wydajność. Jeśli pojemność jest wystarczająca, natychmiastowa, równoległa naprawa może przywrócić woluminy do pełnej odporności jeszcze przed zastąpieniem dysków, które zakończyły się niepowodzeniem. Dzieje się to automatycznie.

Zalecamy rezerwowanie odpowiednika jednego dysku pojemności na serwer, maksymalnie 4 dyski. Możesz zarezerwować więcej według własnego uznania, ale to minimalne zalecenie gwarantuje natychmiastową, w miejscu, równoległą naprawę może zakończyć się powodzeniem po awarii dowolnego dysku.

Diagram przedstawia wolumin skojarzony z kilkoma dyskami w puli magazynów i niezwiązanymi dyskami oznaczonymi jako rezerwa.

Jeśli na przykład masz 2 serwery i używasz 1 TB dysków pojemnościowych, należy odłożyć 2 x 1 = 2 TB puli jako rezerwową. Jeśli masz 3 serwery i 1 TB dysków pojemnościowych, należy zarezerwować 3 x 1 = 3 TB. Jeśli masz co najmniej 4 serwery i 1 TB dysków pojemnościowych, należy zarezerwować 4 x 1 = 4 TB.

Uwaga

W klastrach z dyskami wszystkich trzech typów (NVMe + SSD + HDD) zalecamy rezerwowanie odpowiednika jednego dysku SSD i jednego dysku TWARDEgo na serwer, do 4 dysków każdego z nich.

Przykład: planowanie pojemności

Rozważmy jeden klaster czterech serwerów. Każdy serwer ma kilka dysków pamięci podręcznej oraz szesnaście dysków o pojemności 2 TB.

4 servers x 16 drives each x 2 TB each = 128 TB

Z tego 128 TB w puli magazynów odkładamy cztery dyski lub 8 TB, dzięki czemu naprawy w miejscu mogą wystąpić bez pośpiechu, aby zastąpić dyski po awarii. Pozostawia to 120 TB pojemności magazynu fizycznego w puli, za pomocą której możemy tworzyć woluminy.

128 TB – (4 x 2 TB) = 120 TB

Załóżmy, że potrzebujemy naszego wdrożenia do hostowania bardzo aktywnych maszyn wirtualnych funkcji Hyper-V, ale mamy również wiele zimnych magazynów — stare pliki i kopie zapasowe, które musimy zachować. Ponieważ mamy cztery serwery, utwórzmy cztery woluminy.

Umieśćmy maszyny wirtualne na dwóch pierwszych woluminach, Wolumin1 i Wolumin2. Wybieramy system plików ReFS jako system plików (w celu szybszego tworzenia i punktów kontrolnych) oraz dublowanie trzystopniowe w celu zapewnienia odporności w celu zmaksymalizowania wydajności. Umieśćmy zimny magazyn na pozostałych dwóch woluminach, wolumin 3 i wolumin 4. Wybieramy system plików NTFS (w przypadku deduplikacji danych) i podwójną parzystość odporności w celu zmaksymalizowania pojemności.

Nie musimy wykonywać wszystkich woluminów o tym samym rozmiarze, ale dla uproszczenia możemy na przykład ustawić wszystkie woluminy o rozmiarze 12 TB.

Wolumin1 i Wolumin2 zajmują 12 TB x 33,3 procent wydajności = 36 TB pojemności magazynu fizycznego.

Wolumin3 i Wolumin4 zajmują 12 TB x 50,0% wydajności = 24 TB pojemności magazynu fizycznego.

36 TB + 36 TB + 24 TB + 24 TB = 120 TB

Cztery woluminy mieszczą się dokładnie w pojemności magazynu fizycznego dostępnej w naszej puli. Doskonale!

Diagram przedstawia dwa trzystopniowe woluminy dublowania o pojemności 12 TB, z których każda jest skojarzona z 36 TB magazynu, oraz dwa woluminy parzystości 12 TB skojarzone z 24 TB, a wszystkie zajmują 120 TB w puli magazynów.

Napiwek

Nie musisz od razu tworzyć wszystkich woluminów. Zawsze można rozszerzać woluminy lub tworzyć nowe woluminy później.

Dla uproszczenia w tym przykładzie użyto jednostek dziesiętnych (base-10), co oznacza, że 1 TB = 1 000 000 000 000 bajtów. Jednak ilości magazynu w systemie Windows są wyświetlane w jednostkach binarnych (base-2). Na przykład każdy dysk o pojemności 2 TB będzie wyświetlany jako 1,82 TiB w systemie Windows. Podobnie pula magazynów o rozmiarze 128 TB będzie wyświetlana jako 116.41 TiB. Jest to oczekiwane.

Użycie

Zobacz Tworzenie woluminów w usłudze Azure Stack HCI.

Następne kroki

Aby uzyskać więcej informacji, zobacz również: