Novusストレージシステムの環境と処理
Novus環境とその処理に関して、理解しておくべき重要な点がいくつかあります。
Novus Data DirectorおよびONTAPデータサーバーの内部通信
Novus Data Directorは、ファイルへのアクセスと管理をサポートするために、ONTAPデータ サーバーと通信します。この大半は、ONTAPサーバーではなくNDDによって開始されます。
ONTAPデータサーバーの検出
Novus Data Directorは、利用可能なデータサーバーを検出する必要があります。ONTAPは、Novus Data Directorとの通信を自ら開始することはありません。オペレーターまたはツールは、起動時に使用される `mds.conf`設定ファイルを通じて各データサーバーを登録します。データサーバーは、コマンド `mds-admin ds add`を使用して手動で追加することもできます。各データサーバーは、ホスト、エクスポート、ポート、状態、容量を含め、分散メタデータストア内の行として表現されます。
ONTAPデータサーバーの可用性
各ONTAPデータサーバーの可用性を判断するために、いくつかのプロセスが使用されます。
- ハートビート
-
MDSは、各オンラインデータサーバーに対してTCP経由でNFSv3 NULL RPC呼び出しを送信します。デフォルトでは、ハートビートメッセージを使用して5秒ごとにこの処理を実行します。
- オフラインになります
-
一定回数連続して障害が発生すると、データサーバーはオフラインとマークされます。MDSはそこへの新規ファイルの配置を停止し、クライアントに対し、そのサーバーを参照しているレイアウトを返却するよう通知します。
- 戻ってくる
-
十分な数のプローブが連続して成功すると、オンラインに戻ります。クールダウン期間により、状態が頻繁に切り替わるのを防ぎます。
- クライアント側のエラーはカウントされません
-
クライアントがエラーを報告した場合、それはログに記録されるだけです。ONTAPデータサーバーの状態は、プローブのみによって判断されます。
- ONTAPのフェイルオーバーは透過的です
-
ONTAP HAペアがテイクオーバーを実行した場合、MDSはプローブのタイムアウトによってのみそれを検知します。
ONTAPデータサーバーデータコンテンツ
NDDは、何を保存しているかをONTAPに尋ねることはありません。すべてのバッキングファイルを作成するため、すでに把握しているからです:
-
ファイルが作成されると、MDSはデータサーバーを選択し、それらのサーバー上にバッキングファイルを作成し、その結果を分散メタデータストアのストライプマップに保存します。ストライプマップには、各ストライプとミラーがどのデータサーバーとNFSファイルハンドルに保持されているかが記録されます。
-
ONTAP上のバッキングファイルには、NDDで特定の名前形式があります。
-
容量は、マウントされた各エクスポートでstatvfs()を使用してNDDがONTAPから読み取る唯一の運用値です。
-
ファイルサイズはONTAPに対して検証されません。クライアントのレイアウトコミットに基づいて決定されます。
NDDクラスターの高可用性と回復力
Novus Data Directorsが支えるメタデータプレーンは、システムの高い可用性と耐障害性を確保します。
クラスタ設計
Novusは、NDDサービスの高い可用性と耐障害性を確保するために、マルチホストクラスタを使用しています。
- 3つの障害ドメインを持つ3台のホスト
-
NDDクラスタの最小構成は、別々のサーバー上にデプロイされた3台の物理ホストまたは仮想マシン(VM)です。各ホストは、1つのMDSプロセスと1つのメタデータストアノードを実行します。このクラスタは、ホストが1台失われても存続できるように設計されています。
- すべてのレプリカがサービスを提供します
-
すべてのMDSレプリカは同時にクライアントを処理し、スタンバイモードに指定されるレプリカはありません。正常なレプリカはすべて、BGPを通じて同じVIPを通知します。BFD(高速リンク障害検出)が必要なのは、BGP独自のタイマーだけでは、完全に適切なフェイルオーバーメカニズムとは言えないためです。レプリカは、NFSサービス、ゲートウェイ、およびメタデータストアへの接続がすべてクライアントを処理する準備が整った場合にのみ、VIPを通知します。
- メタデータのレプリケーション
-
分散メタデータストアは、3つの同期コピーを保持します。アービトレータは、両側で書き込みを許可するのではなく、利用不可になることを選択することで、スプリットブレイン シナリオを防ぎます。
- 再起動は安全です
-
MDSプロセスは独自の状態を保持せず、分散メタデータストアが権威あるメタデータを保持します。
制限事項および注意事項
また、以下の制限事項と注意事項にも留意してください:
-
サブツリーの所有権は自動的にフェイルオーバーしません。ネームスペースはサブツリーに分割でき、各サブツリーは1つのMDSによって所有されます。所有者に障害が発生した場合、VIPがすでに移動していても、所有者が復旧するまでそのサブツリーは停止状態になります。
-
各テナントはホストごとに1つのレプリカを持つため、1つのホストの障害はそのホスト上のすべてのテナントに影響します。
-
クライアントはホストIPではなく、VIPをマウントする必要があります。そうしないと、クライアントはフェイルオーバーできません。
-
ハードマウントは、復旧中にブロックされる可能性があります。マウントがブロックされたからといって、データが失われたわけではありません。
-
メンテナンスは必ずレプリカ1つずつ実施してください。VIPからレプリカを外し、まずドレインしてください。