Glusterfs ve Heketi nedir?

GlusterFS ücretsiz ve açık kaynak kodlu bir çeşit NAS (network attached storage) olarak düşünebileceğimiz yazılım tabanlı storage çözümüdür. High availability ve disaster recovery sunması öne çıkan özelliklerindendir. Fiziksel, sanal veya bulut tabanlı sunucularda glusterfs kullanılabilir. Container teknolojilerinde persistent storage volume olarak kullanılmaktadır. Redhat tarafından Openshift üzerinde kurumsal destekli olarak sunulmaktadır.

Ana özelliği olarak kolay bir şekilde yatayda veya dikeyde kesinti gerektirmeden büyüyebilmesi gösterilebilir. Glusterfs storage katmanına ya cluster’daki sunuculara ek alan sağlanarak veya cluster’a yeni sunucu eklenerek kesintisiz şekilde büyüme sağlanabilir. Yapısı itibariyle storage katmanında yedeklilik ve yüksek erişilebilirlik imkanı sağlar.

Brick glusterfs üzerinde en temel storage birimine verilen isimdir. Volume ise birden fazla brick birimin mantıksal olarak bileşimidir. Volumeler ile sunuculara alan sağlanmaktadır. Volume çeşitleri temel olarak distributed, replicated ve striped volume olarak 3 çeşittir.

Distributed Volume
  • Distributed Volume: Bu volume tipinde örneğin bir dosya sadece bir brick volume de bulunabilir. Büyük boyutlu dosyalar saklanacaksa volume boyutları ona göre ayarlanmalıdır. Hızlı, ucuz ve yedeklilik gerektirmeyen ihtiyaçlar için kullanılır. Veri yedekliliği yoktur.
Replicated Volume
  • Replicated Volume: Distributed volume de olmayan yedeklilik gereksinimini verinin kopyasını başka brick volume üzerinde tutarak sunar. En az istenen kopya sayısı kadar brick volume bulunmalıdır. Brick volumelerden biri hata aldığında veriye erişim diğer kopya brick volume üzerinden sağlanır.
Striped Volume
  • Striped Volume: Büyük ve aynı anda çokça erişilen bir dosyanın tek bir brick üzerinde tutulması performans problemine sebep olabilir. Veriyi küçük parçacıklar halinde farklı brick volumeler üzerinde tutarak veriye olacak erişimleri dağıtır ve performans sağlar. Veri yedekliliği yoktur.

Bu temel volume tipleri dışında yukarıda belirtilen tiplerin birlikte kullanılarak oluşturulabilen distributed-replicated ve distribusted-striped volume tipleri bulunur. Glusterfs varsayılan olarak distributed volume kullanılır.

Bahsettiğimiz volume tipleri arasındaki kullanılabilir veri depolama alanı arasındaki karşılaştırma aşağıdaki gibidir. Bu karşılaştırmada replicated volume tiplerinde kopya sayısı 2 olarak alınmıştır.Görüldüğü üzere yedeklilik sağlandıkça elimizde olan veri depolama alanından kullanılabilir alan olarak daha az miktar ortaya çıkıyor. Ayrıca aşağıdaki örnekte distributed ve striped volume tipleri kullanılabilir toplam alan olarak aynı miktarı veriyor ancak striped volume 1GB’dan daha büyük dosya saklayabilecekken distributed volume en fazla 1GB büyüklüğünde dosya saklayabiliir.

Distributed: 1G +1G =2G
Replicated: (1G+1G)=1G
Striped: 1G +1G =2G
Distributed Replicated: (1G +1G)+(1G +1G)=2G
Distributed Striped: 1G +1G+1G +1G=4G

Glusterfs’in client sunucular tarafında oluşturduğumuz volume’ler nasıl kullanılabilir duruma gelecek? Glusterfs volume file storage olarak client sunucularda FUSE (filesystem in user space), NFS (network file system) ve CIFS (common internet file system) formatlarında yapılabilmektedir. Client sunucularda block ve object storage olarakta kullanılabilir. Kullanım tipi client taraftaki ihtiyaca göre değişmektedir.


Heketi, glusterfs için oluşturulmuş RESTful tabanlı volume yönetim aracıdır. Volume yönetiminin manuel biçimde değil otomasyon döngüsü içerisinde yapılabilmesine olanak sağlar. Openshift, Kubernetes gibi konteyner orkestrasyon araçlarında dinamik olarak volume yönetimini yapar. Heketi’ye bir volume isteği geldiğinde ilk olarak glusterfs cluster içinde istenilen storage ayrılır. Ayrılan storage alanı formatlanıp mount edilir ve ilgili volumeler oluşturulup start edilir.

Heketi Flow

Heketi’nin sağladığı olanak ile sistem yöneticileri glusterfs de bulunan volume, disk, trusted storage pool gibi katmanları yönetmek durumunda kalmaz. API ile harici yapılabilecek otomasyonlar içinde kolayca entegre olabilir.

Heketi üzerinde işlem yapabilmek için heket-cli tool bulunmaktadır. Bu tool heketi ile API üzerinden haberleşerek işlemlerinin yapılmasını sağlar.


Diğer yazımda heketi yapılandırmasını yaparak volume işlemleri yapacağım.

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade