vSAN Fault Domain

Fault domain availability tartışmalarında sıklıkla karşılaşılan bir terimdir.

Bilgi Teknolojileri’nde bir “Fault Domain” genellikle, kesintilerden topluca etkilenebilecek bir grup sunucu , storage veya networking komponent’leri anlamına gelir. Bunun yaygın örneklerinden biri de server rack’leridir. Bir top-of-rack switch veya bir server rack için güç dağıtım ünitesi arızalanırsa, sunucu donanımı düzgün çalışsa bile o rack’taki tüm sunucuları çevrimdışı duruma gelecektir.

Fault Domain’ler , bir başarısızlık sınırıdır. Kullanılabilirliği artırmak için Sanal Makinelerin verilerinin kopyalarının tanımlanmış kaynaklar arasında dağıtılmasını ve aynı nesnenin yedek komponent’lerinin aynı rack’te bulunmamasını sağlarlar.

Fault domain, datacenter’daki fiziksel konumlarına göre gruplanmış bir veya daha fazla vSAN host’dan oluşan mantıksal bir container olarak düşünebiliriz.

Aşağıdaki diyagramda görüldüğü şekilde , host’lar (fault domain’ler) arasında basit bir konponent dağılımı örneği görülmektedir. İki büyük komponet , nesnenin mirror edilmiş kopyalarıdır ve küçük komponent ise , witness komponent’i temsil etmektedir.


Fault Domain aşağıdaki durumlara karşı korur:

  • Rack arızası
  • Cache ve kapasite cihazları arızaları
  • Network cihaz hatası
  • Elektrik kesintileri

Bir vSAN cluster’daki her bir host, dolaylı olarak bir fault domain olarak kabul edilir. vSAN, vSAN nesnesinin komponent’lerini , atanan storage policy’deki “Number of Failures to Tolerate” kuralına dayanarak bir cluster’daki fault domain’lerine otomatik olarak dağıtır.

Cluster için ” Number of failures to tolerate ” policy, bir sanal makinenin tolere etmesi için öngörülen hataların sayısına bağlıdır.

VSAN 5.5 ve 6.0’da, NumberOfFailuresToTolerate = 1 olan bir sanal makine deploy edilirken, 2n + 1 host gerekli idi. (n = NumberOfFailuresToTolerate). Örneğin ; 1 hatayı tolere etmek için 3 ESXi Host gerekmektedir.

VSAN 6.2 ve daha yüksek sürümlerde, RAID 5/6 erasure coding fault tolerance yöntemleri daha fazla husus ekledi.

Fault domain’ler etkinleştirildiğinde, storage policyler host-level düzeyi yerine fault domain düzeyinde uygulanır.

Fault Domain’leri rack’te yapılandırdığınızda ve yeni bir VM deploy ettiğinizde vSAN, replica ve witness’lar gibi koruma nesnelerinin farklı fault domain’lere yerleştirilmesini sağlar.

Bir cluster’da kaç host ve kaç adet Fault Domain’den oluştuğunu belirlemek istediğimizde aşağıdakilere dikkat edilmelidir :

Mirroring ile korunacak vSAN nesneleri için, seçilen koruma düzeyi için 2n + 1 Host veya Fault Domain olmalıdır.

  • 1 Hatadan korunmak (2×1 + 1) veya 3 host gerekir.
  • 2 Hatadan korunmak (2×2 + 1) veya 5 host gerekir.
  • 3 Hatadan korunmak (2×3 + 1) veya 7 host gerekir.

Erasure Coding ile korunacak vSAN nesneleri için, seçilen koruma seviyesi için 2n + 2 Host veya Fault Domain’ler olmalıdır.

  •   RAID5 (3 + 1) için (2×1 + 2) veya 4 Host gereklidir.
  •   RAID6 (4 + 2) için (2×2 + 2) veya 6 Host gereklidir.

Özetle aşağıdaki tablodaki gibidir:

Hataları tolere etmek için gereken fault domain sayısını hesaplamak için, önceki ile aynı denklem kullanılır; NumberOfFailuresToTolerate = 1 olan bir sanal makineyi fault domain içeren bir cluster’da deploy ederken, 2n + 1 fault domain (storage alanına katkıda bulunan 1 veya daha fazla host içeren) gereklidir. Bu hesaplama şekliyle , yukarıdaki tablo kaç Fault Domain’ine ihtiyaç duyulduğunu anlamak için ” host” yerine “fault domain” yazılarak kopyalanabilir.

Bu compute kaynakları için de geçerlidir. Böyle bir senaryoda, bir Fault Domain alanı arızası kaynak açlığından kaçınması gerektiğinden, 1 ek değer CPU / Memory değerinde bir Fault Domain gerekmektedir.

Bir hata meydana geldiğinde policy’e tam olarak uygun şekilde geri yüklenmesini sağlamak için ekstra bir Fault Domain ihtiyacınız olacaktır.

Not : Çok büyük vSAN cluster tasarlarken, bir sanal makineye ait tüm replikaları etkileyen tek rack hatalarından kaçınmanın bir yolu olarak fault domain’lerin kullanılması düşünülmelidir . Ayrıca, bir arıza durumunda komponent’lerin rebuild işlemi için gereken ek kaynakları ve kapasite gereksinimlerini göz önünde bulundurulması gerekir.

VMware en iyi sonuçlar için, cluster,’da 4 veya daha fazla fault domain yapılandırılmasını önerir . üç fault domaine sahip bir cluster, üç host’lu bir cluster’ın, bir hatadan sonra verileri yeniden koruyamama ve full data migration modunu kullanamama gibi, aynı kısıtlamalara sahiptir.

Rack İzolasyonu İçin Fault Domain Kullanımı

Önceki senaryolarda bir diskin veya tüm  host’un arızası durumunda , hata tolere edilebilir durumda idi. Bununla birlikte, server rack’ın tamamı gibi daha büyük fault domain’ler arızalanmasına karşı koruma sağlamaz.

Aşağıdaki örnekte, dört rack’e bölünmüş vSAN cluster’da 12 host’un bulunduğu yapıyı ele alalım. Her rack’te üç ESXi Host olduğunu varsayalım. 1 arızayı tolere eden bir sanal makine deploy edildiğinde , her iki kopyanın aynı rack’teki farklı host’lara konumlanması mümkündür.

Bu riskin azaltılması için , sunucuları vSAN cluster’a sunucu rack’leri boyunca yerleştirmeli ve vSAN UI’deki her rack için bir fault domain’nin yapılandırılması gerekmektedir. Bu, vSAN’a komponent’leri birden çok nesneyi çevrimdışı duruma getirme riskini ortadan kaldırmak için sunucu rack’lerine dağıtmasını söyler. Bu özellik genellikle Rack Awarenessolarak adlandırılır. Aşağıdaki şemada, her rack’teki üç sunucu ayrı vSAN Fault Domain olarak yapılandırıldığında komponent yerleşimini gösterilmektedir.

Leave A Comment

Your email address will not be published. Required fields are marked (required):

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Back to Top