Ceph (yazılım) - Ceph (software)
Orijinal yazar(lar) | Mürekkep Deposu ( Sage Weil , Yehuda Sadeh Weinraub, Gregory Farnum, Josh Durgin, Samuel Just, Wido den Hollander) |
---|---|
Geliştirici(ler) | Red Hat , Intel , CERN , Cisco , Fujitsu , SanDisk , Canonical ve SUSE |
kararlı sürüm | 16.2.4 "Pasifik" / 13 Mayıs 2021
|
depo | |
Yazılmış | C++ , Python |
İşletim sistemi | Linux , FreeBSD |
Tip | Dağıtılmış nesne deposu |
Lisans | LGPLv2.1 |
İnternet sitesi | ceph |
CEPH (belirgin / s ɛ f / ) bir bir açık kaynak yazılım (yazılımla tanımlanmış bir depolama) depolama platformu , uygular depolama nesne Örneğin dağıtık tek bir ilgili bilgisayar küme , ve nesne, 3-in-1 arabirimleri içerir blok- ve dosya düzeyinde depolama. Ceph, öncelikle tek bir hata noktası olmadan tamamen dağıtılmış çalışmayı , eksabayt düzeyine ölçeklenebilir ve ücretsiz olarak kullanılabilir hale getirmeyi amaçlar .
Ceph , ticari donanım , Ethernet IP kullanarak ve belirli bir donanım desteği gerektirmeden verileri çoğaltır ve hataya dayanıklı hale getirir . Ceph'in sistemi, çoğaltma, silme kodlaması, anlık görüntüler ve depolama klonlama gibi teknikler aracılığıyla felaket kurtarma ve veri yedekliliği sunar. Tasarımının bir sonucu olarak, sistem hem kendi kendini iyileştiren hem de kendi kendini yöneten bir sistem olup , yönetim süresini ve diğer maliyetleri en aza indirmeyi amaçlamaktadır.
Bu sayede yöneticiler, silolardan kaçınan ve depolamayı ortak bir yönetim çerçevesinde toplayan tek bir konsolide sisteme sahip olur. Ceph, çeşitli depolama kullanım durumlarını birleştirir ve kaynak kullanımını iyileştirir. Ayrıca, bir kuruluşun gerektiğinde sunucuları dağıtmasına olanak tanır.
Tasarım
Ceph beş farklı türde cin kullanır :
- Etkin ve başarısız küme düğümlerini, küme yapılandırmasını ve veri yerleştirme ve genel küme durumu hakkında bilgileri takip eden küme monitörleri ( ceph-mon ).
- Doğrudan, günlüklü disk depolaması kullanan nesne depolama aygıtları ( ceph-osd ) (v12.x sürümünden bu yana bir dosya sistemi kullanacak olan FileStore'un yerini alan BlueStore olarak adlandırılır)
- Meta veri sunucuları ( sef-mds ) o önbellek ve acente erişim inode'lar ve dizinleri bir CephFS dosya sistemi içine.
- Nesne depolama katmanını Amazon S3 veya OpenStack Swift API'leriyle uyumlu bir arabirim olarak ortaya çıkaran HTTP ağ geçitleri ( ceph-rgw )
- Küme izleme, defter tutma ve bakım görevlerini yerine getiren ve harici izleme sistemlerine ve yönetime arayüz sağlayan yöneticiler ( ceph-mgr ) (örneğin dengeleyici, gösterge panosu, Prometheus , Zabbix eklentisi)
Bunların tümü tamamen dağıtılmıştır ve aynı sunucu kümesinde çalışabilir. Farklı ihtiyaçları olan müşteriler, bunların farklı alt kümeleriyle doğrudan etkileşime girebilir.
Ceph, RAID0'ın bölümleri birden çok sabit sürücüye ayırmasına benzer şekilde, daha yüksek verim elde etmek için birden çok düğümde tek tek dosyaları şeritler . Uyarlamalı yük dengeleme desteklenir, bu sayede sık erişilen nesneler daha fazla düğüm üzerinde çoğaltılır. Eylül 2017 itibariyle, BlueStore, Ceph'in kendi depolama uygulaması olan ve dosya deposu arka ucundan daha iyi gecikme ve yapılandırılabilirlik sağlayan ve ek işleme ve önbelleğe alma katmanlarını içeren dosya sistemi tabanlı depolamanın eksikliklerinden kaçınan üretim ortamları için varsayılan ve önerilen depolama türüdür. Dosya deposu arka ucu hala yararlı ve çok kararlı olarak kabul edilir; XFS , üretim ortamları için önerilen temel dosya sistemi türüyken , üretim dışı ortamlar için Btrfs önerildi. ext4 dosya sistemleri, maksimum RADOS nesnelerinin uzunluğundaki sınırlamalardan dolayı önerilmez. BlueStore kullanılsa bile, XFS küçük bir meta veri bölümü için kullanılır.
Nesne depolama S3
Ceph, dağıtılmış nesne depolamayı uygular - BlueStore. RADOS ağ geçidi (ceph-rgw), nesne depolama katmanını Amazon S3 ile uyumlu bir arabirim olarak sunar.
Bunlar genellikle kullanım durumları için Ceph'in S3 nesne depolamasıyla ilişkilendirilen kapasitif disklerdir: Büyük Veri (veri ağı), Yedekleme ve Arşivler, IOT, medya, video kaydı, vb.
Ceph'in yazılım kitaplıkları, istemci uygulamalarına güvenilir otonom dağıtılmış nesne deposu (RADOS) nesne tabanlı depolama sistemine doğrudan erişim sağlar ve ayrıca RADOS Blok Aygıtı (RBD), RADOS Ağ Geçidi ve Ceph dahil olmak üzere Ceph'in bazı özellikleri için bir temel sağlar. Dosya Sistemi . Bu şekilde yöneticiler, depolama cihazlarını birleşik bir sistem olarak koruyabilirler, bu da verileri çoğaltmayı ve korumayı kolaylaştırır.
"Librados" yazılım kütüphaneleri de erişim sağlamak C , C ++ , Java , PHP ve Python . RADOS Gateway de bir şekilde nesne deposu ortaya dinlendirici hem doğal olarak ortaya çıkabilir arayüzü S3 ve openstack Swift API'leri.
Blok depolama
Ceph'in nesne depolama sistemi, kullanıcıların Ceph'i ince tedarikli bir blok cihazı olarak monte etmelerini sağlar . Bir uygulama bir blok cihazı kullanarak Ceph'e veri yazdığında, Ceph verileri küme boyunca otomatik olarak şeritler ve çoğaltır. Ceph en RADOS Cihazı Engelleme (RBD) ayrıca entegre Kernel tabanlı Sanal Makine (KVMs).
Bunlar genellikle veritabanları, sanal makineler, veri analitiği, yapay zeka ve makine öğrenimi dahil olmak üzere Ceph'in kullanım durumları için blok depolamasıyla ilişkilendirilen hızlı disklerdir (NVMe, SSD).
Ceph-RBD, librados arayüzünü ve CephFS dosya sistemini sağlayan aynı Ceph nesne depolama sistemi ile arayüz oluşturur ve blok cihaz görüntülerini nesneler olarak depolar. RBD, librados üzerine kurulduğundan, RBD, salt okunur anlık görüntüler ve anlık görüntüye geri dönme dahil olmak üzere libradoların yeteneklerini devralır. Ceph, görüntüleri küme boyunca şeritleyerek, büyük blok cihaz görüntüleri için okuma erişim performansını iyileştirir.
Ceph-iSCSI, herhangi bir microsoft windows ve vmware vsphere sunucusundan veya iSCSI protokolünü konuşabilen istemciden dağıtılmış, yüksek düzeyde kullanılabilir blok depolamaya erişim sağlayan bir ağ geçididir. Ceph-iscsi'yi bir veya daha fazla iSCSI ağ geçidi ana bilgisayarında kullanarak, Ceph RBD görüntüleri, isteğe bağlı olarak yük dengeli, yüksek düzeyde kullanılabilir bir şekilde erişilebilen iSCSI hedefleriyle ilişkili Mantıksal Birimler (LU'ler) olarak kullanılabilir hale gelir.
Ceph-iscsi yapılandırmasının tamamı Ceph RADOS nesne deposunda depolandığından, ceph-iscsi ağ geçidi ana bilgisayarları doğal olarak kalıcı duruma sahip değildir ve bu nedenle istendiğinde değiştirilebilir, artırılabilir veya azaltılabilir. Sonuç olarak Ceph Storage, müşterilerin emtia donanımında ve tamamen açık kaynaklı bir platformda gerçekten dağıtılmış, yüksek düzeyde kullanılabilir, esnek ve kendi kendini iyileştiren bir kurumsal depolama teknolojisi çalıştırmasını sağlar.
OpenStack , Kubernetes , OpenNebula , Ganeti , Apache CloudStack ve Proxmox Virtual Environment gibi sanallaştırma platformlarında blok cihaz sanallaştırılabilir ve sanal makinelere blok depolama sağlar .
Dosya sistemi depolama
Ceph'in dosya sistemi (CephFS), nesne depolama ve blok cihaz arayüzleri sağlayan aynı nesne depolama sisteminin üzerinde çalışır. Ceph meta veri sunucusu kümesi, dosya sisteminin dizinlerini ve dosya adlarını RADOS kümelerinde depolanan nesnelere eşleyen bir hizmet sağlar. Meta veri sunucusu kümesi genişleyebilir veya daralabilir ve verileri küme ana bilgisayarları arasında eşit olarak dağıtmak için dosya sistemini dinamik olarak yeniden dengeleyebilir. Bu, yüksek performans sağlar ve küme içindeki belirli ana bilgisayarlarda ağır yükleri önler.
İstemciler, bir Linux çekirdek istemcisi kullanarak POSIX uyumlu dosya sistemini bağlar . Daha eski bir FUSE tabanlı istemci de mevcuttur. Sunucular normal Unix arka plan programları olarak çalışır .
Ceph'in dosya depolaması genellikle kullanım durumları ile ilişkilendirilir: günlük toplama, mesajlaşma, dosya deposu ..
Tarih
Ceph başlangıçta tarafından yaratıldı Adaçayı Weil onun için doktora tezi Jack Profesör Scott A. Brandt tavsiye edildi, Mühendislik Baskın Okulu , University of California, Santa Cruz tarafından (ucsc) ve sponsor Gelişmiş Simülasyon ve Bilişim Programı (ASC ), Los Alamos Ulusal Laboratuvarı (LANL), Sandia Ulusal Laboratuvarları (SNL) ve Lawrence Livermore Ulusal Laboratuvarı (LLNL) dahil. Sonunda Ceph'in bir parçası olan ilk kod satırı, 2004 yılında Sage Weil tarafından LLNL'de bir yaz stajı sırasında, ölçeklenebilir dosya sistemi meta veri yönetimi (bugün Ceph'in MDS'si olarak bilinir) üzerinde çalışırken yazılmıştır. 2005 yılında, Scott A. Brandt tarafından başlatılan ve Carlos Maltzahn tarafından yönetilen bir yaz projesinin parçası olarak Sage Weil, Ceph adını benimseyen tamamen işlevsel bir dosya sistemi prototipi yarattı. Ceph, Sage Weil'in Kasım 2006'da biri USENIX OSDI 2006'da ve diğeri SC '06'da olmak üzere iki sunum yapmasıyla ilk kez sahneye çıktı .
2007 sonbaharında mezun olduktan sonra Weil, Ceph üzerinde tam zamanlı olarak çalışmaya devam etti ve çekirdek geliştirme ekibi, Yehuda Sadeh Weinraub ve Gregory Farnum'u içerecek şekilde genişledi. 19 Mart 2010'da Linus Torvalds , Ceph istemcisini 16 Mayıs 2010'da yayınlanan Linux çekirdek sürümü 2.6.34 ile birleştirdi. 2012'de Weil , profesyonel hizmetler ve Ceph desteği için Inktank Storage'ı yarattı .
Nisan 2014'te Red Hat , Inktank'ı satın alarak, Destek (yardım hattı) ve sürekli bakım (yeni sürümler) olan işletmeler için bir üretim sürümü haline getirmek için Ceph geliştirmesinin çoğunluğunu şirket içinde getirdi.
Ekim 2015'te, topluluğa açık kaynaklı yazılım tanımlı depolama teknolojisinin yönünü yönlendirmede yardımcı olmak için Ceph Topluluğu Danışma Kurulu kuruldu. Sözleşme danışma kurulu, Red Hat , Intel , Canonical , CERN , Cisco , Fujitsu , SanDisk ve SUSE'den kişiler de dahil olmak üzere Ceph projesine bağlı küresel BT kuruluşlarından Ceph topluluğu üyelerini içerir .
Kasım 2018'de Linux Vakfı, Ceph Topluluğu Danışma Kurulu'nun halefi olarak Ceph Vakfı'nı başlattı. Ceph Vakfı'nın kurucu üyeleri arasında Amihan, Canonical , China Mobile , DigitalOcean , Intel , OVH , ProphetStor Data Services, Red Hat , SoftIron, SUSE , Western Digital , XSKY Data Technology ve ZTE yer aldı .
Mart 2021'de SUSE, Ceph'i içeren Enterprise Storage ürününü Longhorn lehine durdurdu. ve eski Enterprise Storage web sitesi "SUSE, depolama çabalarını stratejik SUSE Enterprise Storage Müşterilerimize hizmet vermeye odakladı ve artık aktif olarak SUSE Enterprise Storage satmıyor" şeklinde güncellendi.
Yayın geçmişi
İsim | Serbest bırakmak | İlk sürüm | hayatın sonu |
kilometre taşları |
---|---|---|---|---|
argonot | 0.48 | 3 Temmuz 2012 | İlk büyük "kararlı" sürüm | |
kısa kuyruk | 0,56 | 1 Ocak 2013 | ||
Mürekkepbalığı | 0.61 | 7 Mayıs 2013 | ceph-dağıtım kararlı | |
hamur tatlısı | 0.67 | 14 Ağustos 2013 | Mayıs 2015 | ad alanı, bölge, REST API izleme |
imparator | 0,72 | 9 Kasım 2013 | Mayıs 2014 | radosgw için çoklu veri merkezi çoğaltması |
ateş böceği | 0.80 | 7 Mayıs 2014 | Nisan 2016 | silme kodlaması, önbellek katmanlama, birincil yakınlık, anahtar/değer OSD arka ucu (deneysel), bağımsız radosgw (deneysel) |
Devasa | 0.87 | 29 Ekim 2014 | Nisan 2015 | |
Çekiç | 0.94 | 7 Nisan 2015 | Ağustos 2017 | |
cehennem | 9.2.0 | 6 Kasım 2015 | Nisan 2016 | |
Mücevher | 10.2.0 | 21 Nisan 2016 | 2018-06-01 | Kararlı CephFS, BlueStore adlı deneysel RADOS arka ucu |
Kraken | 11.2.0 | 20 Ocak 2017 | 2017-08-01 | BlueStore kararlı |
aydınlık | 12.2.0 | 29 Ağustos 2017 | 2020-03-01 | |
Mimik | 13.2.0 | 1 Haziran 2018 | 2020-07-22 | anlık görüntüler sabit, Canavar kararlı |
nautilus | 14.2.0 | 19 Mart 2019 | 2021-06-01 | |
Ahtapot | 15.2.0 | 23 Mart 2020 | 2022-06-01 | |
Pasifik | 16.2.0 | 31 Mart 2021 | 2023-06-01 |
etimoloji
Adı "Ceph" "ın kısaltmasıdır kafadanbacaklı ", bir sınıf yumuşakçalar ahtapot içerir. İsim (logo ile vurgulanmıştır) bir ahtapotun son derece paralel davranışını akla getirir ve dosya sistemini UCSC'nin muz sümüklüböceği maskotu "Sammy" ile ilişkilendirmek için seçilmiştir . Hem kafadanbacaklılar hem de muz salyangozları yumuşakçalardır.
Kubernet'ler
Rook , kalıcı depolama sağlamak için Ceph'in Kubernetes ortamında konuşlandırılmasını sağlar .
Kubernetes kapsayıcıları temel bir ilke olarak durum bilgisizdir, ancak verilerin yine de yönetilmesi, korunması ve diğer hizmetler tarafından erişilebilir hale getirilmesi gerekir. Vatansız, kapsayıcının, geçmiş işlemler hakkında herhangi bir bilgi olmadan yalıtılmış olarak çalıştığı anlamına gelir; bu, kapsayıcıyı değiştirmeyi, silmeyi veya dağıtmayı kolaylaştırır. Ancak, kalıcı Depolama olmadan, yeniden başlatma veya silme gibi belirli yaşam döngüsü olayları için verilerin kaybolacağı anlamına da gelir.
Rook, çeşitli depolama sağlayıcıları için bulutta yerel, açık kaynaklı bir çözüm sağlayan bir depolama düzenleme aracıdır. Rook, bir depolama sistemini Kubernetes uygulamasını veya dağıtım verilerini kaydetmek için kusursuz bir deneyim sağlayan kendi kendini yöneten hizmetlere dönüştürmek için Kubernetes'in gücünü kullanır.
Ceph, nesne, blok ve dosya depolama sunan, yüksek düzeyde ölçeklenebilir bir dağıtılmış depolama çözümüdür. Ceph kümeleri, CRUSH algoritmasını (Ölçeklenebilir Karma Altında Kontrollü Çoğaltma) kullanan herhangi bir donanım üzerinde çalışacak şekilde tasarlanmıştır ve Kubernetes kapsayıcıları için kalıcı depolama sağlar.
Bu dağıtımın bir ana avantajı, Ceph komut satırını kullanarak manuel yapılandırma gerektirmeden Ceph'in yüksek düzeyde ölçeklenebilir depolama çözümünü sağlamasıdır, çünkü Rook bunu otomatik olarak halleder. Kubernetes uygulamaları daha sonra uygulama verilerini korumak ve izlemek için blok cihazları ve dosya sistemlerini Rook'tan bağlayabilir.
Ayrıca bakınız
- BeeGFS
- Dağıtılmış dosya sistemi
- Dağıtılmış paralel hataya dayanıklı dosya sistemleri
- Gfarm dosya sistemi
- GlusterFS
- IBM Genel Paralel Dosya Sistemi (GPFS)
- Kubernet'ler
- KertenkeleFS
- parlaklık
- MapR FS
- Geyik Dosya Sistemi
- TuruncuFS
- Paralel Sanal Dosya Sistemi
- Quantcast Dosya Sistemi
- RozoFS
- Yazılım tanımlı depolama
- XtreemFS
- ZFS
- Dağıtılmış dosya sistemlerinin karşılaştırılması
Referanslar
daha fazla okuma
- M. Tim Jones (2010-05-04). "Ceph: Bir Linux petabayt ölçeğinde dağıtılmış dosya sistemi" . geliştiriciWorks > Linux > Teknik kitaplık . 2010-05-06 alındı .
- Jeffrey B. Layton (2010-04-20). "Ceph: Object Lagoon'dan Dağıtılmış Dosya Sistemi Yaratığı" . Linux Dergisi . 2010-04-24 alındı .
- Carlos Maltzahn; Esteban Molina-Estolano; Amandeep Khurana; Alex J. Nelson; Scott A. Brandt; Adaçayı Weil (Ağustos 2010). "Hadoop Dağıtılmış Dosya Sistemine ölçeklenebilir bir alternatif olarak Ceph" . ;giriş: . 35 (4) . 2012-03-09 alındı .
- Martin Loschwitz (24 Nisan 2012). "RADOS Nesne Deposu ve Ceph Dosya Sistemi" . HPC YÖNETİCİ Dergisi . 2012-04-25 alındı .