首页 > 代码库 > Autofs实现NFS实时挂载

Autofs实现NFS实时挂载

部署背景:

  

  因公司的UPS老化,断电后只能支撑20min后,所有服务器都自动来电唤醒启动,此时 挂载nfs的应用服务器 总是比 nfs存储服务器 重启速度快,就是这个时间差,虽然可以实现开机挂载nfs磁盘,但是应用服务器往往无法成功挂载nfs磁盘。


解决方案:


 ①起初,使用开机脚本/etc/rc.local

  sleep 300 

  mount -a 

  基本满足断电重启的需求。


 ②第二阶段,因为时间段300秒这个延迟问题,总是发送不该有的手动操作,于是写了一个类似守护进程脚本,只要磁盘中无法检索nfs磁盘,不停的执行mount -a命令,直至nfs存储服务器的应用完全开启。

  脚本如下

  mount -t nfs 192.168.3.207:/home/www /mnt/ceshi_nfs


 ③鉴于上述守护进程过于模式原因,找到工具autofs解决



部署并开启autofs后测试结果如下:


 

测试用例:

将192.168.3.207服务器的/home/www目录挂载在192.168.3.205服务器/mnt/ceshi_nfs目录

205-virtual-machine:/mnt# apt-get install autofs -y

//配置autofs挂载nfs磁盘
205-virtual-machine:/mnt# cat /etc/auto.master
/mnt/ceshi_nfs /etc/auto.nfs

205-virtual-machine:/mnt# cat /etc/auto.nfs
nfs 192.168.3.207:/home/www


 ①umount掉nfs磁盘,开启autofs测试是否会成功开启;

技术分享

   

# umount /mnt/ceshi_nfs
# df
Filesystem     1K-blocks     Used Available Use% Mounted on
/dev/sda6       19092180 11952848   6146464  67% /
udev              487036        4    487032   1% /dev
tmpfs             100372      904     99468   1% /run
none                5120        0      5120   0% /run/lock
none              501852      144    501708   1% /run/shm
/dev/sda1         439012    99706    312119  25% /boot
# service autofs restart
//使用restart读取配置文件后
# df | grep 207
192.168.30.207:/home/www  19092224  9122560   8976768  51% /mnt/ceshi_nfs
 ③NFS存储服务器服务重启,测试应用服务器是否能够在NFS重新启动后,挂载NFS磁盘;


  ③NFS服务重启,测试应用服务器是否能够在NFS重新启动后,挂载NFS磁盘

技术分享

207:/home/www# /etc/init.d/portmap stop
207:/home/www# /etc/init.d/nfs-kernel-server stop

//此时执行df命令会卡顿,无法得到结果,无法进行读取挂载nfs目录的磁盘操作,时间过长甚至终端无法操作
205-virtual-machine:/mnt# df
^C
205-virtual-machine:/mnt# ls
^C

//等待60s时间过后即可进行自动挂载
205-virtual-machine:/mnt# df | grep 207
192.168.30.207:/home/www  19092224  9122560   8976768  51% /mnt/ceshi_nfs


 ③两服务器同时重启,测试应用服务器是否能够挂载NFS磁盘;

技术分享

207:/home/www# reboot
205-virtual-machine:/mnt# reboot
205-virtual-machine:~# df
Filesystem     1K-blocks     Used Available Use% Mounted on
/dev/sda6       19092180 11952912   6146400  67% /
udev              487036        4    487032   1% /dev
tmpfs             100372      904     99468   1% /run
none                5120        0      5120   0% /run/lock
none              501852      144    501708   1% /run/shm
/dev/sda1         439012    99706    312119  25% /boot

 ③测试结果:

 无法解决开机上述即后无挂载问题

 

 后续,更改配置文件,设置automount周期,问题解决,配置如下:

 

205-virtual-machine:/mnt# cat /etc/auto.master
/mnt/ceshi_nfs /etc/auto.nfs --timeout 30


本文出自 “M层” 博客,请务必保留此出处http://mengix.blog.51cto.com/7194660/1908499

Autofs实现NFS实时挂载