Perbandingan singkat arsitektur SDS atau menemukan platform penyimpanan yang sesuai (GlusterVsCephVsVirtuozzoStorage)

Artikel ini ditulis untuk membantu Anda memilih solusi yang tepat untuk diri sendiri dan untuk memahami perbedaan antara SDS seperti Gluster, Ceph dan Vstorage (Virtuozzo).

Teks ini menggunakan tautan ke artikel-artikel dengan pengungkapan masalah-masalah tertentu yang lebih terperinci, sehingga uraiannya akan sesingkat mungkin menggunakan poin-poin penting tanpa informasi latar belakang dan air yang tidak perlu yang dapat Anda peroleh secara mandiri di Internet jika diinginkan.

Sebenarnya, tentu saja, topik yang dibahas memerlukan nada teks, tetapi di dunia modern semakin banyak orang tidak suka membaca banyak))), sehingga Anda dapat dengan cepat membaca dan membuat pilihan, dan jika tidak jelas untuk mengikuti tautan atau kata-kata yang tidak dapat dimengerti google))), dan artikel ini sebagai pembungkus transparan untuk topik-topik mendalam ini, menunjukkan isi - poin utama utama dari setiap keputusan.

Gluster


Mari kita mulai dengan Gluster, yang secara aktif digunakan oleh produsen platform hyperconverged dengan SDS berdasarkan open source untuk lingkungan virtual dan dapat ditemukan di situs web RedHat di bagian penyimpanan, di mana Anda ditawari untuk memilih dari dua opsi SDS: Gluster atau Ceph.

Gluster terdiri dari setumpuk penerjemah - layanan yang melakukan semua pekerjaan mendistribusikan file, dll. Brick - layanan yang melayani satu disk, Volume - volume (kumpulan) - yang menggabungkan batu bata ini. Berikutnya adalah layanan untuk mendistribusikan file ke dalam kelompok karena fungsi DHT (tabel hash terdistribusi). Kami tidak akan menyertakan layanan Sharding dalam deskripsi karena tautan di bawah ini akan menjelaskan masalah yang terkait dengannya.

gambar

Saat merekam, seluruh file berada di dalam bata dan salinannya ditulis secara paralel pada bata di server kedua. Selanjutnya, file kedua sudah akan ditulis ke grup kedua dari dua bričk (atau lebih) di server yang berbeda.

Jika file memiliki ukuran yang sama dan volume hanya terdiri dari satu grup, maka semuanya baik-baik saja, tetapi dalam kondisi lain, masalah berikut akan muncul dari deskripsi:

  • tempat dalam grup tidak digunakan secara merata, tergantung pada ukuran file dan jika tidak ada cukup ruang dalam grup untuk menulis file, Anda akan mendapatkan kesalahan, file tidak akan ditulis dan tidak akan didistribusikan ke grup lain;
  • ketika menulis satu file, IO hanya pergi ke satu grup, sisanya idle;
  • Anda tidak bisa mendapatkan IO seluruh volume saat menulis satu file;
  • , , .

Dari deskripsi resmi arsitektur, orang juga tanpa sadar memahami bahwa gluster berfungsi sebagai penyimpanan file di atas RAID perangkat keras klasik. Telah ada upaya pengembangan untuk membagi file ke dalam blok, tetapi ini semua adalah add-on yang menempatkan kerugian kinerja pada pendekatan arsitektur yang ada, ditambah penggunaan komponen yang didistribusikan secara bebas dengan batasan kinerja seperti Fuse. Tidak ada layanan metadata, yang membatasi kemampuan penyimpanan dan distribusi file saat mendistribusikan file ke dalam blok. Performa yang lebih baik dapat diamati dengan konfigurasi “Distributed Replicated”, dan jumlah node harus setidaknya 6 untuk replika 3 yang dapat diandalkan dengan distribusi beban yang optimal.

Kesimpulan ini juga terkait dengan deskripsi pengalaman menggunakan Gluster dan bila dibandingkan dengan Ceph , dan ada juga deskripsi pengalaman untuk memahami konfigurasi "Replicated Distributed" yang lebih produktif dan lebih andal ini .
gambar

Gambar menunjukkan distribusi beban saat merekam dua file, di mana salinan file pertama diletakkan pada tiga server pertama, yang digabungkan menjadi grup volume 0 dan tiga salinan file kedua jatuh pada volume grup kedua1 dari tiga server. Setiap server memiliki satu disk.

Kesimpulan umum adalah bahwa Anda dapat menggunakan Gluster, tetapi dengan pemahaman bahwa akan ada batasan dalam kinerja dan toleransi kesalahan, yang menciptakan kesulitan dalam kondisi tertentu dari solusi hyperconverged, di mana sumber daya juga diperlukan untuk beban komputasi lingkungan virtual.

Ada juga beberapa indikator kinerja Gluster yang dapat dicapai dalam kondisi tertentu dengan membatasi toleransi kesalahan.

Ceph


eph , . Glusterfs Ceph, Ceph , .

eph Gluster , . , , (), latency .

CRUSH, . PG — ( ) . PG , CRUSH . PG — -, . , , PG . OSD – .





. -. - , . , , - - ( ). , -, — , . .

- , , . . , – ( , ). – , . - , ( ), , , Ceph PG self-healing . , Ceph ( ), , .

-, . Ceph Gluster . – , linux, , , .

Vstorage


Virtuozzo storage(Vstorage), , , , . , .

kvm-qemu, , : FUSE(, open source), MDS (Metadata service), Chunk service, . , SSD, (erase coding raid6) all flash. EC(erase coding) : . eph EC , , Virtuozzo Storage “log-structured file system”, . EC , . – , .

, , , .
eph Virtuozzo storage.



Gluster Ceph , , Virtuozzo . Vstorage .

, , .

: ( FUSE), (MDS) ( CS), MDS , . . , 256.



, - , 256. , .… SSD , ( ), SSD, SSD, HDD, . SSD . , SSD , Latency , SSD, . , IOPS Vstorage , , , , ..

SSD, , , HDD. (MDS) , Paxos. FUSE, , , .

, , , . . SDS, fuse fast path Virtuozzo Storage. fuse open source , IOPS- . , eph Gluster.

: Virtuozzo Storage, Ceph Gluster.

, Virtuozzo Storage: , Fuse fast path, , compute(/), , . Ceph, Gluster, , .

Rencananya termasuk keinginan untuk menulis perbandingan antara vSAN, Space Direct Storage, Vstorage dan Nutanix Storage, pengujian Vstorage pada HPE, peralatan Huawei, serta skenario untuk mengintegrasikan Vstorage dengan sistem penyimpanan perangkat keras eksternal, jadi jika Anda menyukai artikel ini, akan lebih baik untuk mendapatkan umpan balik dari Anda , yang dapat meningkatkan motivasi untuk artikel baru berdasarkan komentar dan saran Anda.

Source: https://habr.com/ru/post/undefined/


All Articles