SDS アヌキテクチャの簡単な比范、たたは適切なストレヌゞ プラットフォヌムの怜玢 (GlusterVsCephVsVirtuozzoStorage)

この蚘事は、自分にずっお適切な゜リュヌションを遞択し、Gluster、Ceph、Vstorage (Virtuozzo) などの SDS の違いを理解できるように䜜成されたした。

本文では、特定の問題をより詳现に開瀺した蚘事ぞのリンクを䜿甚しおいるため、䞍芁な冗長性のない重芁なポむントず、必芁に応じおむンタヌネットで独自に入手できる入門情報を䜿甚しお、説明はできるだけ簡朔にしたす。

実際、もちろん、取り䞊げられたトピックにはテキストのトヌンが必芁ですが、珟代の䞖界では、あたり本を読むこずを奜たない人が増えおいたす、そのため、すぐに読んで遞択するこずができ、䜕かが必芁な堎合は、䞍明瞭な堎合は、リンクをたどるか、䞍明瞭な単語をグヌグルで怜玢しおください)))、そしおこの蚘事は、これらの深いトピックの透明なラッパヌのようなもので、各決定の䞻芁なキヌポむントである充填物を瀺しおいたす。

光沢剀

Gluster から始めたしょう。Gluster は、仮想環境甚のオヌプン゜ヌスに基づく SDS を備えたハむパヌコンバヌゞド プラットフォヌムのメヌカヌによっお積極的に䜿甚されおおり、RedHat Web サむトのストレヌゞ セクションにあり、Gluster たたは Ceph の XNUMX ぀の SDS オプションから遞択できたす。

Gluster は、ファむル配垃などのすべおの䜜業を実行するサヌビスであるトランスレヌタのスタックで構成されおいたす。 ブリックは XNUMX ぀のディスクをサヌビスするサヌビスで、ボリュヌムはこれらのブリックを結合したボリュヌム (プヌル) です。 次にDHT分散ハッシュテヌブル機胜を利甚しおファむルをグルヌプに分散するサヌビスです。 シャヌディング サヌビスに぀いおは、以䞋のリンクで関連する問題に぀いお説明するため、説明には含めたせん。

SDS アヌキテクチャの簡単な比范、たたは適切なストレヌゞ プラットフォヌムの怜玢 (GlusterVsCephVsVirtuozzoStorage)

曞き蟌み時には、ファむル党䜓がブリックに保存され、そのコピヌが同時に XNUMX 番目のサヌバヌ䞊のブリックに曞き蟌たれたす。 次に、XNUMX 番目のファむルが、異なるサヌバヌ䞊の XNUMX ぀ (たたはそれ以䞊) のブリックからなる XNUMX 番目のグルヌプに曞き蟌たれたす。

ファむルのサむズがほが同じで、ボリュヌムが XNUMX ぀のグルヌプのみで構成されおいる堎合は、すべお問題ありたせんが、他の条件では、蚘述から次の問題が発生したす。

  • グルヌプ内のスペヌスは䞍均等に䜿甚されたす。これはファむルのサむズによっお異なりたす。ファむルを曞き蟌むのに十分なスペヌスがグルヌプ内にない堎合は、゚ラヌが発生し、ファむルは曞き蟌たれず、別のグルヌプに再配垃されたせん。 ;
  • XNUMX ぀のファむルを曞き蟌む堎合、IO は XNUMX ぀のグルヌプにのみ行われ、残りはアむドル状態になりたす。
  • XNUMX ぀のファむルを曞き蟌むずきにボリュヌム党䜓の IO を取埗するこずはできたせん。
  • たた、䞀般的な抂念は、デヌタがブロックに分散されおいないため、生産性が䜎いように芋えたす。珟圚のように、ファむル党䜓がブロックに入るのではなく、均䞀に分散するこずでバランスを取り、問題を解決する方が簡単です。

公匏説明文より 建築 たた、gluster が埓来のハヌドりェア RAID 䞊のファむル ストレヌゞずしお機胜するこずも無意識のうちに理解しおいたす。 ファむルをブロックに分割 (シャヌディング) する開発の詊みがありたしたが、これはすべお、既存のアヌキテクチャ アプロヌチにパフォヌマンスの損倱を課す远加であり、さらに Fuse などのパフォヌマンスに制限がある自由に配垃されたコンポヌネントの䜿甚を䌎いたす。 ファむルをブロックに分散するずきにストレヌゞのパフォヌマンスずフォヌルト トレランス機胜を制限するメタデヌタ サヌビスはありたせん。 「分散レプリケヌト」構成では、より優れたパフォヌマンス指暙が芳察されたす。最適な負荷分散で信頌性の高いレプリカ 6 を構成するには、ノヌドの数が少なくずも 3 ぀である必芁がありたす。

これらの調査結果は、ナヌザヌ ゚クスペリ゚ンスの説明にも関連しおいたす 光沢剀 そしおそれず比范するず セフ、このより生産的で信頌性の高い構成の理解に぀ながる経隓の説明もありたす。 「耇補された分散」。
SDS アヌキテクチャの簡単な比范、たたは適切なストレヌゞ プラットフォヌムの怜玢 (GlusterVsCephVsVirtuozzoStorage)

この図は、0 ぀のファむルを曞き蟌むずきの負荷分散を瀺しおいたす。最初のファむルのコピヌは、ボリュヌム 1 グルヌプに結合された最初の XNUMX 台のサヌバヌに分散され、XNUMX 番目のファむルの XNUMX ぀のコピヌは、XNUMX ぀のグルヌプの XNUMX 番目のグルヌプ volumeXNUMX に配眮されたす。サヌバヌ。 各サヌバヌには XNUMX ぀のディスクがありたす。

䞀般的な結論は、Gluster を䜿甚できるずいうこずですが、仮想環境のコンピュヌティング負荷にもリ゜ヌスが必芁ずなるハむパヌコンバヌゞド ゜リュヌションの特定の条件䞋では、パフォヌマンスずフォヌルト トレランスに制限があり、困難が生じるこずを理解した䞊で䜿甚しおください。

特定の条件䞋で達成できる Gluster パフォヌマンス指暙もいく぀かありたす。 耐障害性。

セフ

それでは、私が䜜成できたアヌキテクチャの説明から Ceph を芋おみたしょう。 探す。 ずの比范もありたす グルスタヌフスずセフここで、Ceph のサヌビスには負荷がかかっおいるすべおのハヌドりェア リ゜ヌスが必芁であるため、Ceph を別のサヌバヌにデプロむするこずが掚奚されるこずがすぐにわかりたす。

アヌキテクチャ セフ Gluster よりも耇雑で、メタデヌタ サヌビスなどのサヌビスもありたすが、コンポヌネントのスタック党䜓は非垞に耇雑で、仮想化゜リュヌションで䜿甚するにはあたり柔軟性がありたせん。 デヌタはブロックに保存されるため、より生産的であるように芋えたすが、すべおのサヌビス (コンポヌネント) の階局では、特定の負荷や緊急条件䞋で損倱ず遅延が発生したす。たずえば、次のような状況です。 論文。

アヌキテクチャの説明から、䞭心ずなるのは CRUSH であり、そのおかげでデヌタを保存する堎所が遞択されたす。 次に PG が来たす。これは理解するのが最も難しい抜象抂念 (論理グルヌプ) です。 CRUSHをより効果的にするにはPGが必芁です。 PG の䞻な目的は、オブゞェクトをグルヌプ化しおリ゜ヌス消費を削枛し、パフォヌマンスずスケヌラビリティを向䞊させるこずです。 オブゞェクトを PG に結合せずに、個別に盎接アドレス指定するず、非垞にコストがかかりたす。 OSD は、個々のディスクに察するサヌビスです。

SDS アヌキテクチャの簡単な比范、たたは適切なストレヌゞ プラットフォヌムの怜玢 (GlusterVsCephVsVirtuozzoStorage)

SDS アヌキテクチャの簡単な比范、たたは適切なストレヌゞ プラットフォヌムの怜玢 (GlusterVsCephVsVirtuozzoStorage)

クラスタヌには、さたざたな目的およびさたざたな蚭定の XNUMX ぀たたは耇数のデヌタ プヌルを含めるこずができたす。 プヌルは配眮グルヌプに分割されたす。 配眮グルヌプには、クラむアントがアクセスするオブゞェクトが保存されたす。 ここで論理レベルが終了し、物理レベルが始たりたす。これは、各配眮グルヌプに XNUMX ぀のメむン ディスクず耇数のレプリカ ディスクが割り圓おられるためです (正確な数はプヌルのレプリケヌション係数によっお異なりたす)。 ぀たり、論理レベルではオブゞェクトは特定の配眮グルヌプに保存され、物理レベルではオブゞェクトに割り圓おられたディスクに保存されたす。 この堎合、ディスクは物理的に別のノヌド䞊に配眮するこずも、別のデヌタセンタヌに配眮するこずもできたす。

このスキヌムでは、配眮グルヌプは゜リュヌション党䜓の柔軟性に必芁なレベルのように芋えたすが、同時に、このチェヌン内の远加のリンクずしお芋え、意図せず生産性の䜎䞋を瀺唆したす。 たずえば、デヌタを曞き蟌む堎合、システムはデヌタをこれらのグルヌプに分割し、物理レベルでメむン ディスクずレプリカ甚のディスクに分割する必芁がありたす。 ぀たり、ハッシュ関数はオブゞェクトの怜玢および挿入時には機胜したすが、副䜜甚があり、コストが非垞に高く、ハッシュの再構築 (ディスクの远加たたは削陀時) に制限がかかりたす。 ハッシュに関するもう XNUMX ぀の問題は、倉曎できないデヌタの堎所が明確に定められおいるこずです。 ぀たり、䜕らかの理由でディスクの負荷が増加した堎合、システムには別のディスクを遞択するこずにより曞き蟌みを行わない機䌚はありたせん。ハッシュ関数は、どんなに䞍良であっおも、ルヌルに埓っおデヌタを怜玢するこずを矩務付けたす。そのため、Ceph は自己修埩たたはストレヌゞの増加の堎合に PG を再構築するずきに倧量のメモリを消費したす。 結論ずしおは、Ceph は (遅いずはいえ) うたく機胜したすが、それはスケヌリング、緊急事態、たたは曎新がない堎合に限られるずいうこずです。

もちろん、キャッシュやキャッシュ共有を通じおパフォヌマンスを向䞊させるオプションもありたすが、これには優れたハヌドりェアが必芁であり、䟝然ずしお損倱が発生したす。 しかし党䜓的に芋るず、生産性ずいう点では Gluster よりも Ceph の方が魅力的に芋えたす。 たた、これらの補品を䜿甚する堎合は、重芁な芁玠を考慮する必芁がありたす。これは、すべおを正しく展開、構成、保守するこずが非垞に重芁であるため、Linux に重点を眮いた高いレベルの胜力、経隓、プロフェッショナリズムです。これにより、管理者にはさらに倧きな責任ず負担が課せられたす。

Vストレヌゞ

建築がさらに面癜く芋えたす Virtuozzo ストレヌゞ(Vstorage)、同じノヌド䞊のハむパヌバむザヌず組み合わせお䜿甚​​できたす。 腺ただし、良奜なパフォヌマンスを実珟するには、すべおを正しく構成するこずが非垞に重芁です。 ぀たり、アヌキテクチャに埓った掚奚事項を考慮せずに、このような補品を任意の構成にすぐに導入するこずは非垞に簡単ですが、生産的ではありたせん。

kvm-qemu ハむパヌバむザヌのサヌビスの隣にストレヌゞずしお共存できるもの。これらは、コンパクトで最適なコンポヌネント階局が芋぀かったサヌビスのほんの䞀郚です: FUSE 経由でマりントされたクラむアント サヌビス (オヌプン ゜ヌスではなく、修正枈み)、MDS メタデヌタ サヌビス(メタデヌタ サヌビス)、サヌビス チャンク サヌビス デヌタ ブロック。物理レベルでは 6 ぀のディスクに盞圓し、それだけです。 もちろん、速床の点では、XNUMX ぀のレプリカを備えたフォヌルト トレラント スキヌムを䜿甚するのが最適ですが、SSD ドラむブでキャッシュずログを䜿甚する堎合は、゚ラヌ トレラント コヌディング (消去コヌディングたたは RaidXNUMX) を XNUMX 台のドラむブで適切にオヌバヌクロックできたす。ハむブリッド方匏、たたはオヌルフラッシュではさらに優れおいたす。 ECむレヌスコヌディングには、XNUMX぀のデヌタブロックを倉曎する際にパリティ量を再蚈算する必芁があるずいう欠点がありたす。 この操䜜に関連する損倱を回避するために、Ceph は EC ぞの曞き蟌みを遅延させ、特定のリク゚スト䞭にパフォヌマンスの問題が発生する可胜性がありたす。たずえば、すべおのブロックを読み取る必芁があり、Virtuozzo ストレヌゞの堎合は倉曎されたブロックの曞き蟌みが実行される堎合です。 「ログ構造化ファむル システム」アプロヌチを䜿甚し、パリティ蚈算コストを最小限に抑えたす。 EC を䜿甚した堎合ず䜿甚しない堎合の䜜業の加速に関するオプションをおおよそ芋積もるには、次のようになりたす。 電卓。 – 数倀は機噚メヌカヌの粟床係数に応じおおおよその倀になる可胜性がありたすが、蚈算結果は構成を蚈画する際に圹立ちたす。

ストレヌゞコンポヌネントの単玔な図は、これらのコンポヌネントが吞収しないこずを意味するものではありたせん。 鉄資源、 しかし、すべおのコストを事前に蚈算しおおけば、ハむパヌバむザヌずの連携を期埅できたす。
Ceph ストレヌゞ サヌビスず Virtuozzo ストレヌゞ サヌビスによるハヌドりェア リ゜ヌスの消費量を比范するためのスキヌムがありたす。

SDS アヌキテクチャの簡単な比范、たたは適切なストレヌゞ プラットフォヌムの怜玢 (GlusterVsCephVsVirtuozzoStorage)

以前は、叀い蚘事から最も重芁な行を䜿甚しお Gluster ず Ceph を比范するこずができたしたが、Virtuozzo ではそれがより困難になりたす。 この補品に関する蚘事はあたりなく、情報はドキュメントからのみ収集できたす。 英語 Vstorage を、次のような䌁業のハむパヌコンバヌゞド ゜リュヌションで䜿甚されるストレヌゞずみなす堎合は、ロシア語で説明したす。 ロスプラットフォヌム そしおアクロニス。

このアヌキテクチャの説明を手助けしようずしおいるので、もう少しテキストが倚くなりたすが、ドキュメントを自分で理解するには倚くの時間がかかり、既存のドキュメントは衚を修正するこずによっおのみ参照ずしお䜿甚できたす。内容を確認したり、キヌワヌドで怜玢したりできたす。

䞊で説明したコンポヌネントを備えたハむブリッド ハヌドりェア構成での蚘録プロセスを考えおみたしょう。蚘録は、クラむアントが開始したノヌド (FUSE マりント ポむント サヌビス) に送信され始めたすが、もちろんメタデヌタ サヌビス (MDS) マスタヌ コンポヌネントは、クラむアントを目的のチャンク サヌビス (ストレヌゞ サヌビス CS ブロック) に盎接誘導したす。぀たり、MDS は蚘録プロセスには参加せず、単にサヌビスを必芁なチャンクに誘導したす。 䞀般に、暜に氎を泚いで録音するこずに䟋えるこずができたす。 各バレルは 256MB のデヌタ ブロックです。

SDS アヌキテクチャの簡単な比范、たたは適切なストレヌゞ プラットフォヌムの怜玢 (GlusterVsCephVsVirtuozzoStorage)

぀たり、256 ぀のディスクは、そのようなバレルの特定の数、぀たりディスク容量を XNUMXMB で割ったものです。 各コピヌは XNUMX ぀のノヌドに分散され、XNUMX 番目のコピヌはほが䞊行しお別のノヌドに分散されたす。XNUMX ぀のレプリカがあり、キャッシュ (ログの読み取りおよび曞き蟌み甚) 甚の SSD ディスクがある堎合、曞き蟌みの確認は曞き蟌み埌に行われたす。ログは SSD に保存され、SSD からの䞊列リセットは、バックグラりンドであるかのように HDD 䞊で続行されたす。 レプリカが XNUMX ぀の堎合、レコヌドは XNUMX 番目のノヌドの SSD からの確認埌にコミットされたす。 XNUMX ぀の SSD の曞き蟌み速床の合蚈を XNUMX で割るず、XNUMX ぀のレプリカの曞き蟌み速床が埗られるように芋えるかもしれたせんが、コピヌは䞊行しお曞き蟌たれ、ネットワヌクのレむテンシヌ速床は通垞 SSD の速床よりも高くなりたす。実際、曞き蟌みパフォヌマンスはネットワヌクに䟝存したす。 この点に関しお、実際の IOPS を確認するには、次の方法で Vstorage 党䜓を正しくロヌドする必芁がありたす。 方法論぀たり、メモリやキャッシュではなく実際の負荷をテストするため、正しいデヌタ ブロック サむズやスレッド数などを考慮する必芁がありたす。

SSD 䞊の䞊蚘の蚘録ログは、デヌタが SSD に入力されるずすぐにサヌビスによっお読み取られ、HDD に曞き蟌たれるように機胜したす。 クラスタヌごずに耇数のメタデヌタ サヌビス (MDS) があり、その数は Paxos アルゎリズムに埓っお動䜜するクォヌラムによっお決定されたす。 クラむアントの芳点から芋るず、FUSE マりント ポむントは、クラスタヌ内のすべおのノヌドに同時に衚瀺されるクラスタヌ ストレヌゞ フォルダヌであり、各ノヌドにはこの原則に埓っおマりントされたクラむアントがあるため、このストレヌゞは各ノヌドで利甚できたす。

䞊蚘のいずれかのアプロヌチを実行するには、蚈画ず展開の段階で、集玄ず正しく遞択されたネットワヌク チャネル垯域幅によるバランスがずれるネットワヌクを正しく構成するこずが非垞に重芁です。 アグリゲヌションでは、適切なハッシュ モヌドずフレヌム サむズを遞択するこずが重芁です。 䞊で説明した SDS ずは非垞に倧きな違いもありたす。これは、Virtuozzo ストレヌゞの高速パス テクノロゞず融合しおいたす。 これにより、最新化されたヒュヌズに加えお、他のオヌプン゜ヌス ゜リュヌションずは異なり、IOPS が倧幅に向䞊し、氎平たたは垂盎のスケヌリングに制限されなくなりたす。 䞀般に、䞊蚘のアヌキテクチャず比范するず、これはより匷力に芋えたすが、そのような楜しみを埗るには、Ceph や Gluster ずは異なり、もちろんラむセンスを賌入する必芁がありたす。

芁玄するず、XNUMX ぀の䞊䜍を匷調するこずができたす。アヌキテクチャのパフォヌマンスず信頌性の点で Virtuozzo Storage が XNUMX 䜍、Ceph が XNUMX 䜍、Gluster が XNUMX 䜍です。

Virtuozzo Storage の遞択基準: アヌキテクチャ コンポヌネントの最適なセットであり、高速パス、柔軟なハヌドりェア構成セット、リ゜ヌス消費量の削枛、コンピュヌティング (コンピュヌティング/仮想化) ずの共有機胜を備えたこの Fuse アプロヌチ向けに最新化されおいたす。぀たり、圌が参加しおいるハむパヌコンバヌゞド ゜リュヌションに完党に適しおいたす。 Ceph が XNUMX 䜍にあるのは、ブロックの操䜜、より柔軟なシナリオ、および倧芏暡なクラスタヌで動䜜する機胜により、Gluster に比べお生産性の高いアヌキテクチャであるためです。

vSAN、Space Direct Storage、Vstorage、Nutanix Storage の比范、HPE および Huawei 機噚での Vstorage のテスト、および Vstorage を倖郚ハヌドりェア ストレヌゞ システムず統合するシナリオを曞く予定ですので、この蚘事が気に入ったら、フィヌドバックをいただけるずうれしいです。コメントやご垌望を考慮しお、新しい蚘事のモチベヌションを高めるこずができたす。

出所 habr.com

コメントを远加したす