|
下文给大家带来如何构建 LVS-NAT 负载均衡群集,希望能够给大家在实际运用中带来一定的帮助,负载均衡涉及的东西比较多,理论也不多,网上有很多书籍,今天我们就用Vecloud在行业内累计的经验来做一个解答。
构建 LVS-NAT 负载均衡群集实验环境:主机操作系统IP地址LVS 负载调度器CentOS 7.3 x86_64内:192.168.1.100 外:12.0.0.1web 云服务器 1CentOS 7.3 x86_64192.168.1.101web 服务器 2CentOS 7.3 x86_64192.168.1.102NFS 共享储存CentOS 7.3 x86_64192.168.1.103客户机Windows 712.0.0.12
注:LVS 调度器充当网关服务器,要有两个网卡。
配置 NFS关闭防火墙 ,编辑配置文件:vim /etc/exports/opt/benet 192.168.1.0/24(rw,sync) #读写 远程同步/opt/accp 192.168.1.0/24(rw,sync)注:共享的文件夹 ,如果不存在要创建 ,现实中可以做磁盘阵列挂载在共享的文件夹 。
创建共享的文件夹,添加文件的权限:mkdir /opt/benet /opt/accp chmod 777 benet accp 开启服务 ,发布共享 :systemctl start rpcbind.service #开启远程过程调用协议systemctl start nfs.service #开启nfs服务exportfs -rv #发布共享showmount -e 192.168.1.103 #测试本机是否共享注:有些系统可能 ,没有安装 nfs-utils 用于NFS共享发布和访问 。
配置 web 服务器安装 httpd 服务 ,编辑配置文件:vim /usr/local/apache/conf/httpd.conf Listen 192.168.1.101:80 #修改IP ServerName www.yun.com:80 #更改域名 挂载 NFS 提供的文件共享:showmount -e 192.168.1.103 #检测是否有共享文件mount.nfs 192.168.1.103:/opt/benet /var/www/html #把NFS 提供的共享文件 挂载在httpd 站点里 添加一个 httpd 首页 ,关闭防火墙 :echo "this is benet " > /var/www/html/index.htmlsystemctl stop firewalld.service 注:可以本地测试能否打开测试首页 ,两台 web 服务器配置一样 ,添加不一样的首页以作区分 。
配置 LVS 负载调度器安装双网卡 ,作为网关服务器使用 。开启路由转发功能:vim /etc/sysctl.conf net.ipv4.ip_forward=1 #添加 sysctl -p #立即生效加载 LVS 模板:modprobe ip_vs #加载模板 cat /proc/net/ip_vs #查看版本信息安装管理软件 ,添加服务器节点 ,开启服务:yum install ipvsadm -y ipvsadm -C #清除服务器节点ipvsadm -A -t 12.0.0.1:80 -s rr #添加虚拟服务器ipvsadm -a -t 12.0.0.1:80 -r 192.168.1.101:80 -mipvsadm -a -t 12.0.0.1:80 -r 192.168.1.102:80 -mipvsadm --save > /etc/sysconfig/ipvsadm #保存策略 (在7以上开启ipvsadm服务需要)ipvsadm -ln #查看节点状态ipvsadm #开启服务注:-A 添加虚拟服务器、 -s 负载调度算法、 rr 轮询 、 -a 添加真实服务器 、-t 指定虚拟IP及TCP端口、-r 指定真实IP及TCP端口、-m 使用 NAT 群集模式 、-d 删除
设置防火墙规则:iptables -t nat -F #清除nat表里的规则iptables -F #清除防火墙默认表规则链iptables -t nat -A POSTROUTING -o ens34 -s 192.168.1.0/24 -j SNAT --to-source 12.0.0.1 注: -o 出口网卡 12.0.0.1 网卡名称
测试打开 win 访问 12.0.0.1
注:有时候刷新可能不会跳转,需要清除缓存。 |
|