Azure Stack CI 'daki hata toleransı ve depolama verimliliğiFault tolerance and storage efficiency in Azure Stack HCI

Uygulama hedefi: Azure Stack HI, sürüm 20H2; Windows Server 2019Applies to: Azure Stack HCI, version 20H2; Windows Server 2019

Bu konuda Depolama Alanları Doğrudan ' de kullanılabilen dayanıklılık seçenekleri tanıtılmakta ve her birinin ölçek gereksinimleri, depolama verimliliği ve genel avantajları ve avantajları özetlenmektedir.This topic introduces the resiliency options available in Storage Spaces Direct and outlines the scale requirements, storage efficiency, and general advantages and tradeoffs of each. Ayrıca, başlamanıza ve daha fazla bilgi alabileceğiniz bazı harika kağıtlar, bloglara ve ek içeriklere başvuruda bulunan bazı kullanım yönergelerini da sunmaktadır.It also presents some usage instructions to get you started, and references some great papers, blogs, and additional content where you can learn more.

Depolama alanları hakkında bilginiz varsa, Özet bölümüne atlamak isteyebilirsiniz.If you are already familiar with Storage Spaces, you may want to skip to the Summary section.

Genel BakışOverview

Depolama alanları, genellikle verileriniz için "dayanıklılık" olarak adlandırılan hata toleransı sağlamaya yöneliktir.At its heart, Storage Spaces is about providing fault tolerance, often called "resiliency," for your data. Uygulama, sunucular arasında dağıtılan ve yazılımda uygulanan RAID ile benzerdir.Its implementation is similar to RAID, except distributed across servers and implemented in software.

RAID 'de olduğu gibi, depolama alanlarının bunu yapabilmesinin yanı sıra hataya dayanıklılık, depolama verimliliği ve bilgi işlem karmaşıklığı arasında farklı olanaklar de yapabilirsiniz.As with RAID, there are a few different ways Storage Spaces can do this, which make different tradeoffs between fault tolerance, storage efficiency, and compute complexity. Bu genel olarak iki kategoriye ayrılır: "yansıtma" ve "eşlik", ikinci olarak bazen "ERASURE kodlama" olarak adlandırılır.These broadly fall into two categories: "mirroring" and "parity," the latter sometimes called "erasure coding."

YansımaMirroring

Yansıtma, tüm verilerin birden çok kopyasını tutarak hata toleransı sağlar.Mirroring provides fault tolerance by keeping multiple copies of all data. Bu en yakından RAID-1 benzerdir.This most closely resembles RAID-1. Bu verilerin nasıl şeritlenmiştir ve yerleştirilmesi basit değildir (daha fazla bilgi edinmek için Bu bloga bakın), ancak yansıtma kullanılarak depolanan tüm verilerin tam olarak birden çok kez yazıldığını söylemek için kesinlikle doğru.How that data is striped and placed is non-trivial (see this blog to learn more), but it is absolutely true to say that any data stored using mirroring is written, in its entirety, multiple times. Her kopya, bağımsız olarak başarısız olarak kabul edilen farklı fiziksel donanıma (farklı sunuculardaki farklı sürücülere) yazılır.Each copy is written to different physical hardware (different drives in different servers) that are assumed to fail independently.

Depolama alanları ikizlemenin iki türünü sunar: "iki yönlü" ve "üç yönlü".Storage Spaces offers two flavors of mirroring – "two-way" and "three-way."

İki yönlü yansıtmaTwo-way mirror

İki yönlü yansıtma her şeyin iki kopyasını yazar.Two-way mirroring writes two copies of everything. Depolama verimliliği yüzde 50 ' dir: 1 TB veri yazmak için en az 2 TB fiziksel depolama kapasitesine sahip olmanız gerekir.Its storage efficiency is 50 percent – to write 1 TB of data, you need at least 2 TB of physical storage capacity. Benzer şekilde, iki sunucu anlamına gelen Depolama Alanları Doğrudan en az iki Donanım ' hata etki alanı ' gerekir.Likewise, you need at least two hardware 'fault domains' – with Storage Spaces Direct, that means two servers.

iki yönlü yansıtma

Uyarı

İkiden fazla sunucunuz varsa, bunun yerine üç yönlü yansıtma kullanmanızı öneririz.If you have more than two servers, we recommend using three-way mirroring instead.

Üç yönlü yansıtmaThree-way mirror

Üç yönlü yansıtma her şeyin üç kopyasını yazar.Three-way mirroring writes three copies of everything. Depolama verimliliği yüzde 33,3 ' dir: 1 TB veri yazmak için en az 3 TB fiziksel depolama kapasitesine sahip olmanız gerekir.Its storage efficiency is 33.3 percent – to write 1 TB of data, you need at least 3 TB of physical storage capacity. Benzer şekilde, üç sunucu anlamına gelen Depolama Alanları Doğrudan en az üç donanım hatası etki alanına ihtiyacınız vardır.Likewise, you need at least three hardware fault domains – with Storage Spaces Direct, that means three servers.

Üç yönlü yansıtma, aynı anda en az iki donanım sorununu (sürücü veya sunucu)güvenle kabul edebilir.Three-way mirroring can safely tolerate at least two hardware problems (drive or server) at a time. Örneğin, aniden başka bir sürücü veya sunucu başarısız olduğunda bir sunucuyu yeniden yüklüyorsanız, tüm veriler güvenli ve sürekli olarak erişilebilir durumda kalır.For example, if you're rebooting one server when suddenly another drive or server fails, all data remains safe and continuously accessible.

üç yönlü yansıtma

ParityParity

Genellikle "ERASURE kodlaması" olarak adlandırılan eşlik kodlaması, dinamik olarak karmaşık bir şekilde karmaşıkolabilecek bir bit düzeyinde aritmetik kullanarak hata toleransı sağlar.Parity encoding, often called "erasure coding," provides fault tolerance using bitwise arithmetic, which can get remarkably complicated. Bu çalışma şekli yansıtmaya kıyasla daha az belirgin ve çok sayıda harika çevrimiçi kaynak (örneğin, bu üçüncü taraf Dummies Kılavuzu ileilgili olan bu üçüncü taraf Guide), fikir almanıza yardımcı olabilir.The way this works is less obvious than mirroring, and there are many great online resources (for example, this third-party Dummies Guide to Erasure Coding) that can help you get the idea. Sufficed, hata toleransı tehlikeye atmadan daha iyi depolama verimliliği sağlar.Sufficed to say it provides better storage efficiency without compromising fault tolerance.

Depolama alanları, "tek" eşlik ve "Dual" eşliği olmak üzere iki türde eşlik sunar. İkincisi, "Yerel yeniden oluşturma kodları" adlı gelişmiş bir tekniği daha büyük ölçeklere göre kullanıyor.Storage Spaces offers two flavors of parity – "single" parity and "dual" parity, the latter employing an advanced technique called "local reconstruction codes" at larger scales.

Önemli

Performans açısından duyarlı çoğu iş yükü için yansıtmayı kullanmanızı öneririz.We recommend using mirroring for most performance-sensitive workloads. İş yükünüze bağlı olarak performans ve kapasitenin dengelenmesi hakkında daha fazla bilgi edinmek için bkz. plan Volumes.To learn more about how to balance performance and capacity depending on your workload, see Plan volumes.

Tek eşlikSingle parity

Tek eşlik yalnızca tek bir bit düzeyinde eşlik sembolünü tutar; bu, aynı anda yalnızca bir hata için hataya dayanıklılık sağlar.Single parity keeps only one bitwise parity symbol, which provides fault tolerance against only one failure at a time. RAID-5 ' i en yakından benzetir.It most closely resembles RAID-5. Tek bir eşlik kullanmak için, en az üç donanım hatası etki alanı gerekir; Depolama Alanları Doğrudan, bu da üç sunucu anlamına gelir.To use single parity, you need at least three hardware fault domains – with Storage Spaces Direct, that means three servers. Üç yönlü yansıtma aynı ölçekte daha fazla hataya dayanıklılık sağladığından, tek bir eşlik kullanmaktan vazeceğiz.Because three-way mirroring provides more fault tolerance at the same scale, we discourage using single parity. Ancak, bunu kullanarak insist ve tamamen desteklenir.But, it's there if you insist on using it, and it is fully supported.

Uyarı

Aynı anda yalnızca bir donanım hatasını güvenli bir şekilde kabul edebildiğinden tek bir eşlik kullanmaktan kaçınıyoruz: bir sunucuyu aniden başka bir sürücü veya sunucu başarısız olduğunda yeniden yüklüyorsanız kapalı kalma süresi yaşarsınız.We discourage using single parity because it can only safely tolerate one hardware failure at a time: if you're rebooting one server when suddenly another drive or server fails, you will experience downtime. Yalnızca üç sunucunuz varsa, üç yönlü yansıtma kullanmanızı öneririz.If you only have three servers, we recommend using three-way mirroring. Dört veya daha fazla varsa, sonraki bölüme bakın.If you have four or more, see the next section.

Çift eşlikDual parity

Çift eşlik, iki bit tabanlı eşlik simgesini tutmak için yeniden Ed-Solomon hata-düzeltme kodları uygular, böylece üç yönlü yansıtma (yani, bir kerede iki hataya kadar), ancak daha iyi depolama verimliliği sağlar.Dual parity implements Reed-Solomon error-correcting codes to keep two bitwise parity symbols, thereby providing the same fault tolerance as three-way mirroring (i.e. up to two failures at once), but with better storage efficiency. En yakından RAID-6 ' ya benzer.It most closely resembles RAID-6. Çift eşlik kullanmak için, en az dört adet donanım hatası etki alanı gerekir; Depolama Alanları Doğrudan, bu da dört sunucu anlamına gelir.To use dual parity, you need at least four hardware fault domains – with Storage Spaces Direct, that means four servers. Bu ölçekte, depolama verimliliği %50 ' dir. 2 TB veri depolamak için 4 TB fiziksel depolama kapasitesine sahip olmanız gerekir.At that scale, the storage efficiency is 50% – to store 2 TB of data, you need 4 TB of physical storage capacity.

Çift eşlik

Çift eşlik 'nın depolama verimliliği, sahip olduğunuz daha fazla donanım hatası etki alanını, yüzde 50 ' dan yüzde 80 ' ye kadar arttırır.The storage efficiency of dual parity increases the more hardware fault domains you have, from 50 percent up to 80 percent. Örneğin, yedi (Depolama Alanları Doğrudan ile yedi sunucu anlamına gelir) verimlilik% 66,7 ' e atlar; 4 TB veri depolamak için, yalnızca 6 TB fiziksel depolama kapasitesine sahip olmanız gerekir.For example, at seven (with Storage Spaces Direct, that means seven servers) the efficiency jumps to 66.7 percent – to store 4 TB of data, you need just 6 TB of physical storage capacity.

Çift eşlik genelinde

Her ölçekte Çift taraf ve yerel yeniden oluşturma kodlarının verimliliği için Özet bölümüne bakın.See the Summary section for the efficiency of dual party and local reconstruction codes at every scale.

Yerel yeniden oluşturma kodlarıLocal reconstruction codes

Depolama alanları, Microsoft Research tarafından geliştirilen, "Yerel yeniden oluşturma kodları" veya LRC adlı gelişmiş bir teknik sunar.Storage Spaces introduces an advanced technique developed by Microsoft Research called "local reconstruction codes," or LRC. Büyük ölçekte çift eşlik, kodlamayı/kod çözmeyi birkaç küçük gruba bölmek veya hatalardan kurtarmak için gereken ek yükü azaltmak için LRC 'yi kullanır.At large scale, dual parity uses LRC to split its encoding/decoding into a few smaller groups, to reduce the overhead required to make writes or recover from failures.

Sabit disk sürücüleri (HDD) ile Grup boyutu dört semboltür; katı hal sürücüleri (SSD) ile Grup boyutu altı sembollerdir.With hard disk drives (HDD) the group size is four symbols; with solid-state drives (SSD), the group size is six symbols. Örneğin, düzen sabit disk sürücüleri ve 12 donanım hata etki alanları (yani 12 sunucu) ile nasıl görüneceğine göre, dört veri sembolleri iki grup vardır.For example, here's what the layout looks like with hard disk drives and 12 hardware fault domains (meaning 12 servers) – there are two groups of four data symbols. Yüzde 72,7 depolama verimliliğine erişir.It achieves 72.7 percent storage efficiency.

Yerel yeniden oluşturma kodları

Yerel yeniden oluşturma kodlarının çeşitli hata senaryolarını nasıl ele aldığına veçok kendi Claus joergenimizegöre neden çarpıcı olduğunu öğrenmek için bu derinlemesine eminently okunabilir bir adım adım önerilir.We recommend this in-depth yet eminently readable walk-through of how local reconstruction codes handle various failure scenarios, and why they're appealing, by our very own Claus Joergensen.

Yansımalı hızlandırılmış eşlikMirror-accelerated parity

Depolama Alanları Doğrudan birim parça ve bölüm eşliği olabilir.A Storage Spaces Direct volume can be part mirror and part parity. İlk olarak yansıtılmış bölüme yazar ve daha sonra daha sonra eşlik bölümüne taşınır.Writes land first in the mirrored portion and are gradually moved into the parity portion later. Bu, etkili kodlama hızını hızlandırmak için yansıtmayı kullanıyor.Effectively, this is using mirroring to accelerate erasure coding.

Üç yönlü yansıtma ve çift eşlik karıştırma için en az dört hata etki alanına (yani dört sunucu) ihtiyacınız vardır.To mix three-way mirror and dual parity, you need at least four fault domains, meaning four servers.

Yansıtma hızlandırmalı eşlik 'nın depolama verimliliği, tüm yansıtmayı veya tüm eşlik düzeyini kullanarak alacağınız ve seçtiğiniz oranlarına göre farklılık gösterir.The storage efficiency of mirror-accelerated parity is in between what you'd get from using all mirror or all parity, and depends on the proportions you choose. Örneğin, bu sununun 37 dakikalık işaretinde demo, 12 sunucu ile yüzde 46, yüzde 54 ve yüzde 65 oranında oluşan çeşitli karışımları gösterir.For example, the demo at the 37-minute mark of this presentation shows various mixes achieving 46 percent, 54 percent, and 65 percent efficiency with 12 servers.

Önemli

Performans açısından duyarlı çoğu iş yükü için yansıtmayı kullanmanızı öneririz.We recommend using mirroring for most performance-sensitive workloads. İş yükünüze bağlı olarak performans ve kapasitenin dengelenmesi hakkında daha fazla bilgi edinmek için bkz. plan Volumes.To learn more about how to balance performance and capacity depending on your workload, see Plan volumes.

ÖzetSummary

Bu bölümde Depolama Alanları Doğrudan bulunan dayanıklılık türleri, her tür kullanılacak minimum ölçek gereksinimleri, her türden kaç başarısızlık oluşması ve ilgili depolama verimliliği özetlenmektedir.This section summarizes the resiliency types available in Storage Spaces Direct, the minimum scale requirements to use each type, how many failures each type can tolerate, and the corresponding storage efficiency.

Dayanıklılık türleriResiliency types

DayanıklılıkResiliency Hata toleransıFailure tolerance Depolama verimliliğiStorage efficiency
İki yönlü yansıtmaTwo-way mirror 11 % 50,050.0%
Üç yönlü yansıtmaThree-way mirror 22 % 33,333.3%
Çift eşlikDual parity 22 % 50,0-80,0%50.0% - 80.0%
KarışıkMixed 22 % 33,3-80,0%33.3% - 80.0%

Minimum ölçek gereksinimleriMinimum scale requirements

DayanıklılıkResiliency Gerekli en düşük hata etki alanlarıMinimum required fault domains
İki yönlü yansıtmaTwo-way mirror 22
Üç yönlü yansıtmaThree-way mirror 33
Çift eşlikDual parity 44
KarışıkMixed 44

İpucu

Kasa veya raf hata toleransıkullanmıyorsanız, hata etki alanlarının sayısı sunucu sayısını ifade eder.Unless you are using chassis or rack fault tolerance, the number of fault domains refers to the number of servers. Depolama Alanları Doğrudan için en düşük gereksinimleri karşılamanız koşuluyla, her bir sunucudaki sürücü sayısı hangi dayanıklılık türlerini etkilemez.The number of drives in each server does not affect which resiliency types you can use, as long as you meet the minimum requirements for Storage Spaces Direct.

Karma dağıtımlar için çift eşlik verimliliğiDual parity efficiency for hybrid deployments

Bu tablo, her iki sabit disk sürücüsü (HDD) ve katı hal sürücüsü (SSD) içeren Karma dağıtımlar için her ölçekte çift eşlik ve yerel yeniden oluşturma kodlarının depolama verimliliğini gösterir.This table shows the storage efficiency of dual parity and local reconstruction codes at each scale for hybrid deployments which contain both hard disk drives (HDD) and solid-state drives (SSD).

Hata etki alanlarıFault domains LayoutLayout VerimlilikEfficiency
22
33
44 RS 2 + 2RS 2+2 % 50,050.0%
55 RS 2 + 2RS 2+2 % 50,050.0%
66 RS 2 + 2RS 2+2 % 50,050.0%
77 RS 4 + 2RS 4+2 % 66,766.7%
88 RS 4 + 2RS 4+2 % 66,766.7%
99 RS 4 + 2RS 4+2 % 66,766.7%
1010 RS 4 + 2RS 4+2 % 66,766.7%
1111 RS 4 + 2RS 4+2 % 66,766.7%
1212 LRC (8, 2, 1)LRC (8, 2, 1) % 72,772.7%
1313 LRC (8, 2, 1)LRC (8, 2, 1) % 72,772.7%
1414 LRC (8, 2, 1)LRC (8, 2, 1) % 72,772.7%
1515 LRC (8, 2, 1)LRC (8, 2, 1) % 72,772.7%
1616 LRC (8, 2, 1)LRC (8, 2, 1) % 72,772.7%

Tüm Flash dağıtımları için çift eşlik verimliliğiDual parity efficiency for all-flash deployments

Bu tabloda, yalnızca katı hal sürücüleri (SSD) içeren tüm Flash dağıtımları için her ölçekte çift eşlik ve yerel yeniden oluşturma kodlarının depolama verimliliği gösterilmektedir.This table shows the storage efficiency of dual parity and local reconstruction codes at each scale for all-flash deployments which contain only solid-state drives (SSD). Eşlik düzeni daha büyük grup boyutlarını kullanabilir ve bir All-Flash yapılandırmasında daha iyi depolama verimliliği elde edebilir.The parity layout can use larger group sizes and achieve better storage efficiency in an all-flash configuration.

Hata etki alanlarıFault domains LayoutLayout VerimlilikEfficiency
22
33
44 RS 2 + 2RS 2+2 % 50,050.0%
55 RS 2 + 2RS 2+2 % 50,050.0%
66 RS 2 + 2RS 2+2 % 50,050.0%
77 RS 4 + 2RS 4+2 % 66,766.7%
88 RS 4 + 2RS 4+2 % 66,766.7%
99 RS 6 + 2RS 6+2 % 75,075.0%
1010 RS 6 + 2RS 6+2 % 75,075.0%
1111 RS 6 + 2RS 6+2 % 75,075.0%
1212 RS 6 + 2RS 6+2 % 75,075.0%
1313 RS 6 + 2RS 6+2 % 75,075.0%
1414 RS 6 + 2RS 6+2 % 75,075.0%
1515 RS 6 + 2RS 6+2 % 75,075.0%
1616 LRC (12, 2, 1)LRC (12, 2, 1) % 80,080.0%

ÖrneklerExamples

Yalnızca iki sunucunuz yoksa, daha iyi hata toleransı sundukları için üç yönlü yansıtma ve/veya çift eşlik kullanmanızı öneririz.Unless you have only two servers, we recommend using three-way mirroring and/or dual parity, because they offer better fault tolerance. Özellikle, iki hata etki alanı (Depolama Alanları Doğrudan ile iki sunucu olduğunu ve aynı anda iki sunucu anlamına gelir.Specifically, they ensure that all data remains safe and continuously accessible even when two fault domains – with Storage Spaces Direct, that means two servers - are affected by simultaneous failures.

Her şeyin çevrimiçi olarak kalan örneklerExamples where everything stays online

Bu altı örnek , üç yönlü yansıtmanın ve/veya çift eşlik 'nın tolerans gösterebilir.These six examples show what three-way mirroring and/or dual parity can tolerate.

  • 1. bir sürücü kayboldu (önbellek sürücüleri dahil)1. One drive lost (includes cache drives)
  • 2. bir sunucu kayboldu2. One server lost

hataya dayanıklı-örnek-1-ve-2

  • 3. bir sunucu ve bir sürücü kayboldu3. One server and one drive lost
  • 4. farklı sunucularda iki sürücü kayboldu4. Two drives lost in different servers

hataya dayanıklı-örnek-3-ve-4

  • 5. ikiden fazla sürücü kaybedildiğinden en fazla iki sunucu etkilendi5. More than two drives lost, so long as at most two servers are affected
  • 6. iki sunucu kayboldu6. Two servers lost

hataya dayanıklı-örnekler-5-ve-6

... Her durumda, tüm birimler çevrimiçi kalır....in every case, all volumes will stay online. (Kümenizin çekirdeği koruduğundan emin olun.)(Make sure your cluster maintains quorum.)

Her şeyin çevrimdışı olduğu örneklerExamples where everything goes offline

Bu süre boyunca, depolama alanları, her bir kez daha sonra yeterli bir süre boyunca tam dayanıklılığı geri yüklediği için herhangi bir sayıda hatalara sızmasına izin verebilir.Over its lifetime, Storage Spaces can tolerate any number of failures, because it restores to full resiliency after each one, given sufficient time. Ancak, en fazla iki hata etki alanı, belirli bir anda hatalardan sonra güvenle etkilenebilir.However, at most two fault domains can safely be affected by failures at any given moment. Bu nedenle, üç yönlü yansıtmanın ve/veya çift eşlik 'nın tolerans verebilme örnekleri aşağıda verilmiştir.The following are therefore examples of what three-way mirroring and/or dual parity cannot tolerate.

  • 7. aynı anda üç veya daha fazla sunucuda kaybolan sürücüler7. Drives lost in three or more servers at once
  • 8. aynı anda üç veya daha fazla sunucu kayboldu8. Three or more servers lost at once

hataya dayanıklı-örnekler-7-ve-8

KullanımUsage

Birim oluşturmaöğesine göz atın.Check out Create volumes.

Sonraki adımlarNext steps

Bu makalede bahsedilen konularla ilgili daha fazla bilgi için aşağıdakilere bakın:For further reading on subjects mentioned in this article, see the following: