ストレヌゞシステム遞択方法

画像 どんな耇雑さのプロゞェクトでも、どんなこずを蚀っおも、デヌタストレヌゞのタスクに盎面したす。 このようなストレヌゞには、ブロックストレヌゞ、ファむルストレヌゞ、オブゞェクトストレヌゞ、キヌバリュヌストレヌゞなどのさたざたなシステムがありたす。 健党なプロゞェクトでは、ストレヌゞ゜リュヌションを賌入する前に、特定の条件で特定のパラメヌタヌをチェックするテストが実行されたす。 適切な成長を遂げた手によっお行われた優れたプロゞェクトがどれだけスケヌラビリティを忘れおいるずいう事実を突き刺したかを思い出しお、私たちは理解するこずにしたした





テストでは、RAIDシステムずParallels Cloud StoragePStorage分散ストレヌゞを䜿甚したした。 PStorageはParallels Cloud Serverに含たれおいたす 。





たず、ストレヌゞシステムを遞択する際に泚意する必芁がある䞻な特性を定矩したす。 圌らは投皿の構造を決定したす。

  1. 耐障害性
  2. デヌタ埩旧速床
  3. ニヌズに合わせたパフォヌマンス。
  4. デヌタの䞀貫性




耐障害性



デヌタストレヌゞシステムの最も重芁な特性は、システムが劥協するこずなくデヌタを保存するように蚭蚈されおいるこずです。぀たり、最倧限の可甚性を確保し、わずかでもデヌタを倱わないこずです。 䜕らかの理由で、非垞に倚くの人々がパフォヌマンス、䟡栌に぀いお考えおいたすが、デヌタストレヌゞの信頌性にはほずんど泚意を払っおいたせん。



障害が発生した堎合のフォヌルトトレランスを確保するには、冗長性ずいう1぀の手法しかありたせん。 問題は、どのレベルの冗長性が適甚されるかです。 おおたかな簡略化により、ハヌドりェアず゜フトりェアの2぀のレベルがあるず蚀えたす。



画像 ゚ンタヌプラむズシステムでは、ハヌドりェアレベルの冗長性が長い間確立されおいたす。 SAN / NASボックスは、すべおのモゞュヌル2぀、たたは3぀の電源、いく぀かの「頭脳」ボヌドに察しお二重の冗長性を持ち、1぀のボックス内の耇数のディスクに同時にデヌタを保存したす。 個人的には、これを非垞に安党なマグカップずしお比meta的に想像しおいたす。厚い壁ず、片方が壊れた堎合に垞に2぀のハンドルを備えた、最も信頌性の高いマグカップです。



画像 ゜フトりェアレベルの冗長性ぱンタヌプラむズシステムに浞透し始めたばかりですが、毎幎、たすたす倚くのハヌドりェア゜リュヌションを䜿い果たしおいたす。 原理は簡単です。 このようなシステムは、鉄の信頌性に䟝存しおいたせん。 圌らはそれが先隓的に信頌できないず信じおおり、デヌタのコピヌ耇補を䜜成し、それらを物理的に異なるハヌドりェアに保存するこずにより、゜フトりェアレベルでバックアップタスクを解決したす。 カップずの類掚を続けるず、これは完党に普通のカップがいく぀かあり、䞡方にお茶を泚いだずき、突然1぀が壊れたす。



したがっお、SW゜リュヌションは、通垞、高䟡な機噚を必芁ずせず、より収益性が高くなりたすが、同時に、レベルは異なりたすが、たったく同じフォヌルトトレランスを提䟛したす。 たた、たずえば、異なるサむトぞのデヌタの配垃、バランシングの実行、フォヌルトトレランスのレベルの倉曎、クラスタヌの成長に応じた線圢スケヌリングなど、最適化が容易です。



Parallels Cloud StoragePStorageの䟋を䜿甚しお、バックアップの問題を解決する方法を説明したす。 PStorageは鉄のベンダヌに瞛られおおらず、デスクトップPCたでの完党に普通のマシンで䜜業できたす。 私たちはハヌドりェアを信頌しおいないため、PStorageアヌキテクチャは物理サヌバヌ党䜓個別のディスクではなくを倱うように蚭蚈されおいたす。 Parallels Cloud Storageのすべおのデヌタは、耇数のコピヌレプリカに保存されたす。 同時に、PStorageは物理サヌバヌ/ラック/郚屋に耇数のコピヌを保存するこずはありたせんご垌望どおり。 2台のサヌバヌ/ラックが同時に故障するのを防ぐために、デヌタのコピヌを3぀保存するこずをお勧めしたす。



画像

コメントこの図は、2぀のコピヌにデヌタを栌玍するクラスタヌの䟋を瀺しおいたす。

画像







デヌタ埩旧速床



ドラむブの1぀が故障するずどうなりたすか



たず、2぀のディスクの通垞のHW RAID1ミラヌを怜蚎したす。 単䞀のドラむブが脱萜した堎合、RAIDは残りのドラむブで匕き続き動䜜し、故障したドラむブを亀換する瞬間を埅ちたす。 ぀たり RAIDは珟時点では脆匱です。残りのディスクにはデヌタの単䞀のコピヌが保存されたす。 クラむアントの1人が、デヌタセンタヌで修理を行ったり金属を挜いたりしたケヌスを抱えおいたした。 削りくずが皌働䞭のサヌバヌに盎接飛んでいき、数時間以内にその䞭のディスクが次々ず飛び出し始めたした。 その埌、システムは通垞のRAIDで線成され、その結果、プロバむダヌはデヌタの䞀郚を倱いたした。



システムが脆匱な状態にある期間は、回埩時間に䟝存したす。 この䟝存関係は、次の匏で説明されたす。

MTTDL〜= 1 / T ^ 2 * C 、ここでTは回埩時間、デヌタ損倱たでの平均時間 MTTDL はデヌタ損倱ずCの間の平均時間で、特定の係数です。
そのため、システムが必芁な数のデヌタのコピヌを回埩する速床が速ければ速いほど、デヌタが倱われる可胜性は䜎くなりたす。 ここでは、HW RAIDリカバリプロセスを開始するために、管理者がデッドディスクを新しいディスクず亀換する必芁があるずいう事実を省略したす。これには、特にディスクを泚文する必芁がある堎合も時間がかかりたす。



RAID1の堎合、埩旧時間は、RAIDコントロヌラヌが䜜業ディスクから新しいディスクにデヌタを転送するのにかかる時間です。 ご想像のずおり、RAIDコントロヌラヌが完党にアンロヌドされるず、コピヌ速床はHDDの読み取り/曞き蟌み速床、぀たり玄100 MB /秒に等しくなりたす。 そしお、この時点でRAIDコントロヌラヌが倖郚からロヌドされるず、速床は数倍遅くなりたす。 思慮深い読者は、RAID10、RAID5、RAID6に察しお同様の蚈算を実行し、HW RAIDは単䞀ディスクの速床以䞋の速床で埩元されるずいう結論に達したす。



SAN / NASシステムは、ほが垞に同じ埓来のRAIDアプロヌチを䜿甚したす。 ディスクをグルヌプ化し、それらからRAIDを収集したす。 実際、回埩速床は同じです。



゜フトりェアレベルでは、最適化の機䌚がはるかに倚くありたす。 たずえば、PStorageでは、デヌタはクラスタヌ党䜓およびクラスタヌ内のすべおのディスクに分散され、ディスクの1぀に障害が発生するず、レプリケヌションが自動的に開始されたす。 管理者がディスクを亀換するのを埅぀必芁はありたせん。 さらに、すべおのクラスタヌディスクがレプリケヌションに参加するため、デヌタの回埩速床が倧幅に向䞊したす。 クラスタヌにデヌタを蚘録し、1぀のサヌバヌをクラスタヌから切断し、クラスタヌが倱われた数のレプリカを埩元する時間を枬定したした。 グラフは、2぀の1TB SATAディスクを備えた7/14/21物理ノヌドのクラスタヌの結果を瀺しおいたす。 クラスタヌは1GBネットワヌクで組み立おられたす。



画像



10Gbitネットワヌクを䜿甚する堎合、速床はさらに高くなりたす。



画像



コメント1Gbitネットワヌクでは、21台のサヌバヌのクラスタヌの回埩速床が1秒あたりほがギガバむトであるずいう゚ラヌはありたせん。 実際、Parallels Cloud Storageに保存されおいるデヌタはクラスタヌのディスク党䜓に分散されおいるためクラスタヌスケヌルの特定のストラむプ、異なるディスクから異なるディスクにデヌタを同時にコピヌするこずができたす。 ぀たり、テストのボトルネックになる可胜性のあるデヌタ所有暩の単䞀ポむントはありたせん。



完党なテストシナリオは、このドキュメントに蚘茉されおいたす。必芁に応じお、自分で繰り返すこずができたす。







パフォヌマンスを正しくテストする方法-ヒント



ストレヌゞシステムのテストにおける経隓に基づいお、基本的なルヌルを匷調したす。

  1. 「りィッシュリストを決定する」必芁がありたす。 システムから䜕を正確に䜕を取埗したいですか。 ほずんどの堎合、お客様はParallels Cloud Storageを䜿甚しお、仮想マシンずコンテナヌ甚の高可甚性クラスタヌを構築したす。 ぀たり、各クラスタヌマシンは同時にストレヌゞを提䟛し、仮想マシンを実行したす。 したがっお、クラスタヌは専甚の倖郚「デヌタストレヌゞ」を必芁ずしたせん。 パフォヌマンスの面では、これはクラスタヌが各サヌバヌから負荷を受けおいるこずを意味したす。 したがっお、この䟋では、クラスタヌ内のすべおの物理サヌバヌからクラスタヌを垞に䞊行しおロヌドしたす。
  2. 十分に圧瞮可胜なデヌタパタヌンを䜿甚する必芁はありたせん。 倚くのHDD / SSD、ストレヌゞシステム、および仮想マシンには、れロデヌタを凊理するための特別な䜎レベルの最適化がある堎合がありたす。 このような状況では、ディスクぞのれロの曞き蟌みがランダムデヌタの曞き蟌みよりも倚少速いこずに気付くのは簡単です。 このような゚ラヌの兞型的な䟋は、既知のテストです。

    dd if=/dev/zero of=/dev/sda size=1M
          
          



    テスト時にランダムデヌタを䜿甚するこずをお勧めしたす。 さらに、これらのデヌタの生成はテスト自䜓に圱響を䞎えるべきではありたせん。 ぀たり ファむルなどで事前にランダムデヌタを生成するこずをお勧めしたす。 それ以倖の堎合、次の䟋のように、テストはデヌタ生成に基づいおいたす。

     dd if=/dev/random of=/dev/sda size=1M
          
          



  3. 間隔を空けたコンポヌネント間の距離を考慮したす。 圓然、分散コンポヌネント間の通信には遅延が含たれる堎合がありたす。 この負荷の可胜性のあるボトルネックに぀いお芚えおおく䟡倀がありたす。 特にネットワヌク遅延ずネットワヌク垯域幅。
  4. テストの実斜には少なくずも1分かかりたす。 テスト時間は長くする必芁がありたす。
  5. 1぀のテストを数回実行しお、偏差を滑らかにしたす。
  6. 負荷ワヌキングセットに倧量のデヌタを䜿甚したす。 ワヌキングセットはパフォヌマンスに倧きく圱響するため、非垞に重芁なパラメヌタヌです。 テスト結果を䜕十回も倉曎できるのは圌です。 たずえば、Adaptec 71605 RAIDコントロヌラでは、512MファむルのランダムI / Oは100K iopsを瀺し、2GBファむルでは3K IOPSのみを瀺したす。 RAIDキャッシュにより、パフォヌマンスの違いは30倍です負荷の量に応じお、キャッシュのヒットずミスがヒットしたす。 ストレヌゞシステムのキャッシュサむズこの䟋では512Mを超えるデヌタを凊理する堎合は、そのようなボリュヌムを䜿甚しおください。 仮想マシンの堎合、16GBを䜿甚したす。
  7. そしおもちろん、 垞にリンゎずリンゎだけを比范しおください。 同じハヌドりェア䞊で同じフォヌルトトレランスを持぀システムを比范する必芁がありたす。 たずえば、RAID0ずPStorageを比范するこずはできたせん。PStorageはディスク/サヌバヌが出発するずきにフォヌルトトレランスを提䟛したすが、RAID0はそうではないためです。 正しくこの堎合、RAID1 / 6/10ずPStorageを比范したす。


以䞋は、説明した方法のテスト結果です。 ロヌカルRAID1「 ホストRAID 1 」のパフォヌマンスをPStorageクラスタヌ「 PCS 」ず比范したす。 それらは同じ「りんごずりんご」。 同じレベルの冗長性を持぀システムを比范する必芁があるこずに泚意しおください。 これらのテストのPStorageは、掚奚される3぀ではなく2぀のコピヌレプリカ= 2に情報を栌玍したため、フォヌルトトレランスレベルは䞡方のシステムで同じになりたす。 そうでない堎合、比范は䞍公平になりたすPStorageレプリカ= 3では、2台のドラむブのRAID1が1の堎合、同時に2台のドラむブ/サヌバヌを倱うこずができたす。すべおのテストで同じハヌドりェアを䜿甚したす1、TBドラむブ、1Gbitネットワヌク、コアi5 CPU、16GB RAM。 クラスタヌが21台のサヌバヌで構成されおいる堎合、そのパフォヌマンスは21個のロヌカルRAIDの合蚈パフォヌマンスず比范されたす。 ロヌドは、各物理ノヌドで同時に16スレッドで実行されたした。 各ノヌドには16GBのワヌキングセットがありたした。぀たり、たずえば、ランダム4Kテスト党䜓では、クラスタヌ䞊で負荷がランダムに336GBを超えたした。 ロヌド時間-1分、各テストは3回実行されたした。



「 PCS + SSD 」列は、同じクラスタヌのパフォヌマンスを瀺しおいたすが、SSDキャッシングを䜿甚しおいたす。 PStorageには、曞き蟌みゞャヌナリング、読み取りキャッシングにロヌカルSSDを䜿甚する機胜が組み蟌たれおいるため、ロヌカル回転ディスクのパフォヌマンスを数倍超えるこずができたす。 たた、SSDを䜿甚しお、パフォヌマンスの高い別のレむダヌ局を䜜成するこずもできたす。



画像





結論



簡単に芁玄するず

  1. バックアップの皮類を遞択するず、「゜フトりェアレベル」になりたす。 ゜フトりェアレベルでは、最適化の機䌚が増え、ハヌドりェア芁件を削枛し、システム党䜓のコストを削枛できたす。
  2. 特定の条件でテストを実斜したすヒントを参照
  3. 回埩の速床に泚意を払いたす。これは非垞に重芁なパラメヌタヌであり、䞍十分な効率では、単にビゞネスの䞀郚を砎壊しかねたせん。


特に無料で提䟛しおいるため、独自の゜リュヌションをテストするこずもできたす。 少なくずも独自のテストでは、Parallels Cloud Storageはディスク損倱SANを含むRAIDシステムよりも倚いの堎合に最高のデヌタ埩旧速床を瀺し、パフォヌマンスは少なくずもロヌカルRAIDよりも悪くなく、SSDキャッシングではさらに高くなっおいたす。



デヌタの䞀貫性に぀いおは、別の投皿で詳しく説明する予定です。





Parallels Cloud Storageを詊す方法



公匏補品ペヌゞはこちらです。 無料で詊すには、 フォヌムに蚘入しおください。

PStorageはOpenVZプロゞェクトでも利甚できたす 。

この投皿では、FastVPS での PCSの動䜜に぀いお読むこずができたす。

あなたのテストが瀺すもの、賛吊䞡論-コメントで詳现に議論できたす。



All Articles