Sanallaştırma ve RAID

RAID işlemi birçok açıdan sunucularda korkulan bir çözümdür. RAID ile ilgili en çok korkulan şey veri kurtarmada karşılaşılacak maliyet ve problemlerdir. Bu konuya daha fazla değinmeden önce öncelikle RAID'in ne olduğunu daha iyi anlamak gerekiyor.

RAID ( Redundant Array of Independent Disks ) basitçe açıklanacak olursa birçok diskin sanal olarak belli özelliklere sahip tek bir disk olarak çalışmasıdır. İki türlü RAID çözümü vardır. Sofware ( SW RAID ) ve Hardware ( HW RAID ). Aslında ikiside donanımsal olarak yapılır, software RAID çözümünde anakartın üzerinde hali hazırda gelen trafikten sorumlu I/O Hub denilen çipin içindeki özelliği ve işlemcinin işlem kapasitesini kullanarak yapılan RAID çözümüdür. HW RAID ise ayrıca takılan ve bu iş için özel olarak üretilmiş RAID kartları ile yapılan uygulamalara denir.

SW RAID kesinlikle sunucu sektöründe uygulanmaması gereken bir çözümdür. RAID ile ilgili bütün işlemlerde sunucu ve disk trafiğinden sorumlu basit bir disk üzerinden yapılan bu işlem sunucu disk işlem trafiğini kaldıracak bir yapı için tasarlanmamıştır.

HW RAID ise kendi raid kartı, raid işlemcisi ve raid belleği ile sistemin geri kalanından bağımsız bir iç bilgisayar gibi çalışır. Bu yapının amacı daha üst merci olan sunucu anakartına,işlemcisine ve işletim sistemine istenen veriyi en hızlı şekilde ulaştırmaktır.

Raıd türlerine göre hız / güvenlik kombinasyonları yapabilirsiniz.
  • RAID0: İki veya daha fazla diski tek diskmiş gibi çalıştırabilir. RAID0 mantığında bir veri bloğunu disk sayısına bölerek her diske bir parçasının yazılması ile hızı yakalayabilmek vardır. Diyelimki tek bir diskinizin okuma hızı 80MB/s, 800MB'lık bir dosyayı okumanız 10sn sürer. Öte yandan bu dosya 2'ye bölünüp iki farklı diske yazılırsa ve okuma sırasında yarısı bir diskten yarısı bir diskten çekilirse iki diskin toplam okuma hızı 80+80=160MB/s olacak ve okuma süresi 5sn'ye düşecektir. Tabiki bu değerler teoridedir. Bu hızlarda yapının kalitesine göre hız düşüşleri olacaktır. RAID0'ın problemi disklerden bir tanesi göçerse bütün array ( disklerden oluşturulan virtual disk. İşletim sistemi bunu tek disk olarak görür. ) devre dışı kalır ve yedeğiniz yoksa verilerin geri dönüşünü yapamazsınız.
  • RAID1: İki veya daha fazla diskin ayna şeklinde kullanıldığı çözümdür. Bu çözümde n tane 500GB'lık diski RAID1 yaparsanız n-1 tane diskiniz uçsa bile array çalışmaya devam eder, makina durmaz, sadece array degraded olur. ( Degraded: Arrayın yapısındaki bir bozulma. ). Bozulan diskleri değiştirip rebuild yaptığınızda sisteminiz normal konuma geçip işlemeye devam eder. RAID1 hiçbir hız avantajı sağlamaz. n tane 500GB disk kullandığınızda disk kapasitenizde 1 x 500GB olacaktır.
  • RAID5: Üç veya daha fazla diskin kullanıldığı çözümdür. Bu çözümde diyelimki A-B-C diye 3 tane 500GB diskiniz olsun. Veri iki parçaya bölünür ve bu veriden parity check diye üçüncü bir veri yaratılır yani elinizde toplam 3 parça olur. Bu parçaları ayrı ayrı disklere yazar. Her verinin parity check bilgisi bir başka disktedir. Böylece 3 diskten bir tanesi çöktüğünde sistem çalışmaya devam eder ve bozulmuş diski değiştirdiğinizde sistemi tekrar normale döndürebilirsiniz rebuild işlemi ile. RAID5 RAID0 kadar okuma hızına sahiptir fakat yazma hızı RAID0'a göre çok düşüktür. Tek diske göre yinede performans kazanırsınız. Yazma hızının düşük olmasının sebebi bir bilgi arraye yazılırken parity check bilgisininde yazılıyor olmasıdır. Toplam kapasiteniz n disk için n-1 disk kadardır.
  • RAID10: RAID10, RAID1 ve RAID0'ı birleştirir. 2 katmanlı bir raid mimarisi yaratır. Minimum 4 disk ile yapılabilinir. diskler 2'lik gruplara ayrılarak 2 tane RAID1 sanal disk yaratılır sonra bu 2 sanal disk RAID0 yaratılarak bir tane RAID10 disk yaratılır. Toplam kapasiteniz 2 diskinki kadar olur fakat burda hem disk çökmesine karşı korunmuş olursunuz hemde 2 diski RAID0 yapmak kadar performanslı olur.

Öncelikle sanallaştırma yaparken bir sunucuda 3'ten fazla az yük bindiren sanal sunucu açacaksanız RAID işlemi tamamen gereksizdir. Diyelimki 4 disk ile RAID0 yapsanız bile 4 x 80MB/s okuma elde edemeyeceksiniz. Taş çatlasın 200MB/s okuma elde edebileceksiniz. Burdaki kaybınız gereksiz tabiki. İkincisi ise RAID array tek bir disk olarak görülür ve işletim sistemi tarafından buna göre işlem görür. Diyelimki bir sanal sunucunuz diske abandı, bütün disk bant genişliğini kullanmaya başladı, bütün yumurtalarınız tek sepette olunca diğer sanal sunucularda bundan etkilenir fakat sanal sunucuları ayrı ayrı disklere dağıttığınızda problemli vps sadece bulunduğu diskteki diğer vpsleri etkiler.

Öte yandan karşılaştığımız ender bir iki durumda çok güçlü vps çözümlerinde RAID0 gerekebilir. Örneğin 16GB bellekli bir makinada tek bir VPS 9GB bellek harcıyor ve ciddi disk işlemi yapıyor. Öte yandan aynı makinada müşterinin kendi satış sitesi, bir başka müşterisinin VPS makinası gibi çözümler mevcuttur. Bu 9GB'lık VPS makinasını ayrı bir dedicated makinaya alması durumunda boşa vereceği donanım ücreti ve elektrik ücretini ödemek istemez. Bu durumda daha ucuza malolacak olan bir RAID kartı ile bu vps'e ait 2 tane disk RAID0 yapılarak ciddi performans kazancı elde edilir. ( Vmware ESX ve ESXI'da istediğini büyüklükte makinalar açabilirsiniz. Performans açısından herhangi bir problem çıkarmaz. Hatta belli donanımları sadece o vps'in kullanımına sunabilirsiniz. Örneğin dedicated ağ kartı, dedicated raid kartı vb. )


Sanallaştırma ve RAID Kartı

RAID kartı özellikle siz hosting ve vps işi ile uğraşan arkadaşlar için büyük bir nimettir. Çoğu kişi RAID ile ilgili bilgiye sahip olmadığı için, ingilizcesi pek iyi olmadığından kaynak bulamayacağını düşündüğü için veya başlı başına sektörde yanlış RAID çözümü uygulamış meslektaşlarının başına gelenlerden dolayı bu parçayı tamamen göz ardı eder.

Raid kartının yaptığı en önemli şey sabit disk ile ilgili bütün işlemleri kendi üstüne alır ve işlemcinin fazladan işlem yapmasına, verilerin git gel yapmasına gerek kalmaz. Ama asıl önemli olan anakartın aşırı veri okuma sırasında oluşan darboğazlardan dolayı diskle bağlantıyı koparması sonucu oluşan vps kitlenmesini minimuma indirir. RAID kartının veri önceliği belirlemesi anakarta göre çok daha hızlı ve verimli çalışır. RAID kartı kendi biosuna, DDR2 belleğine, işlemcisine ve SATA/SAS portlarna sahiptir. İsterse yazılması gereken veriyi DDR2 belleğinde bekletip okunması gereken veriyi çeker.

Makinanızdaki diskleri RAID kartına bağlanamız demek illaki RAID yapmanız gerekiyor demek değildir. RAID kartının biosu anakartın biosundan sonra hemen karşınıza gelir. Intel RAID Kartlarında CTRL+I veya CTRL+G gibi kombinasyonlar ile biosuna girersiniz ve kolay bir arayüzde sanal disklerinizi yaratabilirsiniz. Her bir sanal diske bir tane sabit disk atarsanız RAID yapmadan raid kartının bütün nimetlerini kullanarak bir sistem kurabilirsiniz.

RAID yapıyor olun yada yapmayın yukarıda anlattıklarım aklınıza yattıysa ve bunu uygulamayı düşünürseniz bilmeniz gereken çok önemli birşey var. RAID kartları üzerlerindeki bellekleri disklere yazılacak verileri bekletmek için kullanır. Bu ciddi bir performans kazanımı sağlar, disklerin üzerindeki yük azaldığında veriler yazılır. Yazılmamış bir veriyi işletim sistemi isterse de direk belleğinden çekip verir. Fakat bu DDR2 bellek volatile memory kategorisine girer. Yani elektrik kesilirse içindeki bütün bilgiler gider. Yani yazılmayı bekleyen bir veri varsa yazılma ve veri bozulmalarına sebep olabilir. Bunu önlemenin 3 yolu vardır, birincisi elektriğin kesilmeyeceğinden emin olursunuz, ikincisi raid kartlarına takılan BBU ( Battery Backup Unit ) gibi bataryalar ile elektrik kesilmesi halinde 24 saate yakın verilerin kaybolmasını engelleyebilirsiniz. Sistem tekrar güç kazandığında ve elektrik geldiğinde verileriniz disklere düzgün bir şekilde yazılır. BBU unitesi bir raid kartı fiyatına malolur. Üçüncü seçenek ise sanal diski yaratırken Write Through / Write Back seçeneklerinin seçildiği bölümde Write Through seçeneğini seçersiniz. Bu durumda veri anında hem DDR2 belleğe hemde diske yazılır. Bu toplam performansta bekletme yapılamayacağı için biraz düşüşe sebep olabilir fakat elektrik kesintisinde veri kaybınızı engeller.

Intel RAID kartlarını neredeyse bütün desktop anakartlar ile birlikte kullanabilirsiniz. İhtiyacınız olan boş bir x8 pci express slotudur.


Sanallaştırma ve Güç Kaynağı

Aslında güç kaynakları sanallaştırma yapacak makina sahiplerinden çok dc sahiplerini ilgilendiren bir durum. Artık yedekli güç kaynakları her yerde. Bugün ATX bir kasa üzerine bile yedekli güç kaynakları satın alabileceğiniz firmalar mevcut. Bazı verimerkezleri güç kaynağının şebekeden çektiği amper üzerinden fiyatlandırma yapabiliyor. Burada güç kaynağının en önemli özelliği power factor denilen özelliktir. PF güç kaynağının şebekeden çektiği enerjiyi ne kadar kayıpla DC elektriğe çevirip makinanın parçalarını beslediğidir. ATX kasalarda bu 0.6-0.5'e kadar düşer. Bu durumda 100W enerji harcayan bileşenler şebekeden 200W enerji çekebilirler. İyi bir sunucu güç kaynağı minimum 0.8 PF'ye sahip olmalıdır. Bu değer güç kaynakları üzerinde verimlilik olarakta belirtilir. Aslında güç kaynağı sanallaştırma için değil her tür barındırma olarak kullanılan sunucu için önemli bir faktör, fakat sanallaştırma sunucuları ciddi yük bindirimi yaptığı için güç kaynağınıda en çok zorlayan kullanım türü olmakta. İkinci dikkat edilmesi gereken ise güç kaynaklarının zamanla yıprandığı ve watt kapasitelerinin düştüğüdür. Örneğin dandik bir atx kasa içindeki 300-400W güç kaynağı senede %10-20 güç kaybeder. Zaman içinde oluşan HDD bozulmaları, anakart yanmalarının ilk sebebi düzenli bir voltaj beslemesi alınamadığıdır. Güç kaybeden güç kaynağının içindeki bileşenler yıprandıkça sisteme beslenen 12v,5v ve 3.3v voltajları değişkenlik göstermeye başlar. Sunucu sistemlerin yük dengesi çok değişken olduğu için örneğin bir anda 50W güç çekerken bir anda 200W güç çekebilirken voltajların yük altındaki değişimleri çok büyük problemlere, reset atmalara, kitlenmelere ve parça bozulmalarına sebep olabilir. Özellikle sanallaştırma da bir işlemciye gelen 12v voltaj beslemesi değişken olursa işlemcide anlık problemlere sebep olabilir, buda rastgele vpslerin kitlenmesine sebep olabilir ve bunun sebebinin güç kaynağı olduğunu bulana kadar harcayacağınız iş gücü ve müşteri size 80+ kaliteli bir güç kaynağı almaktan çok daha pahalıya malolabilir. Vmware voltaj beslemelerini gösterebilmektedir. Bu durumda sık sık 12v, 5v ve 3.3v beslemeleri kontrol etmek, not etmek ve bunların aylık değişimlerini gözlemlemek güç kaynağınızın eskime durumu hakkında size bilgi verecektir.

Bir diğer dikkat edilmesi gereken husus ise güç kaynaklarının watt kapasiteleridir. Bugün neredeyse bütün güç kaynaklarının üzerine artık peak watt değerleri yazılamaktadır. Yani 400W oem bir güç kaynağı sürekli 400W beslemesi yapamaz. Genelde üzerinde ufacık yazı ile 350W continious gibi ibareler olur. 400W'ı ise sadece 60-120sn gibi bir süreç sisteme verebilir. Bir diğer faktör ise güç kaynaklarının üzerinde yazan değerler oda sıcaklığında çalışacakları değerlerdir yani 25C. Bu dış ortamın veya güç kaynağının içinden akan havanın değil güç kaynağı içindeki kapasitör vb. parçaların sıcaklığıdır. Fakat güç kaynağı 20-26C arası olan dc ortam sıcaklığında bu komponentler 50C gibi sıcaklıklarda çalışırlar ve bu watt kapasitesinde çok ciddi düşüşlere sebep olabilir. Örneğin 400W peak değerdeki bir güç kaynağı aslında sürekli 240-250W güç sağlayabilecek kapasiteye sahip olabilir çalışma koşullarında. Buna birde zamanla eskime payınıda eklerseniz aslında ATX makina olarak kullanılan sunuculardaki disk patlamaları veya anakart yanmalarının neden bu kadar sık yaşandığınıda çözmüş oluyoruz.

Kısaca i7 bir işlemci 4 disk = 600W 80+ güç kaynağı..



http://www.kuarktek.com

Kuark Bilişim Teknolojileri
Murat Özsaygılı
0532 5928847
msn: murat_ozsay@hotmail.com
e-posta: murat.ozsaygili@kuarktek.com