关于负载均衡的原理,我I在上一篇写的很详细~~(大概吧)~~ 了
链接在这:博客地址点我
话不多说!
实验环境
使用 VM虚拟机进行演示
共使用 六 台虚拟机:
1、负载均衡调度器,同时作为进出口网关 CentOS7.6
2、三台 节点服务器 CentOS7.6
3、一台 NFS 文件服务器 CentOS7.6
4、一台 客户端 使用 Win10
实验目的
客户端20端访问服务器群集,验证轮询
来吧!!展示!!!
配置NFS文件服务器
[root@localhost ~]# yum -y install nfs-utils ##安装nfs组件
[root@localhost ~]# yum -y install rpcbind ##RPC服务
修改IP地址和网卡模式
NFS服务要处于内网192.168.10段,网关指向一会配置的LVM的局域网接口
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
IPADDR=192.168.10.20 ##IP地址
PREFIX=24 ##子网掩码
GATEWAY=192.168.10.1 ##网关
[root@localhost ~]# systemctl restart network
设置NFS
[root@localhost ~]# mkdir /NFSshare
[root@localhost ~]# cd /NFSshare/
[root@localhost NFSshare]# mkdir zero one two
[root@localhost NFSshare]# vim /etc/exports ##现网中只要指向一个就可以,因为全部服务器的内容要一样,不会影响使用
/NFSshare/zero 192.168.10.0/24(rw,sync)
/NFSshare/one 192.168.10.0/24(rw,sync)
/NFSshare/two 192.168.10.0/24(rw,sync)
[root@localhost NFSshare]# systemctl start nfs
[root@localhost NFSshare]# systemctl start rpcbind
[root@localhost NFSshare]# showmount -e
Export list for localhost.localdomain:
/NFSshare/one 192.168.10.0/24
/NFSshare/zero 192.168.10.0/24
/NFSshare/two 192.168.10.0/24
配置节点服务器
我们配置Apache来验证
三台服务器均安装HTTPD,关闭防火墙
[root@5centos ~]# yum -y install httpd
[root@5centos ~]# setenforce 0
[root@5centos ~]# iptables -F
配置IP为 192.168.10 网段
分别为 192.168.10.21
192.168.10.22
192.168.10.23
[root@5centos ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
IPADDR=192.168.10.21 ##另外两条如上面的配置
PREFIX=24
GATEWAY=192.168.10.1
[root@5centos ~]# systemctl restart network
查看 NFS 是否成功
[root@5centos ~]# showmount -e 192.168.10.20
Export list for 192.168.10.20:
/NFSshare/two 192.168.10.0/24
/NFSshare/one 192.168.10.0/24
/NFSshare/zero 192.168.10.0/24
设置 自动挂载,三个共享文件夹给三台节点服务器
扫描二维码关注公众号,回复:
11783048 查看本文章
[root@5centos ~]# vim /etc/fstab
节点 一
192.168.10.20:/NFSshare/zero /var/www/html nfs defaults 0 0
[root@5centos ~]# mount -a ##测试挂载
节点 二
[root@localhost ~]# vim /etc/fstab
192.168.10.20:/NFSshare/one /var/www/html nfs defaults 0 0
[root@localhost ~]# mount -a
节点 三
[root@7CentOS ~]# vim /etc/fstab
192.168.10.20:/NFSshare/two /var/www/html nfs defaults 0 0
[root@7CentOS ~]# mount -a
在 NFS 服务器上配置 Apache 主页文件
[root@localhost NFSshare]# echo "<h1>This is ZERO.</h1> " > /NFSshare/zero/index.html
[root@localhost NFSshare]# echo "<h1>This is ONE.</h1> " > /NFSshare/one/index.html
[root@localhost NFSshare]# echo "<h1>This is TWO.</h1> " > /NFSshare/two/index.html
三台节点开启 HTTP 服务
[root@5centos ~]# systemctl start httpd
配置 LVS
LVS
[root@4CentOS ~]# modprobe ip_vs ##加载 ip_vs 模块
[root@4CentOS ~]# 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
安装 管理工具
[root@4CentOS ~]# yum -y install ipvsadm
设置双网卡,并设置 IP 地址
[root@4CentOS ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
DEVICE="ens33"
ONBOOT="yes"
IPADDR="20.0.0.1"
PREFIX="24"
GATEWAY="20.0.0.1"
[root@4CentOS ~]# cd /etc/sysconfig/network-scripts/
[root@4CentOS network-scripts]# cp ifcfg-ens33 ifcfg-ens34 ##为新网卡增加配置文件
[root@4CentOS network-scripts]# vim ifcfg-ens34
##删除 UUID
NAME="ens34"
DEVICE="ens34"
ONBOOT="yes"
IPADDR="192.168.10.1"
PREFIX="24"
GATEWAY="192.168.10.1"
[root@4CentOS network-scripts]# systemctl restart network
[root@4CentOS network-scripts]# ip a s
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:0c:29:99:ce:e5 brd ff:ff:ff:ff:ff:ff
inet 20.0.0.1/24 brd 20.0.0.255 scope global noprefixroute ens33
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe99:cee5/64 scope link
valid_lft forever preferred_lft forever
5: ens34: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:0c:29:99:ce:ef brd ff:ff:ff:ff:ff:ff
inet 192.168.10.1/24 brd 192.168.10.255 scope global noprefixroute ens34
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe99:ceef/64 scope link
valid_lft forever preferred_lft forever
制作 LVS-NAT
[root@4CentOS /]# echo "1" > /proc/sys/net/ipv4/ip_forward ##开启地址转发
[root@4CentOS /]# ipvsadm -C ##清除缓存
[root@4CentOS /]# ipvsadm -A -t 20.0.0.1:80 -s rr ##-A指向 Vip,-t tcp协议,rr 轮询,-m nat
[root@4CentOS /]# ipvsadm -a -t 20.0.0.1:80 -r 192.168.10.21:80 -m ##-a 指向调度 -r 节点IP
[root@4CentOS /]# ipvsadm -a -t 20.0.0.1:80 -r 192.168.10.22:80 -m
[root@4CentOS /]# ipvsadm -a -t 20.0.0.1:80 -r 192.168.10.23:80 -m
[root@4CentOS /]# ipvsadm ##启动 LVS 功能
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 4CentOS:http rr
-> 192.168.10.21:http Masq 1 0 0
-> 192.168.10.22:http Masq 1 0 0
-> 192.168.10.23:http Masq 1 0 0
验证实验
设置 客户端 Win 10 的 IP 地址
使用浏览器访问 20.0.0.1
注:大概分割 20 秒访问,不然会打开网页缓存