Raid Nedir?

Yazımın bu kısımlarında dilimin döndüğünce raid kavramını size açıklamaya çalışacağım. Detaylı bilgiler ise yazının alt kısmında…)

Raid normal harddisklerin bizim bildiğimiz anlamın dışında kullanılmasıdır. Norrmalde bilgisayarınıza taktığınız harddiskleri ya da harddiski normal bir şekilde kullanırken, Raid uygulamalarında birden fazla harddisk bir bütün olarak gösterilir. Bu sayede istenen kriterler yerine getirilir. Performans ya da güvenlik gibi. Bunu sağlayan donanıma da raid denetleyicisi denir.

RAID(Redundant Array of Independent Disks) yani bağımsız disklerin artıklı dizisi kimi zaman güvenirliği kimi zaman ise performansı artırmaya yöneliktir. Eğer az sayıda hard disk ile raid yapacaksanız ikisini birden gerçekleştirmek zor. Ya da raid yapacağınız hard disk sayısını arttırp hem performans hem de güvenirlik kazanırsınız. 

Raid 0 ve 1, 2, 3, 4, 5 gibi uygulamaları vardır. Bu sayede isterseniz harddiskleri birbirinin devamıymış gibi yani hepsini bir bütün gibi göstererek performans ya da aynı harddiski diğerinin aynası olarak göstererek güvenirlik kazanırsınız.

Raid 0

diagram-raid0

Yandaki resimden de anlaşılacağı gibi bu uygulama en az 2 disk ile yapılır. Burada hedeflenen asıl kriter performanstır. Resimdeki ABC herhagi bir dosyanın parçaları olsun. Resimdeki RAID 0 sistem 3 diskten oluşuyor. Ve düz olarak sıralanmış yani RAID 0 yapılmış. Bu durumda raid denetleyici sistem bu dosyayı yazarken A kısmını 1. diske, B kısmını 2. diske ve son kımı da son diske yazar. Bu sayede performans tam 3 katına olmasa da ona yakın değerlere ulaşır. Bu sistemdeki en büyük dezavantaj ise şudur: Bu sistemde disklerden herhangi biri arızalandığında sistem tamamen çöker ve veri kaybedilir. Sistemin kapasitesi ise harddisklerin kapasiteler toplamıdır.

 

Raid 1

 

diagram-raid1

Bu sistemde ise asıl düşünülen güvenliktir. Harddiskler paralel bağlanmıştır. Bu sayede diske ABC verisi yazılmak istendiğinde aynı anda hem 1. hem de 2. diske yazılır. Bu sistem sayesinde disklerden herhangi birinin çökmesi durumunda çöekn disk değiştirilir ve sistem veri kaybı olmadan çalışmaya devam eder. Bu sistemlerde okuma hızı yüksek (Çok değil)  fakat yazma hızı düşük olur. Ama asıl düşünülenin güvenlik olduğunu varsayarsak en iyi sistemdir. Sistem kapasitesini ise en düşük kapasiteli disk belirler.En az 2 disk ile yapılır. 

 

 

Raid 0+1

diagram-raid01Bu sistem ise bir nevi karışımdır.Burada diskler hem seri hem de paralel bağlanarak hem güvenlik hem de performans sağlanabilir. Yalnız bu sistemler için en az 4 disk gerekmektedir. 

 

Raid Nedir?

(wikipedia)RAID (Redundant Array of Inexpensive Disks; Ucuz Ardışık Tekerler Dizisi veya Redundant Array of Independent Disks), diskler arasında veri kopyalama veya paylaşımı için birden fazla sabit diski kullanarak yapılan veri depolama tasarısıdır. Tek diske göre, RAID’in yararı, veri bütünlüğünü, hata toleransını, iş çıkarma yeteneğini ve toplam disk kapasitesini artırmasıdır. Özgün uygulamalarda, anahtar avantajı disk kapasiteyi artırmakla beraber disk performansını da yükseltmesi ve verileri eş zamanlı olarak yedeklemeyi sağlamasıdır.

RAID, tek bir mantıksal birime çoklu diskleri birleştirir. Böylece işletim sistemi birçok farklı sabit disk görmek yerine sadece bir tane görür. RAID sunucu tabanlı bilgisayarlarda tipik olarak kullanılır ve genellikle aynen boyutu ayarlanmış disk sürücüyle tamamlanır.

RAID şartnamesi birtakım prototipleri “RAID düzeyleri” veya disk bileşimlerini önermekteydi. Her birinin teorik avantajları ve dezavantajları vardı. Yıllar içinde, RAID kavramının farklı yürütmeleri ortaya çıktı. Çoğu orijinal hallerinden farklılaştı ama numaralandırılmış adlar kaldı.

RAID’in birçok tanımı yıllar içinde tartışılmıştır. Temel RAID kavramlarını kullanan herhangi bir sistem güvenlik, kapasite veya performans için fiziksel disk uzayını birleştiriyorsa buna RAID Sistem denir.

RAID uygulamaları

Çoklu sayıdaki diskler üzerine veri dağıtılması işi bu iş için tasarlanmış Donanım “hardware” veya yazılım “software” ile gerçekleştirilir. Bunlara ilaveten kısmen donanım kısmen de yazılım tabanına sahip çözümler olan hibrid RAID’ler de mevcuttur.

İşletim sistemi yazılım uygulaması dizilimdeki diskleri normal sürücü denetim birimi (IDE/ATA, SATA, SCSI, Fibre Channel, vs.) ile yönetir. Mevcut merkezi işlem birimi (MİB) hızları göz önüne alındığında, yazılım RAID’lerinin donanım RAID’lerinden daha hızlı olabildiği görülür, buna karşılık başka işlerde kullanılabilecek olan işlem gücü bu işe harcanmaktadır. Bu duruma gösterilebilecek önemli bir istisna, bir OLTP sürücüsünde olduğu gibi, RAID donanımın uygulamayı hızlandırabilecek olan batarya destekli bir yazma ön belleği ilebirlikte kullanılmasıdır. Bu durumda RAID uygulaması herhangi bir sistem çökmesi durumuna karşı yazma önbelleğinden destek almaktadır. Sistem çöktüğü takdirde bilinen daha önceki bir noktaya dönebilmektedir. Donanım çözümü; RAM hızları ile kısıtlı bir şekilde disk sürücüye erişmeye çalışmaktan, ön belleğin bir başka kontrol birimine ikizlenebilme hızından ve ön bellek miktarı ile ön belleğin diske yapabileceği aktarımın hızından daha yüksektir. Bu nedenle yüksek işlem hızına sahip sunucularda genellikle batarya destekli ön bellek disk kontrol birimleri kullanılması önerilir. Aynı şartlar altında yazılım çözümü kullanılması ise, sürücülerin yapacakları dönüşler sırasında diske aktarabilecekleri bilgi miktarı veya arama ile sınırlı olacaktır. Salt yazılımdan oluşan bir RAID’in bir başka dezavantajı ise, aksayan diske veya kullanılan ön yükleme düzenlemelerine bağlı olarak, dizin yeniden kurulana kadar bilgisayarın yeniden ön yüklemesi yapılamayabilir.

RAID’in donanım uygulaması en azından özel amaçlı üretilmiş bir RAID denetim birimine ihtiyaç duyar. Masa üstü sistemlerde ise bu işlevi PCI genişleme kartı yerine getirebilir veya bu yetenek anakart içerisine yerleştirilebilir. Daha büyük çaplı RAID’lerde kontrol birimi ve diskler genellikle çoklu yuvaya sahip harici koruncaklarda saklanırlar. Kullanılan diskler IDE, ATA, SATA, SCSI, Fibre Channel, veya bunların herhangi bir kombinasyonu olabilir. Kontrol birimi ana bilgisayara (ana bilgisayarlara) yüksek hızlı SCSI, PCIe, Fiber kablo veya iSCSI bağlantıları ile doğrudan veya bir başka yapı üzerinden bağlanır veya ağa bağlı depolama olarak erişilir. Bu kontrol birimi disklerin yönetimini ve (çok sayıda RAID düzeyi tarafından gereksinim duyulan) eşlik hesaplamalarını gerçekleştirir. Bu seçenek performansın yükselmesine katkıda bulunur ve işletim sistemi desteğini daha kolay hale getirir. Donanım uygulamaları aynı zamanda tipik olarak çalışırken yer değiştirmeyi de destekler, bu sayede arıza yapan sürücüleri sistem çalışırken değiştirmek mümkün olur. Bazı nadir durumlarda donanım kontrol birimleri arıza yapabilir, bu durumlarda veri kaybı kaçınılmazdır. Ucuz RAID kontrol birimi donanımları piyasaya çıkmaya başladıktan sonra Hibrid RAID’ler çok popüler bir hale geldi. Burada kullanılan donanım RAID özellikleri olmayan normal bir disk kontrol birimidir, fakat bu kontrol birimi sistemi başlatma anında devreye girerek kullanıcının BIOS tarafından kontrol edilen RAID’leri kurmasına olanak tanır. Herhangi bir modern işletim sistemi kullanıldığında, dizilimi tek bir blok cihazmış gibi gösterecek özel geliştirilmiş RAID sürücülerine ihtiyaç duyacaktır. Bu kontrol birimleri tüm hesaplamaları gerçekte donanım değil, yazılım içerisinde gerçekleştirdiklerinden genellikle sahte RAID olarak adlandırılırlar. Yazılım RAID’lerinin aksine bu sahte RAID’ler genellikle çoklu denetim birimlerine yayılamazlar.

Hem yazılım hem de donanım sürümleri hazır yedek kullanımını desteklerler. Hazır yedek, arıza yapan bir sürücüyü anında (ve hemen her zaman otomatik olarak) değiştiren sisteme önceden yüklenmiş bir sürücüdür. Bu durum onarım için gerekli ortalama zamanı azaltır, aynı RAID yedeklerinde bir arıza daha meydana gelmesi veri kaybıyla sonuçlanabilir.

Bazı yazılım RAID sistemleri kullanıcıların diskin tamamı yerine bölümlerinden dizilimler meydana getirmelerine olanak tanır. Matris RAID ’in aksine bunlar sadece RAID 0 ve RAID 1 ile sınırlı kalmazlar ve bölümlerin tamamının RAID olması gerekmez.

 

Yapabilecekleri

RAID çalışabilirlik süresini muhafaza edebilir. RAID seviyeleri 1, 0+1/10, 5, ve 6 (ve bunların 50 ve 51 gibi varyantları) kullanıcıların erişebileceği veriyi dizilim üzerinde tutmaya çalışırken mekanik hard disklerin arıza yapmasına meydan verebilir. Bu durumda RAID veriyi bant, DVD veya bir başka yavaş çalışan yedekleme ortamından geri almak yerine dizilimin bir başka üyesi olan yedekleme diski üzerine yükler, bu üyeler dizilimde öncelik sırasına göre kullanıcının hizmetinde bulunmaktadır. Gerektiğinde veri bu üyelerden süratle geri yüklenebilir. Bu durum büyük şirketler için son derece önemlidir, çünkü sistemin çalışmadığı süre kazançtan kayıp anlamına gelir. Evlerde kullanılan bilgisayarlarda ise düzinelerle DVD kullanılarak yeniden yüklenen ve bu nedenle büyük zaman kaybına neden olan büyük ölçekli ortam depolama dizilimlerinin kaybına veya yedekleme ile koruma sağlanmamış olması nedeniyle disk arızalarının getireceği olumsuzluklara karşı kullanıcıları korur.

RAID belirli uygulamalarda performansı artırabilir. RAID seviyeleri 0, ve 5 – 6 “disklere bölüştürme” üzerine varyasyonlar kullanır, bu da lineer transfer gerçekleştirirken desteklenmiş transfer hızlarını artırmak için çoklu mil kullanımına olanak tanır. Görüntü ve video düzenleme uygulamaları gibi büyük ölçekli dosyalarla çalışan iş istasyonu uygulamaları disk bölüştürme işleminden büyük yarar sağlar. Disklere bölüştürme işlemi diskten diske yedekleme uygulamalarında fazladan iş çıkartılmasında yararlı olur. Aynı zamanda, eğer RAID 1 veya yeterince büyük bloğa ve bölüştürme özelliğine sahip bir RAID kullanılırsa çoklu eş zamanlı rastgele erişim (örneğin çok kullanıcılı veri tabanları) gibi erişim düzeneklerinin performanslarında artış elde edilir.

 

Yapamayacakları

RAID, dizilim üzerindeki veriyi koruyamaz. Bir RAID diziliminin tek dosyalama sistemi vardır. Bu da tek bir arıza noktası oluşturur. RAID diziliminin dosyalama sistemi disk arızalarının dışında daha birçok etmenden zarar görebilir, yani RAID bu tür veri kayıplarına karşı herhangi bir koruma sağlamaz. RAID virüslerin veriye zarar vermesini önleyemez. RAID sistemin çökmesine engel olamaz. RAID verinin kullanıcı tarafından yanlışlıkla değiştirilmesi veya silinmesine engel olamaz. RAID verinin dik veya başka bir donanım parçasında meydana gelen arıza nedeniyle zarar görmesini engelleyemez. RAID veriyi yangın gibi insan hataları nedeniyle meydana gelen olumsuz durumlara veya sel gibi tabii afetlere karşı koruyamaz. Verinin korunması için mutlaka DVD, bant veya harici hard disk gibi çıkartılabilir bir ortamda yedeklenmesi ve farklı bir lokasyonda saklanması gerekir. RAID meydana gelen olumsuz bir olayın veri kaybına neden olmasını tek başına önleyemez. Yıkım kaçınılmazdır, fakat yedekleme sayesinde yıkım geldiğinde veri kaybını önlemek mümkün olabilir.

RAID yıkımdan kurtulmayı kolaylaştırmaz. Tek bir diskle çalışılıyorsa, bu diske erişim birçok işletim sisteminde gömülü halde bulunan jenerik ATA veya SCSI sürücüsü ile gerçekleştiriliyordur. Yine de RAID kontrol birimleri çoğunlukla özel sürücülere gereksinim duyar. Tek bir disk üzerinde jenerik kontrol birimleri ile çalışan kurtarma araçları RAID dizilimlerindeki veriye erişebilmek için özel sürücülere gereksinim duyarlar. Eğer bu kurtarma araçları yeterince iyi kodlanmamışsa ve ilave sürücülerin kullanımına olanak tanımıyorsa, o zaman RAID dizilimi kullanılan o kurtarma araçlarına erişim izni vermeyecektir.

RAID her türlü uygulamada büyük performans artışları sağlamaz. Bu ifade özellikle tipik masa üstü ve oyun uygulamaları için geçerlidir. Masa üstü uygulamalarının ve oyunların çoğunluğu tampon bellek stratejisine ağırlık verir ve performansı diskten (veya disklerden) bekler. Sürdürülebilir ham transfer hızının artırılması masa üstü kullanıcılara ve oyun amaçlı kullananlara oldukça küçük kazanç sağlar, çünkü zaten çalışırken erişim sağladıkları dosyaların çoğunluğu küçük dosyalardır. RAID 0 kullanarak disk bölüştürmek tampon bellek ve arama performansını değil lineer transfer performansını artırır. Sonuç olarak, RAID 0 kullanılarak gerçekleştirilen disk bölüştürme, arada sırada istisnaları görülse de pek çok masa üstü uygulaması ve oyunda hemen hemen hiç bir performans artışı getirmez. Yüksek performans amaçlayan masa üstü uygulayıcıların ve oyuncuların RAID 0 ile çalışan iki tane daha yavaş / küçük disk yerine bir tane daha büyük ve daha hızlı aynı zamanda pahalı disk edinmeleri doğru olur. En büyük, en yeni ve en kapasiteli diskler bile RAID 0’da çalıştırıldığında genel performans %10’dan daha fazla artmaz, hatta bazı durumlarda özellikle oyunlarda performansta düşüş bile gözlenebilir.

RAID yeni bir sisteme geçmiş değildir. Eğer tek bir disk kullanılıyorsa, diski yeni bir sisteme geçirmek nispeten basit bir işlemdir. Yapılacak iş diski aynı arayüze sahip olan yeni sisteme bağlamaktır. Fakat RAID dizilimi kullanılıyorsa bu işlem o kadar da kolay değildir. Dizilimi başarıyla kurarak işletim sisteminin erişimine sunabilmek için RAID BIOS, dizilim üyelerinden yardımcı verileri okuyabiliyor olmalıdır. RAID kontrol birimlerinin üreticileri yardımcı verileri için değişik formatlar (aynı üreticinin değişik kontrol birimi ailelerine ait ürünleri bile zaman zaman kendi aralarında uyumsuzluk gösterebiliyor) kullandıklarından, bir RAID dizilimini bir başka kontrol birimine aktarmak hemen hemen imkânsızdır. RAID dizilimini bir başka sisteme geçirilirken kontrol biriminin de beraber geçirilmesi için plan yapılmalıdır. Ana karta gömülü RAID kontrol birimlerin popülaritesi arttıkça bu işlemin yapılması gittikçe daha zor bir hale gelmektedir. Genellikle RAID dizilim üyelerini ve kontrol birimlerini birlikte taşımak mümkün olmakatadır ve Linux ile Windows Sunucu Ürünlerindeki yazılım RAID’i bu kısıtlamadan etkilenmiyor, fakat yazılım RAID’inin de başka kısıtları (çoğunlukla performans ile ilgili) var.

 

Linear Mode

-İki yada daha fazla disk tek bir parça olarak birleştirilir. Diskler birbirinin ardısıra eklenmiş gibi calışırlar yani ilk önce birinci kısım dolacak ardından ondan sonra gelen ve sırayla digerleri. Bu kurulumda disklerin eşit olması da gerekmez.

– Bu tür kurulumda güvenirlik (redundancy) yoktur. Eğer bir diskinizi çuvallarsa (crash) büyük ihtimalle tüm bilgilerinizi kaybedersiniz. (Eğer şanslı iseniz bir miktar bilgi kurtarmanız olası.)

Okuma ve yazma performansı kullanım yoğunluğuna bağlıdır. Aynı anda birinci ve ikinci kısımlardaki dosyalara ulaşma istegi olduğu takdir performans kazancı görülebilir.

Raid 0

-Bu mod aynı zamanda şeritli (stripe) olarak da bilinir. Linear kuruluma benzer önemli farkı okuma ve yazmanın paralel halde olmasıdır. Bu nedenle birleştirilecek diskler (bölümlemeler ) yaklaşık aynı boyutta olmalıdır. Tüm işlemler paralel gerçekleş- tiğinden hepsi aynı anda dolar.

– Bu kurulum tipinde de güveninirlik yoktur. Üstelik bir diskin çuvallaması durumunda bilgilerin disklere şeritler halinde yazılmasından dolayı hiç bir şekilde geriye kalan disklerden bilgi kurtarmak mumkun olmayacaktır.

– Tum okumalar ve yazmalar tum diskler üzerinde paralel yürüdüğünden performans yüksektir. Genelde raid 0 performans amaçlandığında kullanılır. Eğer bus ve diskler yeterince iyiyse S * P MB/sec yakın performans elde edilir.

Raid 1

– Güvenirlik ilk olarak bu modda başlar. Raid-1 iki yada daha fazla diskle ve istenirse yedek disklerle kullanılabilir. Bu kurulumun esprisi disklerdeki bilginin diğer disklerde yansılanmasıdır (mirror) . Disklerin boyutlarının mümkün olduğunca eşit olduğu bu kurulumda raid device’ın boyu en küçük disk kadar olcaktır.

– Eğer N-1 sayıda disk iptal edildiğinde (çıkarılma veya bozulma) , tüm bilgiler aynı şekilde erişilebilir durumda olacaktır. Eğer yedek diskler bulunuyorsa ve eğer sistem çalışabilir durumda ise ( bir crash’den sonra SCSI yada IDE bus çalışır durumda ise kilitlenmemişse) yansının yeniden oluşturulması anında başlar.

– Okuma performansı S * P kadar çıkabilir, yazma ise daha düşüktür. Okuma paralel olarak bir kaç diskten yapilabilirken, yazma sırasında disk sayısı kadar tekrarlama yapılmaktadır.

Raid 4

– Bu cok sık kullanılan bir kurulum değildir. Üç yada daha fazla diskle yapılır. Disklerin tümden yansılanması yerine, bir disk üzerinde eşlik bilgisi (parity information) tutulur, geri kalan kısmı raid 0 gibidir. Bir disk eşlik için ayrıldığından raid’in boyutu (S -1 ) * K ( K = en Küçük diskin boyutu) kadar olacaktır ve en uygunu yakın boyutta diskler kullanmaktır.

– Eğer bir disk çuvallarsa eşlik bilgisi yeniden oluşturulmasını sağlar. Eğer iki disk göçerse tüm bilgi gider.

– Bu kurulumun pek fazla kullanılmamasının sebebi eşlik bilgisinin tek bir diskte bulunması ve her yazım sırasında güncellenmesinin performans darboğazı oluşturması. Eğer yavaş diskleriniz ve bir de çok hızlı diskiniz varsa kullanabilirsiniz.

Raid 5

– Bu belki de en kullanışlı raid seviyesidir. Pek çok diski, bir tane şeklinde kullanmak ve bu sırada güvenirliği muhafaza etmek için uygun bir moddur. Raid-5 3 veya daha fazla diskle ve yedek disklerle kullanılabilir. Oluşan raid-5 device’ın boyutu tıpkı raid-4’ki gibi (S -1)* K kadar olacaktır. Raid 4 ile Raid 5 arasındaki önemli fark eşlik bilgisinin Raid 5 de diskler arasında uygun olarak dagıtılmasıdır.

– Eger disklerden biri çuvallarsa tüm bilgi kurtarılır olacaktır. Eğer yedek diskler varsa yeniden yapılanma (reconstruction) derhal başlıyacaktır. Eğer iki diskin başına gelirse kurtarma şansı yoktur.

– Performans hem okuma hem de yazma olarak artması beklenir. Ne kadar olduğu ayrıca CPU ve Bus’a çok bağlıdır.

Genel Ayarlar Raid Kurulumu!

Raid kurarken aşagıdakilere ihtiyacınız olacak.

2.2.x serisinde yada en son 2.0.x kernel
Güncel RAID yaması
Raid Araçları
Sabır, kafeinli içecekler, tekrar okumlar, liste takipleri, listeye sorular.
Tum gereken yazılımlar ftp://ftp.fi.kernel.org/pub/linux altında bulunur (ama siz önce yakındaki bir yansıya bakın) . Raid Araçları ve yamalar daemons/raid/alpha altındadır. Kerneller kernel altdizininde bulunur.

İlk olarak çekirdeği uygun yamayla yamayın ve RAID desteğiyle birlikte derleyip kurun. (Bu kısımlarda sorun yaşarsanız once referanslarda verilen listenin archivelerini karıştırın, eğer çözüm bulamazsanız listeye sorun. En iyisi bu işlere soyunurken listeye üye olmaktır. Bir süre izlemek epey fikir sahibi olmanızı sağlar. Hangi çekirdeği neden tercih etmeniz gerektiği gibi tecrübe gerektiren bilgilere de ulaşmış olursunuz)

Daha sonra Raid Aracları (raidtools) paketini kurun. Eğer reboot ederseniz, açıldıktan sonra /proc/mdstat diye bir dosyanızın olması lazım. Bundan sonra en yakın arkaşınız o dosya olacak. İçeriğini
cat /proc/mdstat
diyerek bir görün. Çıktısı hangi raid seviyelerinin olduğunu gösterecektir.
Raidde kullanacağız disk bölümlemelerini yaratın. 

 

İlgili Kaynaklar:

http://www.chip.com.tr/konu/RAID-ile-ilgili-bilmeniz-gerekenler_9203.html

http://www.bilgiportal.com/v1/idx/12/1935/Donanm/makale/Raid-Nedir.html

http://www.thgtr.com/storage/20070722/index.html




Bir Cevap Yazın