RAID (Redundant Array of Independent Disks), birden çok diski tek bir depolama birimi gibi çalıştıran yapılandırmadır. İşletim sistemi arkada kaç disk olduğunu bilmez; karşısında tek bir sürücü görür. Amaç seviyeye göre değişir: veriyi disklere bölüp hızı artırmak, aynı veriyi birden çok diske yazıp arızaya dayanıklılık kazanmak ya da eşlik (parity) bilgisiyle bu ikisi arasında bir denge kurmak.
Sunucu kiralarken ya da fiziksel makine yapılandırırken karşınıza çıkan “RAID 1 mi RAID 10 mu” sorusunun cevabı, aslında iki şeyin arasında yaptığınız seçimdir: kapasite ve güvenlik. Her seviye bu ikisinden birini diğerine feda eder; bedava bir seçenek yoktur.
Aşağıda RAID 0, 1, 5, 6 ve 10 seviyelerini tek tek ele alacak, donanımsal ve yazılımsal RAID farkını netleştirecek, RAID 5’in neden düşünüldüğünden riskli olduğunu ve NVMe SSD’lerin bu denklemi nasıl değiştirdiğini anlatacağız. Ve bir cümleyi baştan söyleyelim, çünkü sayfanın en önemli bilgisi bu: RAID yedekleme değildir.
RAID Neyi Çözer, Neyi Çözmez?#
Tek diskli bir sunucuda disk arızalandığında iki şey birden olur: hizmet durur ve veri gider. RAID bunlardan yalnızca birincisini hedefler. Doğru yapılandırılmış bir dizide disk öldüğünde sunucu çalışmaya devam eder, oyuncular oynamayı sürdürür, siz de arızalı diski uygun bir zamanda değiştirirsiniz.
RAID’in tüm seviyeleri üç temel tekniğin karışımıdır:
- Şeritleme (striping)
- Veri parçalara bölünüp sırayla farklı disklere yazılır. Aynı anda birden çok diskten okuma yapılabildiği için hız artar. Tek başına hiçbir koruma sağlamaz.
- Aynalama (mirroring)
- Aynı veri iki (veya daha fazla) diske birebir yazılır. Bir disk ölse bile diğerinde tam kopya durur. Bedeli kapasitenin yarısıdır.
- Eşlik (parity)
- Verinin yanına, kaybolan parçayı matematiksel olarak yeniden üretmeye yarayan bir kontrol bilgisi yazılır. Aynalamaya göre çok daha az kapasite harcar ama her yazma işleminde ek okuma ve hesaplama gerektirir.
Bunların hiçbiri “veriyi saklamak” işini yapmaz. RAID, o an çalışan disklerin bir arızaya dayanmasını sağlar. Verinin geçmişini tutmaz, yanlış bir işlemi geri almaz, başka bir lokasyona kopya çıkarmaz.
RAID Seviyeleri Tek Tek#
RAID 0 — şeritleme, koruma yok#
En az 2 disk gerekir. Kapasitenin tamamı kullanılabilir: 4 × 2 TB disk 8 TB verir. Okuma ve yazma hızı disk sayısıyla neredeyse doğrusal artar. Buraya kadar kulağa harika geliyor.
Sorun şu: hiçbir arızaya dayanmaz. Dahası, tek diskten daha risklidir. Veri tüm disklere bölünmüş durumdadır; herhangi biri öldüğünde dizinin tamamı okunamaz hâle gelir. Dört diskli bir RAID 0’da arıza ihtimali, tek diske göre dört katına çıkar. Kaybedilmesi gerçekten sorun olmayan geçici veriler dışında sunucuda yeri yoktur.
RAID 1 — aynalama#
En az 2 disk. Kullanılabilir kapasite tek diskin boyutu kadardır, yani yüzde 50. Bir disk arızasına dayanır. Okuma iki diskten paralel yapılabildiği için hızlanır; yazma tek disk hızındadır, çünkü aynı veri iki yere birden yazılır.
Basit, öngörülebilir ve çok sağlamdır. Disk öldüğünde yeniden yapılandırma sadece “eş diskten kopyala” işlemidir; eşlik hesabı yoktur, diğer diskleri baştan sona taramak gerekmez. İki diskli sunucularda tartışmasız doğru tercihtir.
RAID 5 — dağıtılmış eşlik#
En az 3 disk gerekir. Kullanılabilir kapasite (N-1) × disk boyutudur; 4 × 2 TB ile 6 TB elde edersiniz. Tek bir disk arızasına dayanır. Okuma performansı iyidir, ama yazma tarafında ciddi bir bedel vardır: her küçük yazma için eski veri ve eski eşlik okunur, yeni eşlik hesaplanır, ikisi geri yazılır. Bu dört adımlı döngüye yazma cezası denir.
Kapasite verimliliği yüksek olduğu için uzun yıllar varsayılan tercih olarak kullanıldı. Bugün özellikle büyük disklerde önerilmiyor; sebebini aşağıda ayrı bir başlıkta açıklıyoruz.
RAID 6 — çift eşlik#
En az 4 disk. Kullanılabilir kapasite (N-2) × disk boyutu. İki diskin aynı anda arızalanmasına dayanır — asıl değerli özelliği budur, çünkü bir disk öldükten sonra yeniden yapılandırma sırasında ikinci bir arıza yaşansa bile veri kaybı olmaz. Yazma cezası RAID 5’ten daha ağırdır (iki ayrı eşlik hesaplanır).
Büyük kapasiteli yedek ve arşiv depolarında mantıklıdır. Yoğun rastgele yazma yapan bir veritabanı ya da oyun sunucusu için uygun değildir.
RAID 10 — aynalanmış çiftlerin şeritlenmesi#
En az 4 disk (çift sayı olmalı). Kullanılabilir kapasite yüzde 50. Çalışma mantığı basittir: diskler ikişerli aynalı çiftlere ayrılır, sonra bu çiftler şeritlenir. Yani hem RAID 1’in koruması hem RAID 0’ın hızı vardır.
Her çiftten birer disk ölse bile dizi ayakta kalır; ama aynı çiftin iki diski birden ölürse veri gider. Eşlik hesabı olmadığı için yazma cezası düşüktür ve yeniden yapılandırma yalnızca ilgili çiftin eş diskinden kopyalamadır — tüm diziyi okumak gerekmez, süre kısadır, risk düşüktür.
RAID Seviyeleri Karşılaştırma Tablosu#
| Seviye | En az disk | Kullanılabilir kapasite | Dayandığı arıza | Okuma | Yazma | Tipik kullanım |
|---|---|---|---|---|---|---|
| RAID 0 | 2 | %100 (N × disk) | Yok | Çok yüksek | Çok yüksek | Geçici veri, önbellek, render alanı |
| RAID 1 | 2 | %50 (1 × disk) | 1 disk | Yüksek | Tek disk seviyesi | İki diskli sunucular, sistem diski |
| RAID 5 | 3 | (N-1) × disk | 1 disk | Yüksek | Düşük (yazma cezası) | Okuma ağırlıklı dosya sunucusu |
| RAID 6 | 4 | (N-2) × disk | 2 disk (eşzamanlı) | Yüksek | Daha düşük | Arşiv, yedek deposu, büyük diziler |
| RAID 10 | 4 | %50 (N/2 × disk) | Her çiftten 1 disk | Çok yüksek | Çok yüksek | Veritabanı, oyun sunucusu, genel amaç |
Tabloyu tek cümleye indirgemek gerekirse: kapasite istiyorsanız eşlik tabanlı seviyeler (5 ve 6), performans ve hızlı toparlanma istiyorsanız aynalama tabanlı seviyeler (1 ve 10). Ortada bir yerde durmak isteyenlerin çoğu bir süre sonra RAID 10’a geçiyor.
Donanımsal RAID ve Yazılımsal RAID Farkı#
Diziyi kimin yönettiği önemlidir. İki yaklaşım var, ikisinin de yeri var.
Donanımsal RAID, kendi işlemcisi ve önbelleği olan ayrı bir denetleyici kartıyla çalışır. İşletim sistemi tek bir disk görür, eşlik hesabı karta yaptırılır. Pil ya da flash destekli yazma önbelleği (BBU), yazma gecikmesini belirgin biçimde düşürür ve elektrik kesintisinde önbellekteki veriyi korur. Buna karşılık kartın kendisi tek arıza noktasıdır ve dizi meta verisi karta özgüdür: kart bozulursa çoğu zaman aynı model ve benzer firmware’li bir kart bulmanız gerekir.
Yazılımsal RAID ise işi işletim sistemine bırakır. Linux’ta mdadm, Windows’ta Depolama Alanları (Storage Spaces), ayrıca ZFS ve btrfs gibi dosya sistemlerinin kendi çözümleri. Modern işlemciler eşlik hesabını gürültü çıkarmadan yapar, üstelik diskleri söküp başka bir makineye takabilirsiniz — dizi orada da tanınır. Zayıf tarafı, pil destekli bir yazma önbelleğinin olmamasıdır; bunu telafi etmek için kesintisiz güç kaynağı ve güç kesintisi koruması (PLP) olan kurumsal SSD’ler kullanılır.
mdadm veya ZFS tarafına geçin.RAID 5’in Yeniden Yapılandırma (Rebuild) Riski#
Bu konu, RAID 5’in itibarını değiştiren şeydir ve çoğu kişi ancak başına geldikten sonra öğrenir.
Bir disk arızalandığında RAID 5 hala çalışır ama artık korumasızdır (degraded durum). Diski değiştirdiğinizde dizi, kaybolan veriyi yeniden üretmek için kalan tüm disklerin her sektörünü baştan sona okumak zorundadır. Sorun burada başlıyor:
- Süre uzundur. Büyük disklerde yeniden yapılandırma saatler, bazen günler sürer. Bu sürenin tamamında dizi tek bir ek arızaya bile dayanamaz.
- Yük ağırdır. Diskler bu iş boyunca sürekli ve yoğun biçimde okunur. Bir diskin arızalanma ihtimali, tam da böyle bir yük altındayken en yüksektir.
- Diskler akrabadır. Aynı anda alınmış, aynı partiden çıkmış, aynı süre boyunca aynı yükü görmüş sürücülerden söz ediyoruz. Biri öldüyse diğerinin de ömrünün sonuna yaklaşmış olması sürpriz değildir.
- Tek bir okunamayan sektör yeter. Yeniden yapılandırma sırasında kalan disklerden birinde düzeltilemeyen bir okuma hatası çıkarsa işlem durabilir ve dizi kurtarılamaz hâle gelebilir.
RAID 10’da bu sorunların hiçbiri yoktur: yeniden yapılandırma yalnızca eş diskten kopyalamadır, diğer çiftler işin içine girmez, süre çok daha kısadır. RAID 6 ise ikinci bir arızayı tolere ederek riski kapatır. Bu yüzden bugün büyük diskli sistemlerde RAID 5 önerilmiyor; ya RAID 6’ya ya RAID 10’a çıkılıyor.
NVMe SSD Çağında RAID Mantığı#
RAID kavramı, tek bir diskin saniyede yüz civarı rastgele işlem yapabildiği dönemde şekillendi. O dünyada “hız için RAID” son derece mantıklıydı. NVMe SSD’ler bu denklemi baştan yazdı.
Bugün tek bir kurumsal NVMe SSD, bir oyun sunucusunun ya da orta ölçekli bir veritabanının isteyebileceğinden kat kat fazla rastgele işlem kapasitesi sunar. Dolayısıyla RAID’in gerekçesi büyük ölçüde performanstan kesintisizliğe kaydı. Değişen üç şey daha var:
- Denetleyici kartı darboğaza dönüşür. NVMe sürücüler doğrudan PCIe hatlarına bağlanır. Klasik bir SAS/SATA RAID kartını araya koymak, gecikmeyi düşürmek yerine artırır. NVMe dizilerde yazılımsal RAID ve ZFS bu yüzden standart hâle geldi.
- Eşlik yazması SSD’yi yorar. RAID 5 ve 6’nın oku-değiştir-yaz döngüsü, SSD tarafında yazma çoğalmasına (write amplification) yol açar. Ömür açısından aynalama tabanlı seviyeler daha nazik davranır.
- Aynı yaşta ölme riski gerçektir. Aynalanmış iki SSD birebir aynı yazma yükünü görür, dolayısıyla aynı hızda yıpranır. Mümkünse farklı parti ya da farklı üretim tarihli sürücüler kullanmak bu ihtimali dağıtır.
Pratik sonuç: NVMe tabanlı bir sunucuda RAID 1 (iki disk) ya da RAID 10 (dört ve üzeri disk) neredeyse her senaryo için doğru cevaptır. Zaten mekanik disk kullanmamak gerektiğini de baştan söyleyelim — chunk okuma yazma gecikmesi ve veritabanı işlem süreleri doğrudan disk gecikmesine bağlıdır ve bu konuda NVMe ile arasında kapatılamaz bir fark vardır. Donanım seçiminin tamamı için sunucu donanım seçimi sayfasına bakın.
RAID Yedekleme Değildir#
Bu başlığı büyük harflerle yazmak isterdik. Destek taleplerinde gördüğümüz en pahalı yanlış anlama burada: “Sunucum RAID 10’da, yedeğe gerek yok.”
RAID tek bir arıza türüne karşı korur — diskin fiziksel olarak bozulmasına. Aşağıdakilerin hiçbirine karşı korumaz, çünkü hepsi geçerli bir yazma işlemi olarak tüm disklere anında yansır:
| Olay | RAID korur mu? | Neden |
|---|---|---|
| Disk fiziksel arızası | Evet | RAID’in tek görevi budur |
| Yanlışlıkla dosya/dünya silme | Hayır | Silme işlemi tüm disklere anında yansır |
| Fidye yazılımı şifrelemesi | Hayır | Şifreli veri geçerli bir yazma sayılır |
| Bozuk güncelleme, hatalı eklenti | Hayır | Bozulmuş kayıt her diskte aynıdır |
| Denetleyici veya anakart arızası | Hayır | Dizinin tamamı erişilemez olabilir |
| Yangın, su baskını, hırsızlık | Hayır | Tüm diskler aynı kasada |
Yanlış komut (rm -rf) | Hayır | Geri alma diye bir şey yoktur |
Doğru kurulum şudur: RAID kesintisizlik için, yedek veri kaybına karşı, ikisi birbirinin yerine geçmez. Yedeği farklı bir makinede ve tercihen farklı bir lokasyonda tutun, geri yükleme denemesini gerçekten yapın. Test edilmemiş yedek, yedek değildir. Otomatikleştirmek için cron ile zamanlanmış görev kurmanız yeterli.
Oyun Sunucusu ve Veritabanı İçin Doğru Tercih#
Teoriyi bir kenara bırakıp somut senaryolara bakalım.
Minecraft ve benzeri oyun sunucuları. Buradaki disk yükü büyük dosya aktarımı değil, çok sayıda küçük ve rastgele okuma yazmadır: chunk yükleme, oyuncu verisi kaydetme, periyodik dünya kaydı. Belirleyici olan aktarım hızı değil gecikmedir. Bu yüzden RAID 5’in yazma cezası burada doğrudan takılmaya dönüşebilir. Doğru tercih NVMe SSD üzerinde RAID 1 ya da RAID 10’dur. Diskteki sıkışıklığın oyuna nasıl yansıdığını disk doluluğu sayfasında ayrıntılandırdık.
Veritabanı sunucuları. MySQL, MariaDB ve PostgreSQL yoğun rastgele yazma üretir; işlem günlüğü (WAL/redo) sürekli diske iner. Eşlik tabanlı seviyeler bu profilde en kötü performansı verir. Standart öneri RAID 10’dur. Minecraft eklentilerinin veritabanı kullanımı için MySQL bağlama sayfasına bakabilirsiniz.
Yedek ve arşiv depoları. Yazma seyrek, kapasite önemli, gecikme önemsiz. RAID 6 burada anlamlıdır: kapasite verimliliği yüksektir ve uzun yeniden yapılandırma süresi boyunca ikinci bir arızaya dayanır.
| Senaryo | Önerilen seviye | Disk | Gerekçe |
|---|---|---|---|
| Oyun sunucusu (2 disk) | RAID 1 | NVMe SSD | Düşük gecikme, basit ve hızlı rebuild |
| Oyun sunucusu / genel amaç (4+ disk) | RAID 10 | NVMe SSD | Yüksek yazma performansı, kısa rebuild |
| Veritabanı sunucusu | RAID 10 | NVMe SSD (PLP’li) | Rastgele yazma ağırlıklı yük |
| Yedek / arşiv deposu | RAID 6 | Kapasite odaklı | Kapasite verimliliği, çift arıza toleransı |
| Geçici işlem alanı | RAID 0 | NVMe SSD | Yalnızca kaybı önemsiz veri için |
Bir VDS kiralıyorsanız RAID seviyesini siz seçmezsiniz; sağlayıcı belirler ve siz sanallaştırılmış tek bir disk görürsünüz. Yine de sormaya değer: diskler NVMe mi, dizi hangi seviyede, disk arızasında müdahale ne kadar sürüyor. Seviyeyi kendiniz belirlemek istiyorsanız fiziksel makine gerekir; ikisi arasındaki farkı VDS mi dedicated mi sayfasında karşılaştırdık. Fiziksel sunucu tarafındaki yapılandırmalar için dedicated sunucu seçeneklerine bakabilirsiniz.
RAID Durumunu İzleme ve Disk Arızasında Ne Yapmalı?#
Kurulan ve unutulan bir dizi, bir gün sessizce korumasız kalır. Şöyle ki: ilk disk aylar önce ölmüştür, kimse fark etmemiştir, ikinci disk öldüğünde ise iş işten geçmiştir. Bu yüzden izleme, RAID kurmanın ayrılmaz parçasıdır.
# Linux yazilimsal RAID (mdadm) - dizinin anlik durumu
cat /proc/mdstat
# md0 : active raid10 nvme0n1p1[0] nvme1n1p1[1] nvme2n1p1[2] nvme3n1p1[3]
# 3906764800 blocks super 1.2 512K chunks 2 near-copies [4/4] [UUUU]
# ^^^^^ ^^^^^^
# [4/4] ve [UUUU] = tum diskler saglikli
# [4/3] ve [UU_U] = bir disk dizi disinda
# Ayrintili durum
sudo mdadm --detail /dev/md0
# Yeniden yapilandirma ilerlemesini canli izle
watch -n 5 cat /proc/mdstat
# Yeni bir RAID 1 dizisi olusturma ornegi
sudo mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/nvme0n1p1 /dev/nvme1n1p1
# Arizali diski dizi disina alma ve cikarma
sudo mdadm --manage /dev/md0 --fail /dev/nvme1n1p1
sudo mdadm --manage /dev/md0 --remove /dev/nvme1n1p1
# Yeni diski ekleme (rebuild otomatik baslar)
sudo mdadm --manage /dev/md0 --add /dev/nvme1n1p1
Diskin ölmeden önce haber vermesi de mümkündür. SMART verileri, özellikle SSD’lerde ömür ve hata sayaçları konusunda oldukça açıklayıcıdır:
# SATA/SAS disk saglik durumu
sudo smartctl -a /dev/sda
# NVMe SSD icin ozel sayaclar
sudo smartctl -a /dev/nvme0n1
sudo nvme smart-log /dev/nvme0n1
# Bakilacak degerler:
# percentage_used -> yazma omrunun yuzde kaci tuketilmis
# media_errors -> 0 olmali
# critical_warning -> 0 olmali
# power_on_hours -> diskin yasi
# Kisa saglik testi baslat
sudo smartctl -t short /dev/nvme0n1
# Windows tarafi - fiziksel diskler ve saglik durumu
Get-PhysicalDisk | Format-Table FriendlyName, MediaType, HealthStatus, OperationalStatus, Size
# Depolama Alanlari (Storage Spaces) sanal diskleri
Get-VirtualDisk | Format-Table FriendlyName, ResiliencySettingName, HealthStatus, OperationalStatus
# Disk basina hata sayaclari
Get-PhysicalDisk | Get-StorageReliabilityCounter | Format-Table DeviceId, Temperature, ReadErrorsTotal, WriteErrorsTotal, Wear
İzlemenin en kritik kısmı ise bildirimdir. mdadm arıza durumunda e-posta gönderebilir; donanım denetleyicilerinin de kendi izleme araçları vardır. Bunları merkezî bir sistemle birlikte kullanmak isterseniz sunucu izleme ve monitoring sayfasındaki yaklaşımı uygulayabilirsiniz.
Özetle#
RAID, birden çok diski tek birim gibi çalıştırarak ya hız kazandırır ya arızaya dayanıklılık sağlar. RAID 0 hız verir, koruma vermez. RAID 1 iki diskle basit ve sağlam bir koruma kurar. RAID 5 kapasite açısından cazip görünür ama yeniden yapılandırma riski yüzünden artık önerilmez. RAID 6 çift arızaya dayanır, arşiv için uygundur. RAID 10 ise performans, koruma ve hızlı toparlanma dengesiyle sunucularda en çok tercih edilen seviyedir.
NVMe SSD çağında RAID’in gerekçesi büyük ölçüde değişti: artık asıl mesele hız değil, bir disk öldüğünde hizmetin kesilmemesi. Bu yüzden iki diskli sistemlerde RAID 1, dört ve üzeri diskli sistemlerde RAID 10 neredeyse her senaryoda doğru cevaptır. Donanımsal kart yerine mdadm ya da ZFS tarafına bakmak da NVMe’de artık istisna değil, kural.
Ve tekrar: RAID yedekleme değildir. Sildiğiniz dosyayı geri getirmez, şifrelenen veriyi kurtarmaz, yanan kasadan bir şey çıkarmaz. Dizinizi kurun, izleyin, arızada hızlı davranın — ama yedeğinizi de her zaman ayrı bir yerde tutun.