Go to main content
Oracle® ZFS Storage Appliance 管理ガイド、Release OS8.7.0

印刷ビューの終了

更新: 2017 年 3 月
 
 

クラスタ化におけるストレージの考慮点

Oracle ZFS Storage Appliance をクラスタ構成で使用するようにサイズ変更する際は、次の 2 つの考慮点が重要となります。

  • すべてのプールが同じコントローラによって所有されているか、または 2 つのコントローラの間で分割されているか。

  • 単一障害点なし (NSPF) のプールが必要かどうか。

ストレージプールの所有権の割り当て - おそらく、もっとも重要な決定は、すべてのストレージプールの所有権を同じコントローラに割り当てるか、ストレージプール間で分割するかです。表 14に示すようないくつかのトレードオフを考慮する必要があります。

通常、公称動作中のスループットを最適化する場合や、フェイルオーバー後のパフォーマンスに問題がない場合を除いて、プールは単一のコントローラに構成するようにしてください。フェイルオーバーした状態時のパフォーマンス特性の正確な変更は、ワークロードの性質やサイズに大きく依存します。一般に、コントローラが特定の軸で最大パフォーマンスに近づくほど、そのコントローラのピアでワークロードをテイクオーバーしたときの、その軸のパフォーマンス低下が大きくなります。当然、複数のプールがある場合は、この低下が両方のワークロードに適用されます。

読み取りキャッシュデバイスは、構成によってコントローラまたはディスクシェルフにあります。

コントローラスロット (内部 L2ARC) に位置する読み取りキャッシュデバイスは、テイクオーバーまたはフェイルバックの状況でデータプールに従いません。読み取りキャッシュデバイスは、デバイスが存在するノード上で読み取りキャッシュデバイスに割り当てられたプールがインポートされる場合のみ、特定のクラスタノードでアクティブになります。追加の構成手順がない場合、フェイルオーバーのために移行されたプールで読み取りキャッシュを使用できません。クラスタピアに所有されていないプールで読み取りキャッシュデバイスを有効にするため、所有されていないノード上のプールを引き継いだあと、ストレージを追加し、構成するキャッシュデバイスを選択します。クラスタノードでの読み取りキャッシュデバイスは、ストレージの構成のドキュメントの説明どおりに構成する必要があります。書き込み最適化ログデバイスはストレージファブリックに配置され、どちらのコントローラがプールをインポートしても常にアクセス可能です。

読み取りキャッシュデバイスがディスクシェルフ (外部 L2ARC) にある場合、読み取りキャッシュは常に使用可能です。フェイルバックまたはテイクオーバー操作中に、読み取りキャッシュはコントローラ間で共有可能のままになります。この場合、読み取りパフォーマンスが維持されます。外部読み取りキャッシュ構成の詳細については、Oracle ZFS Storage Appliance 顧客サービスマニュアルのディスクシェルフの構成を参照してください。

NSPF の構成 - 2 番目に重要なストレージの考慮点は、単一障害点なし (NSPF) でプール構成を使用することです。クラスタ化を使用することはアプリケーションが可用性を非常に重視することを意味するため、単一のディスクシェルフの障害で可用性が失われるような方法でストレージプールを構成する正当な理由はほとんどありません。このアプローチの弱点は、NSPF 構成では、単一障害点で構成を行うよりディスクシェルフの数がきわめて多く必要になる点です。必要とされる容量が非常に少ない場合、目的の RAID レベルで NSPF を提供するのに十分なディスクシェルフを設置することが経済的ではない場合があります。

次の表では、クラスタ構成についてのストレージプールの所有権について説明します。

表 14  クラスタ化におけるストレージプールの考慮点
変数
単一コントローラのプールの所有権
異なるコントローラによって所有される複数のプール
合計スループット (通常の操作)
いつでも最大で合計 CPU リソースの 50%、DRAM の 50%、および合計ネットワーク接続の 50% をサービスの提供に使用できます。この方法は単純です。単一のコントローラのみがクライアントリクエストを処理するため、他方のコントローラはアイドル状態です。
いつでも全 CPU および DRAM リソースをサービスの提供に使用できます。いつでも最大で全ネットワーク接続の 50% を使用できます (フェイルオーバーをサポートするには、各コントローラにダークネットワークデバイスが必要です)。
合計スループット (フェイルオーバー)
公称動作に関連するスループットの変更はありません。
動作しているコントローラのリソースの 100% がサービスの提供に使用されます。公称動作に関連する合計スループットは、公称動作中の使用率に応じて、およそ 40% から 100% の範囲です。
I/O 待機時間
フェイルバックまたはテイクオーバー操作中は内部読み取りキャッシュを使用できず、このことにより、使用可能な読み取りキャッシュに適合する読み取りの多いワークロードの待機時間が大幅に増加する可能性があります。書き込み操作の待機時間は影響を受けません。
外部読み取りキャッシュ構成 (EL2ARC) の場合、読み取りパフォーマンスは影響を受けません。フェイルバックまたはテイクオーバー操作中に読み取りキャッシュがクラスタピア間で共有され、結果として読み取り待機時間はありません。
フェイルバックまたはテイクオーバー操作中は内部読み取りキャッシュを使用できず、このことにより、使用可能な読み取りキャッシュに適合する読み取りの多いワークロードの待機時間が大幅に増加する可能性があります。コントローラリソースの競合が大きくなると、読み取り操作と書き込み操作の両方の待機時間が増加する可能性があります。これは、通常のコントローラではなく、動作しているコントローラで 2 つのワークロードが実行されると発生します。各コントローラでの公称ワークロードがコントローラの最大性能に達すると、フェイルオーバー状態の待機時間が非常に長くなる可能性があります。
外部読み取りキャッシュ構成 (EL2ARC) の場合、読み取りパフォーマンスは影響を受けません。フェイルバックまたはテイクオーバー操作中に読み取りキャッシュがクラスタピア間で共有され、結果として読み取り待機時間はありません。
ストレージ柔軟性
使用可能な物理ストレージはすべて、シェアおよび LUN で使用できます。
特定のプールに割り当てられたストレージのみが、そのプールのシェアおよび LUN で使用できます。ストレージはプール間でシェアされないため、他方のプールには空き領域があるときに 1 つのプールが満杯になると、一部のストレージが無駄になる可能性があります。
ネットワーク接続
各コントローラ上のすべてのネットワークデバイスを、そのコントローラがサービスを提供している間に使用できます。
各コントローラ上の全ネットワークデバイスの半分のみを、そのコントローラがサービスを提供している間に使用できます。したがって、物理的に別々のネットワークの半数にしか各プールを接続できません。

関連トピック