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

Bezpośrednie miejsca do magazynowania 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 usłudze Storage Space Direct, skonfiguruj go na maszynach wirtualnych.

Przegląd: Co to są woluminy

Woluminy to miejsce, w którym są umieszczane 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 Bezpośrednie miejsca do magazynowania, technologii magazynu zdefiniowanego programowo za usługami Azure Stack HCI i Windows Server.

Uwaga

Termin "wolumin" jest używany do wspólnego odwoływania się do woluminu i dysku wirtualnego, 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 pomyślnego planowania i wdrażania Bezpośrednie miejsca do magazynowania.

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 w tym samym czasie. Po utworzeniu są one wyświetlane w lokalizacji 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 wielokrotności liczby serwerów w klastrze. Jeśli na przykład masz 4 serwery, wydajność będzie bardziej spójna 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 Bezpośrednie miejsca do magazynowania. 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órej system plików ReFS jeszcze nie obsługuje, możesz zamiast tego użyć systemu plików NTFS.

Porada

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

Wybieranie typu odporności

Woluminy w Bezpośrednie miejsca do magazynowania 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

Które 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ć odporności zagnieżdżonej.

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ą naraz (jeden serwer lub dysk).

Diagram przedstawia woluminy oznaczone danymi i kopiowanie połączone za pomocą okrągłych strzałek, 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 dublowaniem dwukierunkowym lub parzystością przyspieszaną przez dublowanie. Zagnieżdżanie zapewnia odporność danych nawet wtedy, gdy jeden serwer jest ponownie uruchamiany lub niedostępny. Wydajność magazynowania wynosi 25 procent z zagnieżdżonym dublowaniem dwukierunkowym i około 35-40 procent w przypadku parzystości przyspieszanej przez dublowanie zagnieżdżone. 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życie odporności zagnieżdżonej we wdrożeniach produkcyjnych klastrów z dwoma serwerami. Aby uzyskać więcej informacji, zobacz Odporność zagnieżdżona.

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

Z trzema serwerami

W przypadku trzech serwerów należy używać dublowania trzystopniowego 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 pojemności magazynu fizycznego w puli magazynów. Dublowanie trzystopniowe 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 będą niedostępne. Jednak węzeł może być wyłączony i co najmniej jeden dysk w innym węźle może zakończyć się niepowodzeniem, a dyski wirtualne pozostaną w trybie online. Jeśli na przykład uruchamiasz ponownie jeden serwer, gdy nagle inny dysk lub serwer ulegnie awarii, wszystkie dane pozostaną bezpieczne i stale dostępne.

Diagram przedstawia dane z etykietą woluminu i dwie oznaczone etykietą kopię połączoną za pomocą okrągłych strzałek 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 trzystopniowego, 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 trzystopniowe, ale przy lepszej wydajności magazynowania. W przypadku czterech serwerów wydajność magazynowania wynosi 50,0%; do przechowywania 2 TB danych potrzebne jest 4 TB fizycznego miejsca do magazynowania w puli magazynów. Zwiększa to do 66,7 procent wydajności magazynowania z siedmiu serwerów i utrzymuje do 80,0 procent wydajności magazynowania. Kompromis polega na tym, że kodowanie parzystości jest bardziej intensywnie obciążające obliczenia, co może ograniczyć jego wydajność.

Diagram przedstawia dwa woluminy oznaczone danymi i dwie etykiety parzystości połączone za pomocą okrągłych strzałek 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 zawierająca podsumowanie, które obciążenia są odpowiednie dla każdego typu odporności, a także wydajność wydajności i wydajności magazynowania poszczególnych typów 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
Archiwizacja i kopia zapasowa
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 & użycie procesora CPU na zapisach
Najlepsze w przypadku dużych zapisów sekwencyjnych i odczytów
Archiwizacja i kopia zapasowa
Infrastruktura pulpitu zwirtualizowanego

Gdy 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 SQL Server lub maszyny wirtualne funkcji Hyper-V wrażliwe na wydajność, powinny być uruchamiane na woluminach korzystających z dublowania w celu zmaksymalizowania wydajności.

Porada

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

Gdy 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 Scale-Out (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óźnienia operacji we/wy, szczególnie w przypadku zapisów, w porównaniu z dublowaniem.

Gdy dane są zapisywane zbiorczo

Obciążenia, które zapisują w dużych, sekwencyjnych przebiegach, takich jak obiekty docelowe archiwizacji lub kopii zapasowej, mają inną opcję: jeden wolumin może mieszać dublowanie i parzystość podwójną. Zapisy lądują 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ącej 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 (na przykład jedna dzienna kopia zapasowa) powinna wygodnie mieś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ści podwójnej dla reszty.

Wynikowa wydajność magazynowania zależy od proporcji, które wybierzesz. Zapoznaj się z tym pokazem , aby zapoznać się z przykładami.

Porada

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ść przyspieszona przez dublowanie nie jest dobrze odpowiednia dla danego przypadku użycia. Jeśli na przykład wydajność zapisu spada z 400 MB/s do 40 MB/s, rozważ rozszerzenie części dublowania lub przełączenie do dublowania trójkierunkowego.

Informacje o wdrożeniach za pomocą dysków 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 Bezpośrednie miejsca do magazynowania. W takich wdrożeniach wszystkie woluminy ostatecznie znajdują się na tym samym typie dysków — dyskach pojemności.

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ę całkowicie na warstwie SSD, całkowicie na warstwie HDD, czy też obejmuje te dwa.

Ważne

Zalecamy użycie warstwy SSD do umieszczania najbardziej wrażliwych na wydajność 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.

Porada

Jeśli używasz rozwiązania do tworzenia kopii zapasowej, 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 więcej.

Ślad

Rozmiar woluminu odnosi się do pojemności użytecznej, ilości danych, które może przechowywać. Jest to dostarczane przez parametr -Size polecenia 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, całkowitej pojemności magazynu fizycznego, która zajmuje w puli magazynów. Ślad zależy od typu odporności. Na przykład woluminy korzystające z dublowania trójkierunkowego mają trzy razy większy rozmiar.

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

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

Rezerwuj pojemność

Pozostawienie niektórych pojemności w puli magazynów nieprzydzielonych daje woluminom miejsce na naprawę "w miejscu" po awarii dysków, zwiększenie bezpieczeństwa danych i wydajności. Jeśli istnieje wystarczająca pojemność, natychmiastowa, równoległa naprawa może przywrócić woluminy do pełnej odporności nawet 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 nieprzywiązanymi dyskami oznaczonymi jako rezerwowe.

Jeśli na przykład masz 2 serwery i używasz 1 TB dysków pojemnościowych, należy zarezerwować 2 x 1 = 2 TB puli. Jeśli masz 3 serwery i 1 TB dysków pojemności, odłóż 3 x 1 = 3 TB jako rezerwę. Jeśli masz 4 lub więcej serwerów i 1 TB dysków pojemności, odłóż 4 x 1 = 4 TB jako rezerwę.

Uwaga

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

Przykład: planowanie pojemności

Rozważmy jeden klaster czterech serwerów. Każdy serwer ma niektóre dyski 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

Od 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, z którą możemy utworzyć 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 trójkierunkowe w celu zwiększenia wydajności. Umieśćmy magazyn zimny na pozostałych dwóch woluminach, Wolumin 3 i Wolumin 4. Wybieramy system PLIKÓW NTFS jako system plików (w przypadku deduplikacji danych) i podwójną parzystość w celu zwiększenia wydajności.

Nie musimy wprowadzać wszystkich woluminów o takim samym rozmiarze, ale dla uproszczenia — na przykład możemy uczynić je wszystkimi 12 TB.

Wolumin1 i Wolumin2 będą zajmować 12 TB x 33,3 procent wydajności = 36 TB pojemności magazynu fizycznego.

Wolumin3 i Wolumin4 będą zajmować 12 TB x 50,0 procent 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 skojarzone z magazynem o pojemności 36 TB i dwa woluminy parzystości 12 TB skojarzone z 24 TB, a wszystkie zajmują 120 TB w puli magazynów.

Porada

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

Dla uproszczenia w tym przykładzie użyto jednostek dziesiętnych (base-10), co oznacza, że 1 TB = 1000 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 pojemności 128 TB będzie wyświetlana jako 116.41 TiB. Jest to oczekiwane zachowanie.

Użycie

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

Następne kroki

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