CentOSのnfsクライアントの設定でハマったのでメモって置く

Solrのインデキシング用のマシンが
32ビットの限界に到達しちゃったので64ビット化した。
(この辺の詳しい話はそのうち書くように>自分)

で、そんときNFSの設定で少しハマったのでメモって置く。

まずは普通にnfsクライアントの設定
[root@index ~]# uname -a
Linux index 2.6.9-67.ELsmp #1 SMP Fri Nov 16 12:49:06 EST 2007 x86_64 x86_64 x86_64 GNU/Linux

1. 必要なサービスが動いているか確認

[root@index init.d]# chkconfig --list portmap
portmap 0:off 1:off 2:off 3:on 4:on 5:on 6:off

[root@index init.d]# chkconfig --list nfslock
nfslock 0:off 1:off 2:off 3:on 4:on 5:on 6:off

[root@index init.d]# chkconfig --list netfs
netfs 0:off 1:off 2:off 3:on 4:on 5:on 6:off

2. マウントポイントの作成
[root@index init.d]# mkdir /disk_netapp1
[root@index init.d]# mkdir /disk_netapp2

3. fstabに追記
[root@index init.d]# vi /etc/fstab
10.13.167.45:/vol/vol1 /disk_netapp1 nfs rw,hard,intr 0 0
10.13.167.46:/vol/vol1 /disk_netapp2 nfs rw,hard,intr 0 0

4. マウント
[root@index init.d]# mount -a

5. 確認
[root@index init.d]# df -h
Filesystem サイズ 使用 残り 使用% マウント位置
/dev/cciss/c1d0p6 269G 2.4G 253G 1% /
/dev/cciss/c1d0p1 122M 14M 102M 12% /boot
/dev/mapper/VolGroup00-LogVol00
3.3T 103M 3.3T 1% /data
none 2.9G 0 2.9G 0% /dev/shm
10.13.167.45:/vol/vol1
1.1T 805G 309G 73% /disk_netapp1
10.13.167.46:/vol/vol1
1.1T 369G 746G 34% /disk_netapp2

ここまでは順調だったのだけれどここからハマることに。
リブートしてもちゃんとマウントされるか確認したら
エラーになっててだめ。

/var/log/boot.logに残ってたログ

Feb 26 14:40:11 index mount: mount: mount to NFS server '10.13.167.45' failed:
Feb 26 14:40:11 index mount: System Error: No route to host.
Feb 26 14:40:17 index mount: mount: mount to NFS server '10.13.167.46' failed:
Feb 26 14:40:17 index mount: System Error: No route to host.
Feb 26 14:40:17 index netfs: Mounting NFS filesystems: failed
Feb 26 14:40:17 index netfs: Mounting other filesystems: succeeded

ルーティングされてないってどーゆーことよ!
同じセグメントじゃん!
起動後にログインして # mount -a やると問題なくマウントされる。

んー。タイミングの問題なのか?
とりあえずnetfsの実行を最後にしてみる。

# mv /etc/rc3.d/S25netfs /etc/rc3.d/S99netfs

やっぱりダメ。症状おんなじ。

起動後にnetfs実行すると問題なし

[root@index init.d]# /etc/init.d/netfs start
NFS ファイルシステムをマウント中: [ OK ]
他のファイルシステムをマウント中: [ OK ]

こんな書き込みも...。
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?forum=10&topic=22298
sleepかよっ!って突っ込んでたら
こっちにも
http://rctools.sourceforge.jp/akiyama/index.php?cmd=read&page=RoboCup2007%2F%B4%C4%B6%AD%B9%BD%C3%DB%A5%E1%A5%E2%2F%B6%A5%B5%BB%CD%D1%A5%DE%A5%B7%A5%F3
そんなもんなのかなー。
なんかイマイチの気もするが(原因がわかんないままだし)
とりあえずマネしてみる。
start)
[ -n "$NFSFSTAB" ] &&
{
[ ! -f /var/lock/subsys/portmap ] && service portmap start
action "Waiting 60 secs: " sleep 60
action $"Mounting NFS filesystems: " mount -a -t nfs,nfs4

とりあえず自動マウントできた。
すっきりしないけど、やんなきゃイケないことイパーイあるので
とりあえずこれでいいことに。
[shooti@index ~]$ df -h
Filesystem サイズ 使用 残り 使用% マウント位置
/dev/cciss/c1d0p6 269G 2.4G 253G 1% /
/dev/cciss/c1d0p1 122M 14M 102M 12% /boot
/dev/mapper/VolGroup00-LogVol00
3.3T 103M 3.3T 1% /data
none 2.9G 0 2.9G 0% /dev/shm
10.13.167.45:/vol/vol1
1.1T 806G 309G 73% /disk_netapp1
10.13.167.46:/vol/vol1
1.1T 369G 746G 34% /disk_netapp2