• CentOS NFS配置


    最近想把Web应用的网页文件,数据库和上传文件三部分分离。这样网页文件可以部署在虚拟机上,而且除非修改页面内容,是不需要多次备份的。数据库和上传文件部分可以放在实体服务器上,即便系统崩溃,只要硬盘没有坏,就能很快地恢复数据。上传文件如果和网页文件在不同的机器上,可以使用NFS来实现。

    1. 准备工作:

    用NFS-Client表示Web应用所在的机器,其IP为Client_IP;用NFS-Server表示上传文件所在的机器,其IP为Server_IP。

    NFS-Server上,上传文件所在文件夹为/root/uploadfiles/, NFS-Client上指向NFS-Server:/root/uploadfiles的文件夹是/web/app1/uploads。

    2. 在NFS-Client和NFS-Server上安装nfs和portmap

    一般来说,CentOS安装好之后,就已经安装了nfs和portmap。可以通过CentOS的“软件包管理者”查看一下,如果没有安装,勾选nfs-utils-***, nfs-utils-lib-***, portmap-***这三项,安装。也可以使用下面的命令安装:

    # yum  install  nfs-utils  portmap

    3. 在NFS-Server上配置NFS服务

    1 [NFS-Server]#vim /etc/exports
    2  /root/uploadfiles Client_IP(rw,sync, no_root_squash)
    3 保存exports文件
    4 [NFS-Server]#chkconfig portmap on
    5  [NFS-Server]#chkconfig nfs on
    6 [NFS-Server]#vim /etc/hosts.deny
    7 portmap:ALL
    8 保存
    9 [NFS-Server]#vim /etc/hosts.allow
    10 portmap:Client_IP

        上述代码中,rw表示NFS-Client对/root/uploadfiles文件夹只具有读写权限。sync表示要以同步方式将文件传到NFS-Server。no_root_squash表示当NFS-Client是以root用户登录时,在访问/root/uploadfiles时不会变为nobody用户。而后面两句chkconfig是把portmap和nfs两个服务设置为开机自动启动。需要特别注意的是第二行代码中,Client_IP和后面的"("之间不能有空格。

        4. 在NFS-Server上为mountd, rquotad, lockd配置固定的端口

    因为NFS会为以上三个服务分配临时端口,所以很难在防火墙上控制要开放哪些端口。所以要将几个端口固定住。

    1 [NFS-Server]#vim /etc/services
    2 在文件最后添加:
    3 mountd 1011/tcp #rpc.mountd
    4 mountd 1011/udp #rpc.mountd

    5. 在NFS-Server的防火墙里开放相关端口

    要开放1101/tcp, 1101/udp, 111/tcp, 111/udp, 2049/tcp, 2049/udp这六个端口。如果是通过图形界面配置,可以手工添加前四个端口,而后面2049这两个端口,可以通过勾选上面的nfs4来开放。

    6. 启动portmap和nfs服务

    启动方式是service portmap start; service nfs start;

    可以通过命令# exportfs来检查配置是否成功。如果成功,会显示/etc/exports文件中的内容。

    7. 在客户端挂载服务器的共享文件夹/root/uploadfiles

    1 [NFS-Client]#service portmap start;
    2 [NFS-Client]#showmount -e Server_IP
    3 会显示NFS-Server是否有共享目录
    4 [NFS-Client]#mount -t nfs4 Server_IP:/root/uploadfiles /web/app1/uploads
    5 [NFS-Client]#df -H
    6 能看到多出一个挂载点,说明成功。

     下面就可以在NFS-Client机器上往/web/app1/uploads里操作目录和文件,实际变化的是NFS-Server的/root/uploadfiles。

  • 相关阅读:
    synchronized内置锁
    《JavaScript闯关记》视频版硬广
    想提高团队技术,来试试这个套路!
    从国企到阿里的面试经历(二)
    从国企到阿里的面试经历(一)
    《JavaScript 闯关记》之垃圾回收和内存管理
    《JavaScript 闯关记》之原型及原型链
    《JavaScript 闯关记》之作用域和闭包
    如何排版 微信公众号「代码块」之 MarkEditor
    《JavaScript 闯关记》之事件
  • 原文地址:https://www.cnblogs.com/yuepeng/p/1900604.html
Copyright © 2020-2023  润新知