nginx负载均衡(二)----部署nfs服务器

一、 nfs服务器

nfs服务器是什么?
网络文件系统,英文Network File System(NFS),是由SUN公司研制的UNIX表示层协议(presentation layer protocol),能使使用者访问网络上别处的文件就像在使用自己的计算机一样。

nfs服务器的作用?
保证网站数据的一致性 不管负载均衡器将请求分配到哪台后台服务器 客户机看到的内容是一样的

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

SAN的优缺点
SAN 存储区域网络 (storage area network)
优点:读写性能好,有灾备
缺点:需要费用

二、部署nfs服务器

在这里插入图片描述

centos8默认安装nfs-utils

1.安装nfs相关软件

 yum install nfs-utils -y

2.启动nfs服务

systemctl start nfs-server #启动nfs服务

查看服务是否正常启动
1.查看进程

[root@nfs_server ~]# ps aux| grep nfs
root       10765  0.0  0.3  50104  2844 ?        Ss   11:57   0:00 /usr/sbin/nfsdcld
root       10774  0.0  0.0      0     0 ?        S    11:57   0:00 [nfsd]
root       10775  0.0  0.0      0     0 ?        S    11:57   0:00 [nfsd]
root       10776  0.0  0.0      0     0 ?        S    11:57   0:00 [nfsd]
root       10777  0.0  0.0      0     0 ?        S    11:57   0:00 [nfsd]
root       10778  0.0  0.0      0     0 ?        S    11:57   0:00 [nfsd]
root       10779  0.0  0.0      0     0 ?        S    11:57   0:00 [nfsd]
root       10780  0.0  0.0      0     0 ?        S    11:57   0:00 [nfsd]
root       10781  0.0  0.0      0     0 ?        S    11:57   0:00 [nfsd]
root       11609  0.0  0.1  12320  1080 pts/1    S+   13:08   0:00 grep --color=auto nfs

2.查看端口号

netstat -anplut | grep nfs
netstat -anplut | grep rfc  #查看rfc服务的端口
  • nfs服务和rfc服务到底是如何实现的?工作原理 RPC 最主要的功能就是在指定每个 NFS 功能所对应的 port number,并且回报给客户端,让客户端可以连结到正确的端口上去。 那 RPC 又是如何知道每个 NFS 的端口呢?这是因为当服务器在启动 NFS时会随机取用数个端口,并主动的向 RPC 注册,因此 RPC 可以知道每个端口对应的 NFS 功能。
  • nfs没有固定的端口 , nfs自己并没有去对外监听某个端口号,而是外包给了rpc服务,rpc帮助nfs去监听端口,然后告诉客户机和本机的那个进程对应的端口连续在这里插入图片描述

3.共享文件

3.1 编辑/etc/exports文件,写好具体的共享的目录和权限

vim /etc/exports

/web  192.168.0.0/24(rw,all_squash,sync)  #文件内容
  • /web 是我们共享的文件夹的路径–>使用绝对路径 -->需要自己新建
  • 192.168.0.0/24 允许过来访问的客户机的ip地址网段 (rw,all_squash,sync) 表示权限的限制
  • rw 表示可读可写 read and write
  • ro 表示只能读 read-only
  • all_squash :任何客户机上的用户过来访问的时候,都把它认为是普通的用户
  • root_squash 当NFS客户端以root管理员访问时,映射为NFS服务器匿名用
  • no_root_squash 当NFS客户端以root管理员访问时,映射为NFS服务器的root管理员
  • sync 同时将数据写入到内存与硬盘中,保证不丢失数据
  • async 优先将数据保存到内存,然后再写入硬盘,效率更高,但可能丢失数据

3.2 创建首页文件

mkdir /web
​cd /web
vim index.html

4.刷新输出文件的列表

[root@nfs_server ~]# exportfs -rv
exporting 192.168.0.106:/download
exporting 192.168.0.0:/web

5.关闭防火墙和selinux

[root@nfs_server download]# systemctl stop firewalld
[root@nfs_server download]# systemctl disable firewalld
Removed /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@nfs_server download]# setenforce 0

6.客户机上挂载nfs服务器上共享的/web和/downolad目录

6.1 安装nfs-utils软件,方便客户机上进行挂载,具有相关命令,例如:showmoun

yum install nfs-utils -y

6.2 查看nfs服务器上共享输出了哪些文件夹

[root@rs2 ~]# showmount -e 192.168.0.110
Export list for 192.168.0.110:
/download 192.168.0.106

6.3 挂载nfs服务器上的目录到本机上

在客户机的本地新建一个目录/web

mkdir /web

将nfs服务器上的/web目录挂载到本地的/web目录,今后访问本地的/web目录,就是访问到nfs服务器上的/web目录
mount 是挂载的命令,可以理解为一种映射
语法: mount nfs服务器的目录 本地的目录

[root@rs2 ~]# mount 192.168.0.110:/web /web   
[root@rs2 ~]# cd /web
[root@rs2 web]# ls
index.html

6.4客户机修改共享文件无权限

客户机上能否有写的权限要看2种权限:

  • 共享权限 --》/etc/exports文件里的权限,例如ro,rw
  • 文件系统里的权限 --》/web 在linux里的权限

nfs修改文件权限

[root@nfs_server download]# ll -d /web
drwxr-xr-x. 2 root root 24 82 11:39 /web
[root@nfs_server download]# ll -d /download
drwxr-xr-x. 2 root root 38 82 13:25 /download
[root@nfs_server download]# chmod a+w /download/
[root@nfs_server download]# ll -d /download
drwxrwxrwx. 2 root root 38 82 13:25 /download
[root@nfs_server download]# chmod a+w /web/
[root@nfs_server download]# ll -d /web
drwxrwxrwx. 2 root root 24 82 11:39 /web

server验证

[root@rs2 web]# cd /download/
[root@rs2 download]# mkdir xx
[root@rs2 download]# ls
boot.tar.gz  hosts  xx

7.开机自动挂载nfs文件系统

可以在real-server上修改/etc/rc.local文件 或者 /etc/fstab文件
修改/etc/rc.local文件

[root@rs1 ~]# vim /etc/rc.local

mount 192.168.0.110:/web /usr/local/scxx/html  #添加此行到文件中

修改/etc/fstab文件

[root@rs1 ~]# vim /etc/fstab

192.168.0.110:/web /usr/local/scxx99/html nfs defaults 0 0  #添加此行到文件中
  • 192.168.0.110:/web 挂载的分区–>nfs的文件系统
  • /usr/local/scxx/html 指定路径
  • nfs 分区类型
  • defaults 挂载选项
  • 0 0 ( 是否支持dump命令进行备份 是否开机的时候进程分区的文件系统的检查,分区的文件系统是否有问题)

本文部分内容只示范了一台机器,其余机器作者这里不一一示范,按照文章内容即可完成对其余机器的部署。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值