zoukankan      html  css  js  c++  java
  • NFS服务端与客户端断网,导致作为NFS客户端的Oracle主机hang住

    问题现象:AIX环境,作为NFS客户端,有一个/backup目录,作为Oracle异地备份使用。 网络安全,将NFS客户端与服务端的网络断开后,Oracle生产环境主机hang住,新的连接报错,数据库监控软件告警,DB无法连接。

    排查检查问题现象:

    grid$crsctl stat res -t
    NFS Server ip_addr not responding still trying  无法连接NFS机器
    oracle$sqlplus / as sysdba
    NFS Server ip_addr not responding still trying  无法连接NFS机器

    解决:

    让网络工程师最块速度恢复网络连接。

    疑问?  为什么NFS 服务端与客户端断开网络?  让主机hang???

    http://www.voidcn.com/article/p-aoeeuhzi-cr.html
    
    mount nfs的其它可选参数:   HARD mount和SOFT MOUNT:HARD: NFS CLIENT会不断的尝试与SERVER的连接(在后台,不会给出任何提示信息,在LINUX下有的版本仍然会给出一些提示),
    直到MOUNT上。   例如:mount
    -F nfs -o hard 192.168.0.10:/nfs /nfs   
    对于到底是使用hard还是soft的问题,这主要取决于你访问什么信息有关。例如你是想通过NFS来运行X PROGRAM的话,你绝对不会希望由于一些意外的情况(如网络速度一下子变的很慢,
    插拔了一下网卡插头等)而使系统输出大量的错误信息,如果此时你用的是HARD方式的话,系统就会等待,直到能够重新与NFS SERVER建立连接传输信息。另外如果是非关键数据的话也可以使用SOFT方式,
    如FTP数据等,这样在远程机器暂时连接不上或关闭时就不会挂起你的会话过程。 本次节选的信息非AIX官网信息,但是可以借鉴参考。 https:
    //www.talkwithtrend.com/Question/31767

    Linux测试

    nfs,客户端与服务器端网络断开后。
    客户端主机测试:
    #for ((i=1;i<100000;i++));do (df -h &);done
    让大量的进程执行df -h在后台执行,此时同时执行df -h的进程数量远远超出逻辑cpu数量,此时系统非常卡,但是并未出现 NFS xxx报错,与生产环境的报错。
    但是也导致了主机非常卡,因为此时CPU 忙不过来了。
    #pkill -9 df
    #ps -ef|grep df

    生产环境遇到这个问题可以
    #tail -200f /var/log/messsage 读取NFS 服务端

    Mar 24 20:40:11 test02 kernel: nfs: server 192.168.16.98 not responding, still trying

    #umount -f /nfstest  如果知道路径,可以强力卸载

    总结:1.建议NFS配置特别是AIX主机环境,使用soft  属性,无法连接报错,而非无限期进程hang住连接,直到连接成功(默认).

           soft           If an NFS file operation has a major timeout then report an  I/O  error  to  the
                          calling program.  The default is to continue retrying NFS file operations indef-
                          initely.
    
           hard           If an NFS file operation has a major timeout then report "server not responding"
                          on the console and continue retrying indefinitely.  This is the default.

               2.提前准备应急预案

    AIX 未测试
    # fuser -km /rsync_bk # umount /rsync_bk
    Linux已测试
    #umount -f /nfstest
  • 相关阅读:
    JSP
    token防止表单重复提交
    web应用程序性能优化
    js 优化
    文本查看及处理工具简单命令
    DNS之一---DNS服务及BIND服务,并实现DNS正向与反向解析
    企业级自动化运维工具应用实战ansible
    Linux小试牛刀
    Linux特殊权限及ACL权限
    文件的默认权限UMASK
  • 原文地址:https://www.cnblogs.com/lvcha001/p/13531728.html
Copyright © 2011-2022 走看看