美文网首页
38-综合架构-NFS服务补充

38-综合架构-NFS服务补充

作者: 文娟_狼剩 | 来源:发表于2019-05-26 13:39 被阅读0次

    一、NFS永久挂载

    方法1:/etc/rc.local 开机自启动

    mount -t nfs 172.16.1.31:/upload/ /mnt/
    

    需要添加执行权限:chmod +x /etc/rc.d/rc.local

    方法2:/etc/fstab 开机自动挂载

    172.16.1.31:/upload   /mnt    nfs   defaults     0 0
    

    以上在开机自动挂载中添加一行,
    在centos7中没问题;
    在centos6中失败,因为centos6中开机初始化的时候是先进行挂载,再启动网络,估不生效。解决:启动netfs服务,这个服务在centos7中默认启动

    注:以上两种方法都需要服务端的nfs和rpcbind开机自启动才行,systemctl enabled rpcbind nfs

    二、NFS相关命令和文件

    1> NFS相关命令

    rpcinfo:查询rpc服务注册信息
       参数:-p(指定ip,看那台机器的;什么都不加,就查看当前服务器的rpc信息)         
    showmount:查看nfs服务器共享信息
       参数:-e(指定ip,看那台机器的;什么都不加,就查看当前服务器的nfs信息) 
    mount:挂载
       补充参数:
              -t:指定文件系统类型
             -o:指定挂载参数
    umount:卸载
       参数:
              -lf:强制卸载(慎用)--------适用于无法卸载时
    exportfs:nfs服务的管理命令
    

    2> NFS 相关文件

    /etc/exports:nfs服务端配置文件
    /proc/mounts:挂载文件
    /var/lib/nfs/etab:exports table nfs服务端共享列表(nfs服务端的共享信息)
    

    三、nfs客户端挂载参数

    3.1 跟性能有关

    rsize:读出的区块大小
    wsize:写入的区块大小
    默认大小:
        CentOS5:rsize=1024,wsize=1024
        CentOS6:rsize=131072,wsize=131072           
    

    3.2 跟安全有关

    nosuid:取消设置suid的权限,默认suid
    nodev:是否可以保留装置文件的特殊功能
    noexec:在挂载的文件系统中不允许直接执行任何二进制的程序,即命令和脚本
    noatime:nfs挂载后不会更新文件的atime 访问时间
    nodiratime:nfs挂载后不会更新目录的atime 访问时间
    比如:mount -o rsize=131072,wsize=131072,nosuid,noexec,nodev  172.16.1.31:/nfs  /nfs
    

    四、NFS故障案例:read-only file system (磁盘只读)

    故障模拟:vim /etc/fstab将里面的/跟分区的uuid进行随便修改,记着一定要备份,保存推出之后,reboot重启之后,随便创建个文件,就报read-only file system的错误

    touch: cannot touch ‘/root/alex.txt’: Read-only file system
    mount  -o rw,remount /
    

    第一种:正常情况直接直接在命令行:mount -o rw,remount /就可以,但在CentOS下不行
    第二种:进入光盘的救援模式

    具体步骤:
    1>右键虚拟机,选择"设置",选择光盘,设备状态是已连接和启动时连接,检查确认没有问题,重启虚拟机
    2>重启虚拟机时,在vaware弹出log的界面,快速按一下Esc键(这里是考验你手速的时候了)
    3>在弹出框中选择"CD-ROM Drive",回车之后,进入装系统的页面
    4>选择第三个"Troubeshooting"解决问题的意思,回车之后,进入下一个页面
    5>选择"Rescue a CentOS system"之后按下回车.
    6>稍等之后,进入救援模式
      1)Continue:继续,进去之后自动把磁盘上的跟分区挂载到/mnt/sysimage
      2)Read-only mount:只读挂载
      3)Skip to shell:跳过之后进入到命令行,需要手动挂载
      4)Quit(Reboot):重启
    7>选择3)回车直接进入命令行
      1)mount /dev/sda3 /mnt/sysimage(将原来系统的跟挂载到/mnt/sysimage上)
      2)chroot /mnt/sysimage #把当前系统的根目录设置为 从 /mnt/sysimage
      3)然后vim /etc/fstab #修改磁盘上的文件
    8>reboot #重启

    五、NFS优化、优缺点

    5.1 NFS优化

    5.2 NFS优缺点

    优点:

    • 简单,容易上手,容易掌握。
    • NFS文件系统内数据是在文件系统上的,及数据是能看见的
    • 部署快速,维护简单方便,且可控,满足需求的就是最好的。
    • 可靠,从软件层面上,数据可靠性高,经久耐用。
    • 服务非常稳定

    缺点:

    • 存在单点故障,如果NFS server宕机了,所有客户端都不能访问共享目录。这个在后期的课程会通过负载均衡及高可用方案弥补。
    • 大数据高并发的场合,NFS效率、性能有限(2千万/日以下PV(page view)的网站不是瓶颈,除非网站架构设计太差)。
    • 客户端认证是基于ip和主机名的,权限要根据ID识别,安全性一般(**用于内网则问题不大)。
    • NFS数据是明文的,NFS本身不对数据安全性作验证。
    • 多台客户机挂载一个NFS服务时,连接管理麻烦(耦合性高)。尤其NFS服务端出问题后,所有NFS客户端都处于挂掉状态(测试环境可使用autofs自动挂载解决,正式环境可修复NFS服务或强制卸载)。
    • 设计了同步(实时等待)和异步(解耦)的概念,NFS服务端和客户端相对来说就是耦合度有些高。网站程序也是一样,尽量不要耦合度太高,系统及程序架构师的重要职责就是为程序及架构解耦,让网站的扩展性变得更好。

    相关文章

      网友评论

          本文标题:38-综合架构-NFS服务补充

          本文链接:https://www.haomeiwen.com/subject/ibzbzqtx.html