#raid6 vsan
Explore tagged Tumblr posts
Text
New Post has been published on
New Post has been published on https://www.tayfundeger.com/vsan-raid-6-erasure-coding.html
VSAN - RAID 6 Erasure Coding
Merhaba,
VSAN – RAID 6 Erasure Coding ile iligli spesifik olarak bir makale yazmamıştım. Bu yazımda VSAN – RAID 6 Erasure Coding ile ilgili çeşitli bilgiler vereceğim.
Daha önce VSAN RAID5/6 Erasure Coding ile ilgili bir makale yazmıştım. Bu yazıma aşağıdaki linkten ulaşabilirsiniz.
VSAN – Raid 5/6 Erasure Coding
VSAN RAID6 Kullanımı
FTT=2 kullanılmasını istenilen VSAN cluster’larının düzgün bir şekilde tasarlanması gerekir. Neden düzgün bir şekilde tasarlanması gerekir diye söylüyorum? Çünkü burada maaliyet kalemleri işin içerisinde giriyor. Bundan dolayı yedeklilik arttıkça aslında maaliyette artmış olur. Bununda sebebi depolama maliyetinden kaynaklanır. vSAN RAID 6 Erasure Coding kullanarak depolama maliyeti bir miktar telafi edilebilir. Ancak yukarıda da belirttiğim gibi FTT=2 tasarlanırken dikkat etmeniz gereken önemli noktalar bulunmaktadır.
VSAN – RAID 6 Erasure Coding Nedir?
RAID 6 kullanmanız durumunda 4 data bit ve 2 parity bit kullanılır. VMware vSAN’da verileri 4 data ve 2 parite bileşenine bölmek için erasure coding’i kullanır. Bir önceki makalemde de bilgi vermiştim ancak, bazı verilerde eksiklik olsa bile orjinal verilerinizi kurtarmanıza olanak sağlar. Tabi erasure coding’in perfromansa önemli düzeyde etkisi bulunmaktadır. VMware ‘de RAID 6 kullanabilmek için all flash kullanmanız gerekmektedir. All Flash ile Hybrid arasındaki farklar için aşağıdaki makalemi inceleyebilirsiniz.
VSAN – All Flash ve Hybrid
Erasure Coding kullanıldığı için önemli miktarda kapasite iyileştirmesi sağlanır. Örneğin FTT=2 politikası için RAID 1 kullanılırken, storage çarpanı 3 ‘dür. Yani bu ne demek oluyor? 100 GB‘lık bir virtual machine için 300 GB alan tüketilecektir. Peki RAID 6 kullanılırken bu durum nasıl oluyor ondan bahsedeyim. RAID 6 kullanıyorsanız, storage çarpanı 1.5 ‘dir. Yani 100GB‘lık bir virtual machine için yanlızca 150GB‘lık bir alan tüketecektir.
vSAN RAID 6 (Erasure Coding) Gereksinimleri
RAID 6 Erasure Coding politikalarından yararlanmak istiyorsanız, aşağıdaki gereksinimlerin karşılanması gerekir:
vSAN Advanced License
VSAN All Flash kullanılmalıdır.
Cluster’da en az 6 host bulunmalıdır.
RAID 5/6 kullanılabilmesi için disk format sürümü 3 veya üstü olması gerekir.
Daha detaylı bilgi için aşağıdaki linki inceleyebilirsiniz.
https://docs.vmware.com/en/VMware-vSphere/6.7/com.vmware.vsphere.virtualsan.doc/GUID-6D818555-8DE8-4F06-9498-66903FB9C775.html
VSAN yapılandırma özelliklerine girmeden önce, ESXi host’ların fiziksel olarak ayırmak en iyi yöntemdir. Genellikle cluster içerisinde bulunan sunucular farklı yerlerde yani farklı kabinlerde olması tercih edilir. Burada en önemli gereksinim, cluster’da bulunan ESXi host’lar arasında 1ms RTT olması gerekir. RAID 6 erasure coding politikalarını kullanmanın minimum 6 ESXi host gereksinimi olduğu göz önüne alındığında, bir cluster’ı 6 veya daha fazla rack’e bölmek ideal olacaktır.
Aslında bu makale içerisinde fault domain hakkında da bilgi verecektim ancak Fault Domain ile ilgili daha önce kapsamlı bir yazı yazmıştım. Buna aşağıdaki linkten ulaşabilirsiniz.
VSAN – Fault Domain
VSAN – RAID 6 Erasure Coding
VSAN RAID 6 kullanmak istiyorsanız Storage Policy’den yeni bir policy oluşturabilir veya var olan storage policy’i değiştirebilirsiniz.
Umarım faydalı olmuştur.
Iyi çalışmalar.
0 notes
Text
Testing VMware vSAN 6.6.1 on VMware Workstation 14
by Curtis Brown
Introduction
VMware vSAN™ is the storage component for VMware®’s Hyper-Converged Infrastructure offering. It can be deployed (albeit with its own licensing), as a part of a VMware vSphere® cluster. The release of vSAN is generally tied to a specific release of VMware vSphere, so the 6.5 Update 1 release includes 6.6.1.
Testing VMware vSphere in a lab can be desirable for many reasons, for example training or development. However, it can be quite hardware intensive, and adding in vSAN makes matters more complicated. To properly test vSAN, we need multiple nodes and good networking (10Gb for all-flash). However, it’s possible to use VMware Workstation (or VMware Fusion® for you Apple fans) to test this in a nested environment, where a set of virtual machines running VMware vSphere are hosted on one physical system.
One of the key features in VMware Workstation 14 (and Fusion
is the addition of Virtual Machine Hardware version 14. This is significant for this exercise, as one the features of this version is the ability to add virtual NVMe drives to Virtual Machines. This is also useful as we don’t need to mess about with the host VM or guest vSphere configuration to spoof the software into thinking it has SSDs.
What’s the Shopping list?
Well, you’re going to need a machine with a decent CPU (an Intel i7 or similar) and 32GB RAM with some fast disk (SSD). It’s worth remembering that you’re going to be standing up quite a bit if you squeeze this in one machine. From my experience, you will need:
A Windows Domain Controller (for authentication, DNS etc) I keep this pretty lean with 2GB RAM and a single vCPU
A VMware vCenter 6.5U1 appliance, trimmed back to 6GB RAM (Another feature of Workstation 14 is the ability to import the OVA for the appliance straight in and configure it, which saves much messing around with VMX files or having to nest the appliance in an ESXi host VM)
Three ESXi host VMs, all configured with the following:
6GB RAM
2 vCPU
15GB disk (for vSphere ESXi binaries)
2 NICs
For vSAN, I added a 5GB NVMe as my Cache layer and a pair of 20GB NVMe as my data tier
Using this toolkit, I can build out my own vSphere cluster. In addition to this, I also use a Distributed Switch with a Management port group and a VM port group (more for tidiness than anything else). Each host needs a VMKernel for Management (adding vMotion to this also works for efficiency) and I added a separate one purely for vSAN.
Enabling vSAN
This is pretty simple – browse through the vSphere Web Client to the Cluster, go to the Configure tab, select vSAN>General and hit Configure. This will then launch a wizard that takes you through the process of enabling vSAN.
Feature wise, to keep the load down I didn’t enable de-duplication & compression or encryption. So long as vSAN is enabled on a VMKernel port on each host, the network validation should be fine.
The disk claiming is spot on. As you can see, the NVMe disks are recognised correctly as flash disks and selected for the relevant tiers based on size.
This will complete the configuration and you’ll have a vSAN:
Fixing Some Warnings…
There will be a few amber warnings that require attention.
For the simpler warnings, you’ll want to enable the Performance Service as well as update the vSAN HCL Database. If you’re not connected to the internet you can download and apply this manually using ‘update from file’. The file can be downloaded from https://partnerweb.vmware.com/service/vsan/all.json
The remaining Amber warnings are trickier. The first warning that you will encounter will be that the hardware isn’t on the vSAN HCL. (This shouldn’t be much of a surprise given we’re running this in Workstation.)
The second will be the vSAN Build Recommendation Engine Health component. This requires an internet connection and that the service is logged into my.vmware.com with credentials. For a disposable lab, this is unlikely to be desirable.
These warnings can be silenced via the Ruby vCenter Console (RVC. via either SSH or the console, log on as root and access the Shell. Then log onto RVC using vCenter credentials directed at the vCenter FQDN…)
Mark a shortcut to the vSphere cluster with vSAN:
mark (vcenter FQDN)/(datacenter object)/computers/(Cluster)
To silence the given service:
vsan.health.silent_health_check_configure -a (service) ~vsan
For example:
The following services will need attention:
vumconfig - vSAN Build Recommendation Engine Health check
controllerdiskmode – Controller Disk Group Mode
controllerdriver - Controller Driver is VMware Certified
controllerfirmware - Controller firmware is VMware certified
controllerreleasesupport - Controller is VMware certified for ESXi release
controlleronhcl - SCSI Controller is VMware certified
For example, the vSAN Build Recommendation Engine Health Check:
You can use the command vsan.health.silent_health_check_status ~vsan to check the status. -a switch can be used for specific entries.
Expanding the Cluster
If you want more nodes, then you will need to add them as additional hosts. This will allow you to test RAID5 and RAID6 Erasure Coding (four and six hosts respectively) and add capacity and performance, but you need more tin for this.
Shutting Down
To shut down the lab, you should simply:
Check that all re-sync operations are complete:
Place the hosts in Maintenance Mode with ‘No Data Evacuation’ selected and don’t move powered off VMs
Power off the hosts
With respect to setting up a vSAN lab, it’s “job done” – go celebrate!
If you’re interested in exploring the ways in which you can modernise your datacentre but not sure where to start, please contact Xtravirt, and we’d be happy to use our wealth of knowledge and experience to assist you.
About the Author
Curtis Brown joined the Xtravirt consulting team in October 2012. His specialist areas include End User Compute solutions and Virtual Infrastructure design and implementation with particular strength in VDI, storage integration, backup and Disaster Recovery design/implementation. He is a VMware vExpert 2017.
0 notes
Text
New Post has been published on
New Post has been published on https://www.tayfundeger.com/vsan-raid-5-6-erasure-coding.html
VSAN - Raid 5/6 Erasure Coding
Merhaba,
VSAN Raid 5/6 Erasure Coding kavramını VSAN ‘da oldukça fazla duyuyoruz. Bu makalemde VSAN Raid 5/6 Erasure Coding detayları hakkında bilgi vereceğim. Daha önce yazmış olduğum VSAN makalelerine aşağıdaki linkten ulaşabilirsiniz.
https://www.tayfundeger.com/kat/VSAN
Raid 5/6 Erasure Coding ‘ın detaylarını aşağıdaki linkte kısaca bahsetmiştim.
VSAN 6.2 Yenilikleri Nelerdir?
VSAN Raid 5/6 Erasure Coding Nedir?
Erasure Coding terimine yabancı olabilirsiniz. İlk olarak erasure coding’den bahsetmek istiyorum. Erasure Coding, bazı parçalar eksik olsa bile orjinal verileri kurtarmanıza olanacak verecek şekilde verileri parçalara kodlama ve bölümleme şemasını gösteren genel bir terimdir. Raid 5/6 Erasure Coding sayesinde datastore’da daha az alan kullanılırken mirror yani RAID 1 ile aynı düzeyde veri koruması sağlayabilirsiniz. Raid 5 veya Raid 6 erasure coding, VSAN’ın 2 cihazın arızasını tolere etmesini sağlar. VSAN’da oldukça avantajları olan bir policy’dir. Yedekliliği üst seviyede sağlar iken, aynı zamanda alan tasarrufuda sağlar. Alan tasarrufu sağlaması oldukça önemli. Aşağıda zaten bunun örneklerine değineceğiz.
Erasure Coding (RAID-5/6)
Dört veya daha fazla ESXi host bulunan all flash cluster‘larda Raid 5’i yapılandırabilirsiniz. Eğer all flash cluster’ınızda 6 veya daha fazla ESXi host var ise Raid 5 veya Raid 6 ‘yı yapılandırabilirsiniz. VSAN Raid 5/6 Erasure Coding kullanmanız durumunda verileriniz Raid 1 mirroring’den daha az kapasiteye ihtiyaç duyar. Örneğin Primary level of failures to tolerate değeri 1 ile Raid 1 kurgulanan bir VSAN altyapısında, bir virtual machine’in virtual disk boyutunun iki katı kadar alan gerekir. Eğer Raid 5 kullanırsanız virtual disk boyutunun 1.33 katı gerekir.
VSAN Erasure Coding Raid Level
Yukarıdaki tabloda Raid 1 ve Raid 5/6 arasındaki genel bir karşılaştırma gösterilmektedir. RAID-5/6 ErasureCoding, all flash yapılandırmaları için optimize edilmiş bir yer verimliliği özelliğidir. Erasure coding, mirroring ile aynı yedeklilik düzeyini, daha düşük kapasite ile sağlar. Genel olarak, erasure coding veriyi alıp, birden fazla parçaya bölme ve birden fazla cihaza dağıtma yöntemidir; aynı zamanda, parity verileri eklenir. Böylece parçalardan birinin bozulması veya kaybolması durumunda yeniden yaratılabilir.
VSAN RAID5 Erasure Coding
Disk verimliliği sağlayan veri deduplication ve compression aksine, erasure coding mirroring ile aynı arıza toleransı düzeyini daha düşük kapasite ile garanti eder.
Örnek olarak, 100GB’lık bir sanal disk düşünelim. Bir disk veya bilgisayar arızasından kurtulmak için RAID-1 yapısında, 2 kopya verisi, yani 200 GB kapasite gerektirir. Aynı disk kapasitesindeki veriyi korumak için RAID-5 kullanılıyorsa; 100 GB sanal disk 133 GB ham kapasite tüketecektir – tüketilen kapasitede RAID-1 mirroringe göre % 33 azalmış olur. Çok güzel değil mi? 🙂
Raid 5 kullanmak için all flash bir cluster ve en az 4 ESXi host gerektirir. 100 GB virtual disk ile ilgili ufak bir örnek verecek olursak; Raid 5 erasure coding içeren bir storage policy bir objeye atandığında 3 data component ve�� parity verileri oluşturulur. Bir disk veya ESXi host’un kaybedilmesi durumunda, bu bileşenler cluster’da bulunan ESXi host’lara aktarılır.
RAID 5/6 erasure coding, virtual machine bileşenlerine uygulayabileceğiniz bir policy özelliğidir. RAID 5 kullanmak için, Failure tolerance method’un VSAN Raid-5/6 (Erasure Coding) ve Primary level of failures to tolerate seçeneğinin 1 olarak ayarlanması gerekir. Raid 6 kullanmak istiyorsanız, Primary level of failures to tolerate seçeneğini 2 olarak ayarlamanız gerekiyor. Raid 5 veya Raid 6 Erasure coding, Primary level of failures to tolerate = 3 değerini desteklemez.
VSAN RAID6 Erasure Coding
RAID-6 erasure coding, en az 6 ESXi host gerektirir. Önceki 100 GB sanal disk örneğimizi kullanarak, RAID-6 erasure coding dört data component ve 2 parity oluşturur. Bu yapılandırma aynı anda iki diskin veya ESXi host’un kaybına dayanabilir (FTT = 2).
Raid 5/6 Erasure Coding kullanmadan önce aşağıdaki maddelere dikkat etmeniz gerekiyor.
Yanlızca all flash altyapılarda kullanabilirisniz.
Kullanabilmeniz için disk format version’un 3.0 veya üzeri olması gerekmektedir.
Kullanabilmeniz için geçerli bir VSAN lisansına sahip olmanız gerekiyor.
VSAN cluster’ınızda deduplication ve compression’i enable durumuna getirmeniz size ekstra yer tasarrufu sağlayacaktır.
Erasure Coding ile ilgili ayrıca aşağıdaki makaleyi inceleyebilirsiniz.
https://www.usenix.org/system/files/login/articles/10_plank-online.pdf
Umarım faydalı olmuştur.
Iyi çalışmalar.
0 notes
Text
New Post has been published on VMware Virtualization Blog
New Post has been published on http://www.tayfundeger.com/vsan-fault-domain.html
VSAN - Fault Domain
Merhaba,
Bir önceki makalemde VSAN’da bulunan Cluster tipleri hakkında bilgi vermiştim. Bu makaleme aşağıdaki linkten ulaşabilirsiniz. Bu yazımda ise fault domains ile ilgili bilgiler vereceğim. Fault Domain özelliği VSAN 6.0 ile birlikte gelen bir özellik aslında. VSAN ilk release olduğu dönemlerde erişilebilirlik konusunda oldukça tartışmalar mevcuttu. Fault Domain ile birlikte artık bu tartışmalarıda ortadan kaldırmış oldu.
VSAN – Cluster Seçenekleri Nelerdir?
Nedir bu Fault Domain?
Yukarıda da belirttiğim gibi fault domain’i VSAN 6.0 ile birlikte duymaya başladık. Özellikle VSAN arızaları veya verilerin birden fazla kopyalanması ile ilgili makaleleri incelediğinizde mutlaka fault domain gözünüze çarpmıştır. Fault domain diye burada bahsedilen şeyi basitçe anlatmam gerekirse, bir grup sunucu, storage veya network ekipmanlarının kesintiden etkilenmesini ifade eder. Kısaca bir örnek verecek olursak, bir kabindeki network bağlantısını sağlayan switch ‘de veya güç kaynağında yaşanacak bir kesinti durumunda o kabindeki sunucular çalışsa dahi, sunucular erişilemez duruma gelebilir. Buradaki örnekte sunucu fault domain olarak kabul edilir. Fault domain sayesinde, down time yaşayan ESXi host gruplarına (fiziksel sunucu yani) tolerans gösterebilirsiniz. Yine fault domain sayesinde virtual machine’lerin verilerini farklı host’lar üzerinde tutmasını sağlayabilirsiniz.
Aslında VSAN cluster‘inda bulunan her host dolaylı olarak Fault Domain kabul edilir. VSAN, tüm VSAN nesnelerinin bileşenleri, Number of Failures to Tolerate kuralına göre otomatik olarak cluster’daki Fault Domain’lere dağıtır. Aşağıdaki diyagramda bileşenlerin Fault Domain’lere dağıtımını görebiliriz. 2 büyük bileşen mirrorlanmış nesneleri ifade ederken, küçük bileşen witness bileşenini temsil eder.
Bir clusterın, kaç host veya Fault Domain oluştuğunu belirlerken, aşağıdakileri hatırlamak önemlidir:
NumberOfFailuresToTolerate = 1 olan bir sanal makineyi deploy ederken 2n+1 kuralına uymalısınız. Yani burada 1 arızayı tolere etmek için 3 ESXi host’un olması gerektiğini gösterir. Eğer 3 arızayı tolere etmek istiyorsanız 7 ESXi host’un bulunması gerekir.
Seçilen seviyeye göre, Mirroring ile korunacak VSAN objeleri için, 2n+1 host veya Fault Domain
1 Failure’ın tolere edilmesi için (2×1+1) veya 3 host
2 Failure’ın tolere edilmesi için (2×2+1) veya 5 host
3 Failure’ın tolere edilmesi için (2×3+1) veya 7 host
Seçilen seviyeye göre, Erasure Coding ile korunacak VSAN objeleri için, 2n+2 host veya Fault Domain
RAID5 (3+1) için, (2×1+2) veya 4 host gereklidir
RAID6 (4+2) için, (2×2+2) veya 6 hosts gereklidir
Ayrıca Fault Domain konfigürasyonu yapılmamışsa, Fault Domain veya host kaybı yaşanırsa, çabucak yeniden oluşturulamayabileceğinin düşünülmesi gerekir. Bu durum için, VMware ek bir host veya Fault Domain bulundurulmasını tavsiye eder.
Şasi Isolation için Fault Domain Kullanma
Bir diskin veya tüm hostun arızası önceki örnek senaryoda tolere edilebilir. Bununla birlikte, bu, tüm sunucu şasisi (Rack) gibi daha büyük Fault Domain’lerin arızalanmasına karşı koruma sağlamaz. Aşağıdaki gibi, 12 node’lu bir vSAN Cluster’da bir nesneyi oluşturan birden fazla bileşenin aynı sunucu şasisinde bulunması mümkündür. Bir şasi arızası varsa, nesne çevrimdışı olur.
Bu riski azaltmak için, sunucuları vSAN Clusterndaki racklere (şasi) yerleştirin ve vSAN arayüzünde her şasi (rack) için bir Fault Domainı yapılandırın. Bu, vSAN’a bileşenleri, birden çok nesneyi çevrimdışı duruma getirme riskini ortadan kaldırmak için, şasilere dağıtmasını söyler. Bu özellik genellikle “Rack Awareness” (Rack/Şasi Farkındalığı) olarak adlandırılır. Aşağıdaki şemada, her şasideki üç sunucu ayrı vSAN Fault Domain’i olarak yapılandırıldığında bileşen yerleşimi gösterilmektedir.
Arızaları tolere etmek için gereken Fault Domain sayısını hesaplamak için, önceki ile yukarıda belirtmiş olduğum denklemi kullanın; NumberOfFailuresToTolerate = 1 olan bir sanal makineyi Fault Domain’e sahip bir Cluster’da dağıtırken, 2n + 1 olması gerekir.
Tabi birde Fault Domain’in Stretched cluster ile kullanılması var. Bu konu ile ilgili ayrıca makale yazacağım.
Umarım faydalı olmuştur.
İyi çalışmalar.
0 notes