2.6. データの冗長性について

Acronis Cyber Infrastructureでは、データを冗長化することでデータのすべての部分を保護します。つまり、データの各部分のコピーが複数の異なるStorage Nodeに保存され、一部のStorage Nodeにアクセスできなくなった場合でもデータを確実に利用できるようにします。

Acronis Cyber Infrastructureでは、必要な数のコピーをクラスター内で自動的に維持し、すべてのコピーが必ず最新の状態になるようにします。ストレージノードにアクセスできなくなった場合、そのストレージノードからのコピーは、正常なストレージノードに配信された新しいコピーによって置き換えられます。ダウンタイム後にStorage Nodeに再びアクセスできるようになると、そのStorage Node上の古いコピーが更新されます。

冗長性は、レプリケーションまたはイレージャーコーディングのどちらかの方法を使用して確保できます(この詳細については、次のセクションで説明します)。選択した方法によって、データの1つの部分のサイズとクラスターに維持されるコピーの数が決まります。一般的には、レプリケーションの方がパフォーマンスが高く、イレージャーコーディングの方がデータに利用できる記憶域スペースが多くなります(表を参照してください)。

Acronis Cyber Infrastructureでは、各冗長化方法で複数のモードをサポートしています。次の表では、さまざまな冗長性モードでのデータのオーバーヘッドについて説明します。最初の3行はレプリケーションで、残りの行はイレージャーコーディングです。

表 2.6.1 冗長性モードの比較
冗長性モード 必要な最小ノード数 データの損失が発生しない障害ノードの数 ストレージのオーバーヘッド(%) 100GBのデータを保存するために必要なRAW領域
1つのレプリカ(冗長性なし) 1 0 0 100GB
2つのレプリカ 2 1 100 200GB
3つのレプリカ 3 2 200 300GB
エンコード1+0(冗長性なし) 1 0 0 100GB
エンコード1+1 2 1 100 200GB
エンコード1+2 3 2 200 300GB
エンコード3+1 4 1 33 133GB
エンコード3+2 5 2 67 167GB
エンコード5+2 7 2 40 140GB
エンコード7+2 9 2 29 129GB
エンコード17+3 20 3 18 118GB

注釈

1+0、1+1、1+2および1+3のエンコードモードは、他のイレージャーコーディングモードを使用するにはノード数が不十分ですが、将来拡張する予定の小規模のクラスター向けに用意されています。冗長性タイプは一度選択すると変更できないため(レプリケーションからイレージャーコーディング、またはその反対)、このモードでクラスターが推奨構成より小さい場合でも、イレージャーコーディングを選択できるようになります。クラスターを拡張したら、より利点の大きい冗長性モードを選択できます。

データの冗長性モードは、ストレージサービスを設定し、仮想マシンにストレージボリュームを作成するときに選択します。選択する冗長性モードにかかわらず、実際のシナリオでは2つのノードで同時に障害が発生することがよくあるため、このような障害を防ぐようにしておくことを強くお勧めします。

すべての冗長性モードでは、1つのストレージノードにアクセスできなくなった場合でも書き込み操作を実行できます。2つのストレージノードにアクセスできなくなった場合、書き込み操作はクラスターが自己修復するまで実行できなくなる可能性があります。

2.6.1. レプリケーションによる冗長性

レプリケーションを使用する場合、Acronis Cyber Infrastructureでは、受信したデータストリームを256MBのチャンクに分割します。各チャンクはレプリケートされ、レプリカは複数の異なるストレージノードに保存され、各ノードには特定のチャンクのレプリカが1つのみ保管されます。

次の図は、「2つのレプリカ」冗長性モードを示しています。

../_images/replication.png

Acronis Cyber InfrastructureでのレプリケーションはRAIDの再構築プロセスと似ていますが、次の点が大きく異なります。

  • Acronis Cyber Infrastructureでのレプリケーションは、典型的なオンラインのRAID 1/5/10再構築よりも高速です。それは、Acronis Cyber Infrastructureではチャンクを並行して複数のストレージノードにレプリケートするためです。
  • クラスター内のストレージノードの数が多くなるほど、クラスターはディスクまたはノードの障害から速くリカバリできます。

レプリケーションのパフォーマンスが高いと、クラスターの冗長性が低下する期間を最小限に抑えることができます。レプリケーションのパフォーマンスは、次の要因の影響を受けます。

  • 使用可能なストレージノードの数。レプリケーションは並行して実行されるため、使用可能なレプリケーション元とレプリケーション先が多くなるほどレプリケーションが速くなります。
  • ストレージノードのディスクのパフォーマンス。
  • ネットワークのパフォーマンス。すべてのレプリカは、ネットワークを経由してストレージノードに転送されます。たとえば、1Gbpsのスループットがボトルネックになる可能性があります(ノードごとのネットワーク要件および推奨事項を参照してください)。
  • クラスター内のデータの分布。一部のストレージノードでは、他のストレージノードよりもレプリケートする必要があるデータの量が多い場合があり、それが原因でレプリケーション中に過負荷が発生する可能性があります。
  • レプリケーション中のクラスター内でのI/Oアクティビティ。

2.6.2. イレージャーコーディングによる冗長性

イレージャーコーディングを使用する場合、Acronis Cyber Infrastructureでは、着信データストリームが特定のサイズのフラグメントに分割されると、各フラグメントが特定の数(M)の1メガバイトチャンクに分割され、特定の数(N)のパリティチャンクを作成して冗長性を確保します。すべてのチャンクはM+N個のストレージノードに分散され、ノードごとに1つのチャンクが保存されます。Storage Nodeで、チャンクは256MBの通常のチャンクに保存されますが、冗長性が既に確保されているため、このチャンクはレプリケートされません。クラスターは、N個のストレージノードで障害が発生しても、データの損失なく耐えられます。

MとNの値は、イレージャーコーディングの冗長性モードの名前に示されています。たとえば、5+2モードの場合、受信データは5MBのフラグメントに分割されて、各フラグメントは5つの1MBチャンクに分割されます。もう2つの1MBパリティチャンクは冗長性を確保するために追加されます。また、Nが2である場合、データはRAID6スキームを使用してエンコードされ、Nが2よりも大きい場合、イレージャーコードが使用されます。

次の図は、5+2モードを表しています。

../_images/erasure_coding.png

2.6.3. 冗長性なし

警告

データを損失する可能性があります。

冗長性がない場合、各チャンクは、ストレージノードごとに1つずつ保存されます。ノードに障害が発生した場合、データが失われる可能性があります。冗長性なしにすることは、どのようなシナリオでも推奨しません。ただし、1つのサーバーでAcronis Cyber Infrastructureを評価する場合を除きます。