Doğru RAID Seviyesi Nasıl Belirlenir?

RAID hangi durumlarda kullanılır?
RAID, birden fazla fiziksel diski tek bir mantıksal yapı altında birleştirme yöntemidir. Kullanım amacı bazen okuma ve yazma hızını artırmak, bazen de disk arızalarına karşı sistemi ayakta tutmaktır. Bazı RAID seviyeleri performans odaklıdır ancak veri koruması sunmaz. Bazıları ise güvenlik sağlar fakat depolama alanından feragat edilmesine neden olur. Bu yüzden RAID seçimi bir denge meselesi olarak değerlendirilir.
Felaket senaryolarında RAID tek başına yeterli kabul edilmez. Veri merkezlerinde kullanılan VDS ve dedicated sunucu sistemlerinde RAID genellikle ilk savunma katmanı olarak konumlandırılır. Disk arızası yaşandığında servislerin kesintisiz çalışabilmesi için RAID devreye girer.
RAID Yapısının Üç Ana Tekniği
RAID seviyeleri farklı adlarla sınıflandırılsa da temelde üç temel teknik üzerine kuruludur. Bu teknikler ihtiyaca bağlı olarak tekil ya da birleşik şekilde kullanılır.
Şeritlendirme
Verinin küçük parçalara bölünerek birden fazla disk üzerine dağıtılmasıdır. Dosyanın farklı bölümleri aynı anda farklı disklerden işlendiği için okuma ve yazma işlemleri hız kazanır. Performans artışı sağlanır ancak bu yapı veri koruması sunmaz. Disklerden biri arızalandığında veri bütünlüğü kaybedilir.

Aynalama
Aynı verinin eş zamanlı olarak iki ayrı diske yazılması prensibine dayanır. Disklerden biri arıza yaptığında diğer disk veriyi tuttuğu için sistem çalışmaya devam eder. Bunun karşılığında depolama alanı kaybı yaşanır. İki diskli bir yapıda kullanılabilir alan yarıya düşer.

Parite
Veriden türetilen ek bir bilgi sayesinde arıza durumunda eksik verinin yeniden hesaplanmasını sağlar. Bir disk bozulduğunda kalan disklerdeki veri ve parite bilgisi birlikte kullanılır. Tek parite bir disk, çift parite ise iki disk arızasına karşı dayanıklılık sunar.

RAID Yapısı Nasıl Seçilir?
RAID yapısı seçilirken üç ana noktaya dikkat edilmesi gerekir. Sistem, belirli sayıda disk arızasına rağmen ayakta kalabilmelidir. Performans beklentisinin ne kadar kritik olduğu değerlendirilmelidir. Toplam disk kapasitesinden ne kadarının kullanılacağı belirlenmelidir. Bu üç unsur doğru RAID yapısını tanımlar.
RAID Seviyeleri Nelerdir?
Güncel kullanımda RAID 0, RAID 1, RAID 5, RAID 6 ve RAID 10 öne çıkarken, JBOD gibi RAID dışı mimariler de NAS sistemlerinde farklı ihtiyaçlar için tercih edilmektedir.
JBOD Yapısı Nedir?
JBOD , birden fazla diskin tek bir büyük depolama alanı gibi çalışmasını sağlar ve veriler diskler arasında ardışık olarak dağıtılır. Diskler arasında aynalama ya da parite işlemi uygulanmaz.
Bu yapı yedeklilik sunmaz. Disklerden biri arızalandığında yalnızca o diskte bulunan veriler kaybolur. Avantajı tüm disk kapasitesinin kayıpsız şekilde kullanılabilmesi ve kurulumunun oldukça pratik olmasıdır. Dezavantajı ise disk arızalarına karşı herhangi bir veri koruması sağlamamasıdır.

RAID 0
RAID 0 tamamen performans odaklı bir yapı olarak kullanılır. Veriler küçük parçalara bölünür ve tüm diskler üzerine dağıtılır. Disklerin eş zamanlı çalışması sayesinde okuma ve yazma hızlarında ciddi artış sağlanır.
Bu yapıda herhangi bir veri güvenliği mekanizması bulunmaz. Disklerden birinin arızalanması durumunda sistem çalışamaz hale gelir ve tüm veriler kaybedilir. Disk sayısı arttıkça sistemin sorunsuz çalışmaya devam etme olasılığı azalır. Bu nedenle RAID 0, veri güvenliğinden çok hız gerektiren geçici iş yükleri için tercih edilir.

RAID 1
RAID 1, verinin birebir kopyasının birden fazla disk üzerinde tutulmasını sağlar. Disklerden biri bozulsa bile sistem diğer disk üzerinden çalışmayı sürdürür.
Bu yapının en büyük artısı yüksek veri güvenliği sunmasıdır. Okuma performansı bazı kullanım senaryolarında artabilir. Dezavantajı ise kullanılabilir alanın azalmasıdır. İki diskli bir RAID 1 yapılandırmasında toplam kapasitenin yarısı kullanılabilir.

Disk değişimi sonrası yeniden inşa sürecinde risk vardır. Kalan disk de bozulursa veri kaybı yaşanabilir. Bu ihtimal düşüktür ama tamamen ortadan kalkmaz.
RAID 5
RAID 5, veriyi diskler arasında dağıtarak saklayan ve parite bilgisi oluşturan bir RAID seviyesidir. Çalışabilmesi için en az üç disk gereklidir. Bir disk arızalandığında parite verisi sayesinde sistem çalışmayı sürdürür.
Alan verimliliği yüksektir çünkü yalnızca bir disk parite amacıyla kullanılır. Okuma performansı çoğu kullanım senaryosunda dengeli kabul edilir. En büyük dezavantajı tek disk arızasına tolerans sunmasıdır. Rebuild sırasında ikinci bir disk arızalanırsa veri kaybı meydana gelir.
Bu yüzden RAID 5 seçimi yapılırken disk boyutları, sistem yükü ve yedekleme planı mutlaka göz önünde bulundurulmalıdır.

RAID 6
RAID 6, RAID 5 yapısına benzer ancak iki ayrı parite bilgisi kullanır ve çalışabilmesi için en az dört disk gerektirir. Aynı anda iki disk arızalansa bile sistem hizmet vermeye devam edebilir.
Bu yapı özellikle yüksek kapasiteli disklerin kullanıldığı ortamlarda avantaj sağlar. Rebuild süresi uzun olsa da ikinci disk arızasına karşı ek bir güvenlik katmanı sunar. Yazma performansı parite hesaplamaları nedeniyle düşer ve rebuild süreci daha karmaşık hale gelir. Buna rağmen veri güvenliğinin öncelikli olduğu sistemlerde RAID 6 daha güvenilir bir seçenektir.

RAID 10 (1+0)
RAID 10, aynalama ile şeritlendirmeyi aynı yapı içinde birleştirir ve minimum dört diskle çalışır. Hem yüksek performans sağlar hem de aynalama sayesinde güçlü bir veri güvenliği sunar.
En büyük artısı rebuild sürecinin sade olmasıdır. Bir disk bozulduğunda yalnızca eş diski üzerinden kopyalama yapılır. Tüm RAID yapısının yeniden hesaplanması gerekmez. Bu da yoğun I/O yükü altında çalışan sistemlerde daha dengeli bir yapı oluşturur.
Olumsuz yönü kapasite kaybıdır. Toplam disk alanının yarısı kullanılabilir. Buna rağmen hız ve güvenliğin birlikte önemli olduğu sistemlerde RAID 10 tercih edilir.

Parite disk sayısını belirlerken kaç disk arızasına tolerans sağlanacağı kadar, arızaya ne kadar hızlı yanıt verileceği de önemlidir. Bir disk arızalandığında yedek disk hazırsa yeniden inşa işlemi anında başlar ve risk süresi azalır. Disk temini gecikiyorsa tek pariteli yapıların kırılganlığı artar.
Linux Sistemlerde RAID Durum Kontrolü
Sistem Linux tabanlı bir RAID altyapısı kullanıyorsa, dizi sağlığını kontrol etmek için birkaç temel komut yeterli olur.
cat /proc/mdstatDaha detaylı görünüm için md cihazını bulup inceleyebiliriz.
sudo mdadm --detail /dev/md0Disklerin SMART durumunu kontrol etmek için bunu kullanalım.
sudo smartctl -a /dev/sda<br>sudo smartctl -a /dev/sdbSistemde hangi disklerin olduğunu ve boyutları net görmek istersek eğer;
lsblk -o NAME,SIZE,TYPE,MODEL,SERIALBu kontrolleri düzenli yapmak, RAID seçimi kadar önemlidir. Çünkü RAID arızayı telafi edebilir, ama arızayı erken yakalamak daha büyük sorunları önler.
Sık Sorulan Sorular
Yedekleme yapmam gerekiyorsa RAID kullanmanın amacı nedir?
RAID sistemin disk arızası yaşadığında çalışmaya devam etmesini sağlar. Yedekleme ise veri kaybı yaşandığında geri dönmeyi sağlar. RAID hizmet sürekliliği içindir. Yedekleme veri kurtarma içindir. Bu yüzden RAID yedeklemenin yerine geçmez ancak yedekleme ile birlikte kullanıldığında anlam kazanır.
RAID rebuild sırasında sistem neden yavaşlar?
Rebuild sırasında tüm diskler sürekli okunur ve yazılır. Bu işlem normal kullanımın çok üzerinde disk yükü oluşturur. Diskler hem kullanıcı isteklerine hem rebuild sürecine aynı anda cevap vermeye çalıştığı için performans ciddi şekilde düşer.
RAID 6 neden RAID 5ten daha güvenlidir?
RAID 5te veri kaybı için rebuild sırasında tek bir ek disk arızası yeterlidir. RAID 6da veri kaybı için aynı anda iki ek disk arızası gerekir. İki diskin aynı gün bozulma ihtimali çok düşüktür.