Bilindiği üzere linux dünyasının en güçlü olduğu alan stabilite ve performansın yanında, kuracağınız paketlerden tercih edeceğiniz sürücülere çekirdeklere kadar hemen herşey için alternatiflerin olmasıdır. Sonuçta herkes için yada herşey için en iyi diye bir şey olamayacağından, ihtiyaçlar beklentileri şekillendirir.
Bu yazımda linux için kullanabildiğimiz dosya sistemlerinden kısaca bahsetmek, ve benim için öne çıkan XFS dosya sistemini kısaca tanıtmak istiyorum. XFS dosya sistemi, ilk olarak SGI firması tarafından 1994 senesinde, yine SGI’a ait olan IRIX işletim sistemi için tasarlanmıştır. Linux’e port edilmesi 2001 yılında olup aktif olarak kullanılması 2002 yılında Gentoo linux ile başlamıştır. Bugün geldiğimiz son nokta itibari ile, XFS Centos 7 ve RedHat 7 için standart dosya sistemi olmuştur.
XFS’i güncel tüm linux türevlerinde kullanabiliriz. XFS “general purpose / çok amaçlı-genel kullanım” bir dosya sistemi olsada, özellikle büyük dosyalar ile çalışanlar için çok yüksek başarım sağlar. Medya arşivleri, büyük boyutlu grafik dosyaları, back arşivleri, sanal makina diskleri gibi dosyalar için çok iyi sonuçlar verir. Dosya isimleriniz 255 karaktere kadar uzanabilir, sürücü ve tek bir dosya başına 8 exbayte’a kadar destek verir 🙂 Her ne kadar denememiş olsada.
XFS dosya sistemini online olarak büyütebilirsiniz, ancak küçültemezsiniz ki bu durum bazı ortamlarda çok can sıkıcı olabilir. XFS yapısı gereği fragmentasyona karşı dayanıklıdır, ancak bununla birlikte gerektiğinde kullanmak için defrag araçlarına sahiptir. XFS dosya sistemi canlı olarak dump almanıza izin verir, yine restore edebilirsiniz. Bunun için kendi araçları olup 3.parti yazılımlara ihtiyacınız olmaz. Bu işlem snapshot değildir, zira dosya sistemi “freeze” edilmediği için dosyalarınız değişebilir. Snapshot desteği bulunmamaktadır.
Benim için en önemli özelliğine gelecek olursak, yeni disk oluşturmak (formatlamak) yada mevcut bir volume’ü büyütmek sırasında gösterdiği yüksek başarımdır. Şöyle bir örnek vereyim, ext4 ile formatlı 1TB lık bir volume’ü 2TB’a genişletmek istediğinizi varsayalım, diskinizde SAN fiber ile storage üzerinden gelsin ve 15k tier 1 bir pool olsun. resize2fs ile diski genişletmek istediğinizde size tavsiyem kendinize güzel bir kahve hazırlamanız ve eğlenmek için bir meşkale bulmanızdır, zira işlem 1 saate kadar uzayabileceğinden pc başında beklmek sizi ülser yapabilir, heleki aktif olarak kullanılan kritik bir disk ile çalışıyorsanız ( veri tabanı koşan bir pool gibi).
Peki bu durum XFS ile ne kadar sürüyor sizce ? Öncelikle ext4 ile 16tb’dan büyük volume oluşturmanız normal şartlar altında imkansızdır ( özel bir kernel kullanmadığınız ve riskleri göze almadığınız müddetçe) XFS’de pratik formatlayabileceğiniz alan başına bir sınırınız olmadığını yukarıda belirtmiştim, sıfırdan bir disk oluşturken, SCSI ile bağlanmış bir storage’dan gelen 40tb’lık bir diski formatlamak XFS ile sadece 1 sn sürüyor dersem ne düşünürsünüz ?
Durumun aslında ne kadar kritik olduğunu şöyle izah etmeme izin verin, diyelim ki disk alanını tükeniyor, ve bu tükenme hızı ciddi derecede yüksek. Öyleki, yoğun kullanılan bir storage’dan disk alanı ekleyerek kritik bir sürücüdeki alanı büyütmek istiyorsunuz. Ama gelin görünki, disk alanınızın genişleme hızı, ilgili diske yazım hızınızdan daha düşük 🙂 Durumun vehametini anlayabiliyor musunuz ? Bu şu demek, ext4 ile bir alanı genişletirken bile disk alanınızın olması ve uygulamanın ve sistemin çakılması söz konusu. Eğer XFS kullansaydınız böyle bir sorununuz olmayacaktı.
O yüzden özellikle lokal diskler yerine storage ile çalışılan ortamlarda, diğer bir deyişle disk genişletmenin çok sık kullanıldığı ortamlarda XFS hayatınızı ciddi şekilde kolaylaştıracaktır. SAP HANA çözümünde’de tercih edilen dosya sisteminin XFS olması sizin için tesadüf olmasın, XFS’e ne kadar güvenildiği Redhat’in Redhat Enterprise Linux 7 ile ext4’ü terk ederek XFS’e geçmesi, SAP gibi bir devin, HANA ( Suse Enterprise Linux / Redhat Enterprise Linux) çözümünde XFS kullanması, dosya sisteminin ne kadar güvenli ve performanslı olduğu konusunda fikir verecektir.
XFS tabiki bir ZFS değil, ZFS ile gelen bir çok özellikten mahrum, ancak ZFS’in linux’deki geçmişinin çok kısa olması, Oracle’ın ZFS ile ilgili planlarının ve linux’e vereceği desteğin belirsiz olması gibi nedenlerden dolayı özellikle enterprise-kurumsal ortamlarda ZFS’in yer bulması çok olası değil. (Oracle ürünleri hariç)
BTRFS olgunlaşana ve gerçek ZFS alternatifi olana kadar (bir gün olabilirse tabi) elimizdeki en iyi seçenek XFS olmaya devam edecek. Bu durum büyük diskler ve dosyalar ile çalıştığınızı düşünülerek ortaya çıkmıştır. Çok sayıda küçük dosya ile çalışmak zorundaysanız ve çok büyük sürücülere ihtiyacınız olmuyorsa ext4’ün hala çok iyi bir alternatif olduğunu ve linux sistemlerde çok iyi desteklendiğini belirtmek gerek.
Kısa yazımın sonuna geldik, teknik veriler, testler grafikler içermeyip bilgilendirme yazısı kıvamında olduğu için lütfen kusura bakmayın. Açıkcası yazmaya uzunca bir süre ara verdikten sonra, yavaş yavaş kendimi ısındırmaya çalışıyorum.
Umuyorum yazılarımın sayısı ve kalitesi zamanla artar,
Buraya kadar okuduğunuz için teşekkür ederim ( :