前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【玩转CLB】负载均衡后端服务器通过NFS实现文件管理

【玩转CLB】负载均衡后端服务器通过NFS实现文件管理

原创
作者头像
参谋带个长
发布2022-04-28 20:24:57
7810
发布2022-04-28 20:24:57
举报

背景说明

在做负载均衡时有多台Web服务器提供访问服务,通过负载均衡器调度分发。但如果将网站文件都分别部署在所有Web服务器上,则需要对所有Web服务器都进行文件维护,同时需要考虑文件同步问题,这将带来极大的工作量。

解决方案可以将网站文件部署在NFS文件服务器上,多台Web挂载文件服务器的分区,这样只需维护NFS文件服务器上的网站文件即可。方便扩展Web服务器的同时,也极大降低了工作量。

本教程介绍Linux CentOS 7.x下的NFS服务端与客户端的搭建

准备工作

Server端:文件服务器1台

Client端:WEB服务器1台或以上

Server端文件服务器部署

1、安装NFS

代码语言:javascript
复制
yum install nfs-utils rpcbind -y

2、将NFS和rpcbind加入开机启动

代码语言:javascript
复制
systemctl enable nfs
 
systemctl enable rpcbind

3、启动NFS和rpcbind

代码语言:javascript
复制
systemctl start nfs
 
systemctl start rpcbind

4、配置/etc/exports

注意:文件内容请根据实际情况修改,主要是web服务器的内网ip填写正确(这里的192.168.0.2与192.168.0.3表示2台Web服务器的内网IP)

代码语言:javascript
复制
/home/wwwroot 192.168.0.2(rw,async,root_squash) 192.168.0.3(rw,async,root_squash)

括号内参数说明:

rw 在NFS卷上同时允许读取和写入请求。 ro 在NFS卷上只允许读取请求。 sync 只有在更改已提交到稳定存储后才会对请求进行回复。 (默认) async 此选项允许NFS服务器违反NFS协议并在该请求所做的任何更改已提交到稳定存储器之前对请求进行回复。 secure 此选项要求请求源自小于IPPORT_RESERVED(1024)的 Internet端口。 (默认) insecure 此选项接受所有端口。 wdelay 如果其怀疑另一个相关的写入请求可能正在进行或可能很快到达,则延迟向磁盘提交写入请求。 (默认) no_wdelay 如果同时设置了异步,此选项不起作用。如果NFS服务器怀疑另一个相关的写入请求可能正在进行或可能很快到达,则NFS服务器通常会将写入请求延迟提交给磁盘。这允许多个写入请求提交到磁盘,其中一个操作可以提高性能。如果NFS服务器主要接收小的无关请求,这种行为实际上可能会降低性能,因此no_wdelay可用于关闭它。 no_subtree_check 此选项禁用子树检查,它具有温和的安全影响,但可以提高某些情况下的可靠性 root_squash 将请求从uid / gid 0映射到匿名uid / gid。请注意,这不适用于可能同样敏感的任何其他uid或gids,例如用户bin或组工作人员。 all_squash 将所有uids和gids映射到匿名用户。用于NFS导出的公共FTP目录,新闻spool目录等。 no_all_squash Turn off all squashing. (Default) anonuid=UID 这些选项显式设置匿名帐户的uid和gid。此选项主要适用于PC / NFS客户端,您可能希望所有请求显示为来自一个用户。例如,在下面的示例部分中考虑/ home / joe的导出条目,它将所有请求映射到uid 150。

5、检查是否生效

代码语言:javascript
复制
exportfs -rv  #配置立即生效
 
showmount -e  #查看NFS共享的目录

如显示类似于以下内容,表示设置成功

Export list for VM_16_4_centos:

/home/wwwroot 192.168.0.2,192.168.0.3

客户端配置

1、安装NFS

代码语言:javascript
复制
yum install nfs-utils rpcbind -y

2、将NFS和rpcbind加入开机启动

代码语言:javascript
复制
systemctl enable nfs
 
systemctl enable rpcbind

3、启动NFS和RPCbind

代码语言:javascript
复制
systemctl start nfs
 
systemctl start rpcbind

4、配置挂载分区/etc/fstab

注意:这里的192.168.0.1是指NFS文件服务器的内网ip, 请以实际情况为准

代码语言:javascript
复制
192.168.0.1:/home/wwwroot /home/wwwroot nfs defaults,_netdev 0 0

5、检查挂载

代码语言:javascript
复制
mount -a
 
df -TH

此时可以看到挂载的/home/wwwroot分区为192.168.0.1(如下所示)

192.168.0.1:/home/wwwroot nfs4 53G 1.6G 49G 4% /home/wwwroot

注意:每台web服务器都需要安装和挂载

小结

以本教程为例,文件存储在NFS文件服务器的/home/wwwroot上,而每台 web服务器已通过nfs挂载文件服务器路径,在web服务(比如apache)中直接调用/home/wwwroot地址,这样程序文件的部署和修改只需在文件服务器上操作即可。

额外说明

如NFS文件服务器开启防火墙则有可能造成Web服务器挂载失败,可关闭防火墙或做如下配置

代码语言:javascript
复制
firewall-cmd --add-service=nfs --permanent
 
firewall-cmd --reload

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 背景说明
  • 准备工作
  • Server端文件服务器部署
    • 1、安装NFS
      • 2、将NFS和rpcbind加入开机启动
        • 3、启动NFS和rpcbind
          • 4、配置/etc/exports
            • 5、检查是否生效
            • 客户端配置
              • 1、安装NFS
                • 2、将NFS和rpcbind加入开机启动
                  • 3、启动NFS和RPCbind
                    • 4、配置挂载分区/etc/fstab
                      • 5、检查挂载
                      • 小结
                      • 额外说明
                      相关产品与服务
                      负载均衡
                      负载均衡(Cloud Load Balancer,CLB)提供安全快捷的流量分发服务,访问流量经由 CLB 可以自动分配到云中的多台后端服务器上,扩展系统的服务能力并消除单点故障。负载均衡支持亿级连接和千万级并发,可轻松应对大流量访问,满足业务需求。
                      领券
                      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档