NFSサーバー · 1 min read · Oct 09, 2025
高可用性NFSサーバーの設定
これは“コピー&ペースト”のHowToです!
このチュートリアルに従う最も簡単な方法は、コマンドラインクライアント/SSHクライアント(Windows用の
PuTTY
など)を使用し、コマンドを単純にコピー&ペーストすることです(IPアドレス、ホスト名、パスワードなどの自分の情報を提供する必要がある場所を除く)。これにより、タイプミスを避けることができます。
高可用性NFSサーバーの設定
バージョン 1.0
著者: Falko Timme
最終編集日: 2006年3月7日
このチュートリアルでは、他の高可用性サービス(例えば、負荷分散されているWebサーバークラスターなど)のストレージソリューションとして使用できる高可用性NFSサーバーの設定方法を説明します。同じWebサイトを提供する2つ以上のノードを持つWebサーバークラスターがある場合、これらのノードは同じデータプールにアクセスする必要があります。そうしないと、負荷分散装置がユーザーをノード1またはノードnに誘導しても、各ノードが同じデータを提供できません。これは、すべてのWebサーバーノード(NFSクライアント)がアクセスできるNFSサーバー上のNFS共有を使用することで実現できます。
NFSサーバーが別の「単一障害点」にならないように、高可用性にする必要があります。実際、このチュートリアルでは、DRBDを使用してリアルタイムでデータをミラーリングし、heartbeatを使用して互いに監視する2つのNFSサーバーを作成します。そして、1つのNFSサーバーが失敗した場合、もう1つが静かに引き継ぎます。外部から見ると(例えば、Webサーバーノードから)、これら2つのNFSサーバーは単一のNFSサーバーとして表示されます。
このセットアップでは、2つのNFSサーバーとNFSクライアント(Webサーバークラスターのノードを表す)にDebian Sarge(3.1)を使用します。
まず言いたいのは、これはそのようなシステムを設定する唯一の方法ではないということです。この目標を達成する方法はたくさんありますが、これは私が取る方法です。これがあなたにとって機能することを保証するものではありません!
1 私のセットアップ
この文書では、以下のシステムを使用します:
- NFSサーバー1: server1.example.com、IPアドレス: 192.168.0.172; これをserver1と呼びます。
- NFSサーバー2: server2.example.com、IPアドレス: 192.168.0.173; これをserver2と呼びます。
- 仮想IPアドレス: NFSクラスターを外部に表すために192.168.0.174を使用します。
- NFSクライアント(例:Webサーバークラスターのノード): client.example.com、IPアドレス: 192.168.0.100; NFSクライアントをclientと呼びます。
- /dataディレクトリはserver1とserver2の間でDRBDによってミラーリングされます。NFS共有/data/exportを含みます。
2 server1とserver2の基本インストール
まず、server1とserver2のために2つの基本的なDebianシステムを設定します。このチュートリアルの最初の2ページに記載されているように行うことができます: https://www.howtoforge.com/perfect_setup_debian_sarge。ホスト名として*server1*と*server2*をそれぞれ入力し、ドメインとして*example.com*を入力します。
パーティショニングに関しては、以下のパーティションスキームを使用します:
/dev/sda1 – 100 MB /boot (primary, ext3, Bootable flag: on)
/dev/sda5 – 5000 MB / (logical, ext3)
/dev/sda6 – 1000 MB swap (logical)
/dev/sda7 – 150 MB 未マウント (logical, ext3) (DRBDのメタデータを含む)
/dev/sda8 – 26 GB 未マウント (logical, ext3) (/dataディレクトリを含む)
パーティションのサイズはハードディスクのサイズに応じて変更できます。また、パーティションの名前もハードウェアによって異なる場合があります(例えば、/dev/hda1の代わりに/dev/sda1があるかもしれません)。ただし、/dev/sda7 は128 MBより少し大きい必要があります。なぜなら、このパーティションは128 MBを使用するDRBDのメタデータに使用するからです。また、server1とserver2で/dev/sda7および/dev/sda8 のサイズが同一であることを確認し、マウントしないでください(インストーラーが尋ねるとき:
No mount point is assigned for the ext3 file system in partition #7 of SCSI1 (0,0,0) (sda).
Do you want to return to the partitioning menu?
いいえと答えてください)!/dev/sda8はデータパーティション(つまり、NFS共有)になります。
基本インストールの後、server1とserver2に静的IPアドレス(server1: 192.168.0.172, server2: 192.168.0.173)を設定してください。これは、https://www.howtoforge.com/perfect_setup_debian_sarge_p3の冒頭に記載されています。
その後、両方のシステムで/etc/fstabを確認してください。私のは両方のシステムで次のようになっています:
| # /etc/fstab: static file system information. # # proc /proc proc defaults 0 0 /dev/sda5 / ext3 defaults,errors=remount-ro 0 1 /dev/sda1 /boot ext3 defaults 0 2 /dev/sda6 none swap sw 0 0 /dev/hdc /media/cdrom0 iso9660 ro,user,noauto 0 0 /dev/fd0 /media/floppy0 auto rw,user,noauto 0 0 |
もし、あなたのが次のようになっている場合:
| # /etc/fstab: static file system information. # # proc /proc proc defaults 0 0 /dev/hda5 / ext3 defaults,errors=remount-ro 0 1 /dev/hda1 /boot ext3 defaults 0 2 /dev/hda6 none swap sw 0 0 /dev/hdc /media/cdrom0 iso9660 ro,user,noauto 0 0 /dev/fd0 /media/floppy0 auto rw,user,noauto 0 0 |
その場合、次の設定ファイルでは/dev/hdaを使用することを確認してください。また、/etc/fstabに/dev/sda7(または/dev/hda7)および/dev/sda8(または/dev/hda8…)がリストされていないことを確認してください!
3 システム時間の同期
server1とserver2が同じシステム時間を持つことが重要です。したがって、両方にNTPクライアントをインストールします:
server1/server2:apt-get install ntp ntpdate
その後、両方の時間が同じであることを確認するために、次のコマンドを実行できます。
server1/server2:date
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。