实验准备
#负载调度器#
192.168.116.40 #内网
12.0.0.100 #外网
先添加双网卡
#web服务器#
192.168.116.20 #web1
192.168.116.30 #web2
#nfs共享服务#
192.168.116.10 #nfs
systemctl stop firewalld
setenforce 0
1.nfs共享文件
1.在主机上准备
yum install -y rpcbind nfs-utils
准备共享目录
[root@test01 ~]# mkdir /var/www/html/{accp,benet} -p
[root@test01 ~]# cd /var/www/html
[root@test01 html]# ls
accp benet
准备网页内容
[root@test01 html]# echo '<h1>this is test web01 page!</h1>' > accp/test.html
[root@test01 html]# echo '<h1>this is test web02 page!</h1>' > benet/test.html
做共享操作: vim /etc/exports,共享本机的文件目录
/var/www/html/accp 192.168.116.0/24(rw,sync,no_squash)
/var/www/html/benet 192.168.116.0/24(rw,sync,no_squash)
设置开机自启并启动
systemctl enable --now rpcbind nfs
用exportfs -rv刷新,再用showmount -e,查看是否共享出去
2.在第二台服务器上
完成关闭防火墙,showmount -e 主机的ip地址,查看是否能获得共享
[root@localhost ~]# systemctl stop firewalld.service
[root@localhost ~]# setenforce 0
[root@localhost ~]# showmount -e 192.168.116.10
Export list for 192.168.116.10:
/var/www/html/benet 192.168.116.0/24
/var/www/html/accp 192.168.116.0/24
3.第三台也是如此
[root@localhost ~]# systemctl stop firewalld.service
[root@localhost ~]# setenforce 0
[root@localhost ~]# showmount -e 192.168.116.10
Export list for 192.168.116.10:
/var/www/html/benet 192.168.116.0/24
/var/www/html/accp 192.168.116.0/24
2.准备节点服务器
1.安装nginx(给两台服务器都安装)
2.查看nginx的配置文件
vim nginx.conf,发现网页根目录位置在这
[root@localhost nginx]# cd conf.d/
[root@localhost conf.d]# ls
default.conf
[root@localhost conf.d]# vi default.conf
3. 将目录下面文件移到/opt目录下,然后将主机的/var/www/html/benet永久挂载到当前服务器的此目录下
永久挂载:/etc/fstab
mount -a|df -h
再将原来移走的html文件移动回来
到第二台服务器上也是如此配置,挂载共享目录选择accp
把长连接等待关闭,vim/usr/nginx/nginx.conf,调为0,别忘了调完重启nginx!!
3.做LVS负载均衡器
准备一个网关服务器,配置网卡,要一头对内一头对外,配置完后重启
ens33:192.168.116.40
ens36:12.0.0.100
修改网卡地址段,
开一台window主机做客户端
配置网络适配器
配置完后ping测是否成功
配置完记得重启网卡和nginx
在网关服务器上配置路由转发功能
vim /etc/sysctl.conf
查看有没有生效
[root@www network-scripts]# sysctl -p
net.ipv4.ip_forward = 1
[root@www network-scripts]# cat /proc/sys/net/ipv4/ip_forward
1
4.加载模块
modprobe ip_vs
[root@www network-scripts]# cat /proc/net/ip_vs #查看是否开启成功
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
在网关服务器里安装ipvsadm,并开启
搭建本地yum源
[root@www yum.repos.d]# yum -y install ipvsadm
[root@www yum.repos.d]# ipvsadm-save >/etc/sysconfig/ipvsadm
[root@www yum.repos.d]# systemctl start ipvsadm
[root@www yum.repos.d]# ipvsadm -C#清空策略
[root@www yum.repos.d]# ipvsadm -A -t 12.0.0.100:80 -s rr#添加一个调度策略,并设置为轮询
[root@www yum.repos.d]# ipvsadm -a -t 12.0.0.100:80 -r 192.168.116.20:80 -m
#配置指定服务器1地址
[root@www yum.repos.d]# ipvsadm -a -t 12.0.0.100:80 -r 192.168.116.30:80 -m#配置指定服务器2地址
[root@www yum.repos.d]# ipvsadm#重新加载
5.进入客户端测试
访问调度器的地址,刷新,轮询到另外一台
此时~!LVS的NAT模式搭建成功