Ceph (yazılım) - Ceph (software)

Cep Depolama
Ceph logosu.png
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 ; 4 ay önce ( 2021-05-13 )
depo
Yazılmış C++ , Python
İşletim sistemi Linux , FreeBSD
Tip Dağıtılmış nesne deposu
Lisans LGPLv2.1
İnternet sitesi ceph .io

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'in iç organizasyonuna üst düzey bir genel bakış

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 depolama platformunun bileşenleri arasındaki ilişkileri gösteren bir mimari diyagram

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

Yayın geçmişi
İsim Serbest bırakmak İlk sürüm
hayatın sonu
kilometre taşları
argonot Eski sürüm, artık korunmuyor: 0.48 3 Temmuz 2012 İlk büyük "kararlı" sürüm
kısa kuyruk Eski sürüm, artık korunmuyor: 0,56 1 Ocak 2013
Mürekkepbalığı Eski sürüm, artık korunmuyor: 0.61 7 Mayıs 2013 ceph-dağıtım kararlı
hamur tatlısı Eski sürüm, artık korunmuyor: 0.67 14 Ağustos 2013 Mayıs 2015 ad alanı, bölge, REST API izleme
imparator Eski sürüm, artık korunmuyor: 0,72 9 Kasım 2013 Mayıs 2014 radosgw için çoklu veri merkezi çoğaltması
ateş böceği Eski sürüm, artık korunmuyor: 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 Eski sürüm, artık korunmuyor: 0.87 29 Ekim 2014 Nisan 2015
Çekiç Eski sürüm, artık korunmuyor: 0.94 7 Nisan 2015 Ağustos 2017
cehennem Eski sürüm, artık korunmuyor: 9.2.0 6 Kasım 2015 Nisan 2016
Mücevher Eski sürüm, artık korunmuyor: 10.2.0 21 Nisan 2016 2018-06-01 Kararlı CephFS, BlueStore adlı deneysel RADOS arka ucu
Kraken Eski sürüm, artık korunmuyor: 11.2.0 20 Ocak 2017 2017-08-01 BlueStore kararlı
aydınlık Eski sürüm, artık korunmuyor: 12.2.0 29 Ağustos 2017 2020-03-01
Mimik Eski sürüm, artık korunmuyor: 13.2.0 1 Haziran 2018 2020-07-22 anlık görüntüler sabit, Canavar kararlı
nautilus Daha eski sürüm, ancak yine de korunur: 14.2.0 19 Mart 2019 2021-06-01
Ahtapot Daha eski sürüm, ancak yine de korunur: 15.2.0 23 Mart 2020 2022-06-01
Pasifik Mevcut kararlı sürüm: 16.2.0 31 Mart 2021 2023-06-01
Efsane:
Eski versiyon
Eski sürüm, hala korunuyor
En son sürüm
En son önizleme sürümü
Gelecek sürüm

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

Referanslar

daha fazla okuma

Dış bağlantılar