nginx如何搭建NFS服务器

    简介

    什么是nfs服务器?

    NFS(Network File System)即网络文件系统,它最大的功能就是可以通过网络,让不同的机器、不同的操作系统可以共享彼此的文件,使用者访问网络上别处的文件就像在使用自己的计算机一样。

    为什么需要nfs服务器

    到同一个地方拿数据,保障网站数据的一致性,不管负载均衡器将请求分配到哪台后端的服务器,客户机看到的内容是一致的。

    nfs服务器是否是最佳的解决方法

    不是的,nfs是比较廉价的解决方法1,一般公司不会使用,性能不是特别高,建议使用专用的存储服务器。

    nfs的优点和缺点

    优点:随便一台linux服务器都可以搭建,成本非常低,构建非常容易
    缺点:读取速度有限,跟网络质量,磁盘IO,CPU,内存等因素有关,再传统的tcp/ip网络传输。

    存储服务器

    优点:读写性能好,有灾备
    缺点:成本高

    RPC

    NFS 支持的功能相当的多,而不同的功能都会使用不同的程序来启动, 每启动一个功能就会启用一些端口来传输数据,因此, NFS 的功能所对应的端口才没有固定,这时候就需要RPC绑定

    RPC 最主要的功能就是在指定每个 NFS 功能所对应的端口.

    搭建NFS服务器

    准备一台centos7.9服务器(192.168.2.58)
    一台客户机(192.168.2.218)

    安装nfs

    服务机

    yum install nfs-utils -y
    service nfs-server start #启动nfs服务
    ps aux |grep nfs #查看nfs进程
    ss -anplut|grep rpc
    vim /etc/exports
    /web 192.168.2.0/24(rw,all_squash,sync)

    rw: 读写
    sync: 写到内存的时候同步刷新到磁盘
    all_squash:共享文件的UID和GID映射匿名用户anonymous(普通用户)。
    aysnc:不实时同步 ,相应速率高,但危险。

    mkdir /web
    vim /web/index.html
    #添加一些内容,退出并保存
    >wyt #我就添加了wyt,退出并保存
    exportfs -rv #刷新输出(类似刷新服务)

    注意关闭防火墙和selinux

    客户机

    yum install nfs-utils -y
    showmount -e 192.168.2.58 #查询nfs服务器共享的文件夹
    mkdir /web #客户机新建文件夹
    mount 192.168.2.58:/web /web 将nfs服务器上的/web目录挂载到本地的/web目录
    ls /web #可以查看到nfs服务器的index.html,挂载后没有写的权限所以需要客户机给文件的权限
    df -Th

    nginx如何搭建NFS服务器

    权限受到两种权限限制

    • 文件系统权限

    • 共享权限

    共享权限已经打开,所以服务机需要授权文件权限

    chmod a+w /web  #/web所有人写的权限

    只要把服务器的index.html挂载到nginx下的html,就可以实现在web下写操作。

    mount 192.168.2.58:/web /usr/local/scwangyutao99/html/

    nginx如何搭建NFS服务器

    挂载

    挂载(mount):其实就是相当于插了一个外接U盘或者移动硬盘。umount就相当于弹出U盘。

    umount /usr/local/scwangyutao99/html/
    #umount.nfs4: /web: device is busy 是因为当前在目录之下

    umount之后显示之前网页

    nginx如何搭建NFS服务器

    设置开机自动挂载

    /etc/rc.local

    sed -i '$a mount 192.168.2.58:/web  /usr/local/scwangyutao99/html/' /etc/rc.local 
    chmod  +x /etc/rc.d/rc.local #赋予可执行权限

    修改/etc/fstab 文件
    /etc/fstab 是linux系统开机自动根据这个文件里的内容挂载磁盘分区

    第一列Device
    第二列Mount point,设备的挂载点。
    第三列filesystem,磁盘文件系统的格式,包括ext2、ext3、reiserfs、nfs、vfat等
    第四列:文件系统的参数,默认defaults
    第五列:能否被dump备份命令作用。0代表不要做dump备份
    1代表要每天进行dump的操作,2代表不定日期的进行dump操作
    第六列:是否检验扇区,0不要检验,1最早检验(一般根目录会选择)
    2,1级别检验完成之后进行检验

    sed -i '$a 192.168.2.58:/web /usr/local/scwangyutao99/html/ nfs defaults 0 0' /etc/fstab

    以上就是nginx如何搭建NFS服务器的详细内容,更多请关注其它相关文章!