Linuxでクライアント側のNFSフェールオーバーを行う方法


12

NFSストレージにアクセスする必要があるCentOS 6.3クライアントがあります。クラスタ化されたファイルシステムでSANに保存された同じコンテンツを提供する2つのNFSサーバーがあります。必要に応じて、バックアップNFSサーバーにフェールオーバーするようにCentOSを設定するにはどうすればよいですか?私がグーグルをするとき、私はLinuxがこれをサポートしていないことを読み続けますが、クラスター化されたLinux NFSサーバーファームをセットアップする方法に関する情報がたくさんあるので、それは奇妙です...


4
Heartbeatとフローティング仮想IPを使用すると役立ちますか?NFSに限定されず、より一般的なアプローチです。例えば、Arch Linux wiki:Heartbeatを使用したシンプルなIPフェイルオーバーを参照してください。
gertvdijk

2
@gertvdijkによるコメントの2番目です。メインサーバーとフェールオーバーサーバーで同じIPアドレスとホスト名を構成することにより、アクティブ/パッシブフェールオーバーを構成できる場合があります。これが、EMC VG-2ストレージゲートウェイなどの商用NFSファイラーの仕組みです。
ドミトリチュバロフ

ハートビートは機能しますが、これは奇妙な特定の状況です。NFSサーバーはOS X 10.8 Xsanセットアップであり、10.8でハートビートを削除しました(10.7にはありました)。
ダグ

回答:


7

これはautomount(8)デーモンの仕事のように聞こえます。「複製サーバー」のautofs(5)のマニュアルページ(autofs rpmから)を参照してください。次のような行を追加すると信じています

fileserv host1,host2:/server/export/point

クライアントの/etc/auto.miscに移動し、autofsサービスを(再)起動すると、NFSストレージが/ misc / fileservの下に表示されます。読み取り専用でマウントする場合(またはもちろん他のマウントオプション)、マウントオプションとして-roを追加できます。


それは十分に確かでした!ありがとう。メインサーバーがオンラインに戻ったときにメインサーバーに戻ることができれば素晴らしいと思いますが、これは仕事を完了するのに十分に機能します。
ダグ

0

これを行う正しい方法は、GlusterFSを使用することです。GlusterFSは、NFSやCIFSのような基礎となるファイルシステムの上のユーザースペースで実行されるスケールアウトファイルシステムです。

これらはすべて印象的で複雑に聞こえますが、実際には設定は本当に簡単です。正直なところ、15分もかからないはずです。2つのサーバーがあり、それぞれに「ブリック」(ストレージの単位)が定義されています。次に、このサーバープール内にボリュームが定義されます。サーバー間でのデータの複製は自動的に行われ、サーバーの1つが停止した場合のクライアントでのフェールオーバーも同様です。


別の正しい方法はCeph RBDです。
スノーボール14

MooseFSを使用できます。オープンソースであり、フォールトトレラントな分散ファイルシステムです。
TechGeek
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.