web-dev-qa-db-ja.com

Ubuntu 12.04glusterfsボリュームを起動時にマウントできませんでした

7 KVMゲスト、すべてUbuntu 12.04 LTS 64ビット最小サーバーを実行して、Ubuntu公式リポジトリからglusterfs 3.2.5をテストしました。そのうちの2つは、ミラーリングされたペアを形成します(つまり、replica 2)、そのうちの5つはクライアントです。私はまだこのファイルシステムに慣れていないので、「実践的な」経験を積みたいと思っています。

glusterfsクライアントの/etc/fstabに以下を入力するまで、セットアップはほとんど問題ありませんでした。

192.168.122.120:/testvol /var/local/testvol glusterfs defaults,_netdev 0 0、ここで192.168.122.120は最初の「glusterfsサーバー」のIPアドレスです。

CLIでmanaulmountallまたはmount.glusterfs 192.168.122.120:/testvol /var/local/testvolのいずれかを発行すると、mountはボリュームが正常にインポートされたことを示します。ただし、クライアントを再起動すると、クライアントが再起動した後、ボリュームはマウントされません。

インターネットを検索したところ、 この記事 でしたが、クライアントとサーバーの両方を同じノードで実行していないため、厳密には適用できません。

そこで、厄介な「回避策」として、各クライアントノードのsleep 3 && mount.glusterfs 192.168.122.120:/testvol /var/local/testvol/etc/rc.localを挿入しました。私の知る限り、各ノードにボリュームをマウントできるようです。

しかし、これは非常に醜いので、このglusterfs-non-boot-time-mountingの問題を正しく解決する方法についてのヒントをいただければ幸いです。

すべてのノードの/etc/hostsにホスト名が入力されていますが、最初の「glusterfsサーバー」のIPアドレスを使用したことに注意してください。 IPアドレスの使用はより堅牢であると思いました。

-ザック

1
user183394

考えられる解決策は、fstabにnobootwaitとdirect-io-modeを追加することです。次のようにしてみてください。

     serverip:/vol  mountpoint  glusterfs  defaults,nobootwait,_netdev,direct-io-mode=disable  0       0

また、/ etc/init/mounting-glusterfs.confを確認して、以下を追加します。

     exec start wait-for-state WAIT_FOR=networking WAITER=mounting-glusterfs-$MOUNTPOINT

私は過去に同様の問題を経験し、上記の組み合わせ/構成を使用して解決したので、これが役立つことを願っています。

1
ostendali

Fstabにログを追加すると、もう少し情報が得られるのではないかと思います。管理ガイドのfstab構成オプションを参照してください。 http://www.gluster.org/wp-content/uploads/2012/05/Gluster_File_System-3.3.0-Administration_Guide-en-US.pdf

6.1.2.2。ボリュームの自動マウントGlusterボリュームを自動的にマウントするには•ボリュームをマウントするには、/ etc/fstabファイルを編集して追加します

次の行:HOSTNAME-OR-IPADDRESS:/VOLNAME MOUNTDIR glusterfs defaults,_netdev 0 0

例えば:

server1:/test-volume /mnt/glusterfs glusterfs defaults,_netdev 0 0

取り付けオプション

Mount -t glusterfsコマンドを使用する場合は、次のオプションを指定できます。すべてのオプションをコンマで区切る必要があることに注意してください。

  • backupvolfile-server = server-name
  • fetch-attempts = N(Nは試行回数)
  • log-level = loglevel log-file = logfile
  • direct-io-mode = [enable | disable]
  • ro(読み取り専用マウント用)acl(posix-ACLを有効にするため)
  • ワーム(マウントをWORMにする-Write Once、Read Manyタイプ)
  • selinux(GlusterFSマウントでselinuxを有効にする

例えば: mount -t glusterfs -o backupvolfile-server=volfile_server2,fetchattempts=2,log-level=WARNING,log-file=/var/log/gluster.log server1:/testvolume /mnt/glusterfs

名前の代わりにIPを使用する方が簡単で、信頼性が高いと思う傾向があります。

0
Neal Magee