LVS负载均衡集群企业级应用实战-LVS-DR(四)

目录

LVS-DR

[一. 环境准备](#一. 环境准备)

[二. 对虚拟主机操作](#二. 对虚拟主机操作)

[三. 对真实服务器操作](#三. 对真实服务器操作)

[四. 打开网页测试](#四. 打开网页测试)


LVS-DR

一. 环境准备

三台虚拟机,都要在同一网段内,统一关闭防火墙和selinux,时间同步,配置好YUM源。系统用centos和roucky都行。

|-----------|-------------------------------------------|-------|-------------|-----------|
| 主机名 | 主机IP | 模拟服务器 | 系统 | 用途 |
| localhost | VIP: 192.168.226.136 DIP: 192.168.226.137 | 虚拟服务器 | Rocky_linux | 负载均衡机分发IP |
| localhost | 192.168.226.100 | 真实服务器 | Centos7 | 后端服务 |
| localhost | 192.168.226.99 | 真实服务器 | Centos7 | 后端服务 |
| localhost | 10.35.186.197 | 客户端 | windows10 | 当成客户访问 |

二. 对虚拟主机操作

注意:这里是对虚拟主机操作,规划好主机

在设置中添加一块网卡,两个网卡都使用NAT模式,然后打开虚拟机。

查看ip,有两个不同网段IP就成功了。

bash 复制代码
[root@localhost ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:0c:29:d9:a7:1d brd ff:ff:ff:ff:ff:ff
    altname enp2s1
    inet 192.168.226.136/24 brd 192.168.226.255 scope global dynamic noprefixroute ens33
       valid_lft 1169sec preferred_lft 1169sec
    inet6 fe80::27d2:b5dd:fed:2361/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
3: ens37: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:0c:29:d9:a7:27 brd ff:ff:ff:ff:ff:ff
    altname enp2s5
    inet 192.168.226.137/24 brd 192.168.226.255 scope global dynamic noprefixroute ens37
       valid_lft 1169sec preferred_lft 1169sec
    inet6 fe80::553c:db7a:2d1b:33c/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever

下载ipvsadm

bash 复制代码
yum install -y ipvsadm

添加虚拟服务器和真实服务器,并设置算法,这里用rr,然后保存规则。

bash 复制代码
ipvsadm -A -t 192.168.226.136:80 -s rr
ipvsadm -a -t 192.168.226.136:80 -r 192.168.226.99:80 
ipvsadm -a -t 192.168.226.136:80 -r 192.168.226.100:80 -g
ipvsadm-save > /etc/sysconfig/ipvsadm
#添加真实服务器时,后面的-g是指定DR模式,默认也就是DR模式,不写就是使用默认的,NAT需要使用-m参数

注意:使用ipvsadm -ln 检查是否配置正确

bash 复制代码
[root@localhost ~]# ipvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.226.136:80 rr
  -> 192.168.226.99:80            Route   1      0          0         
  -> 192.168.226.100:80           Route   1      0          0   

启动服务并设置开机自启

bash 复制代码
systemctl enable --now ipvsadm

三. 对真实服务器操作

对192.168.226.99和192.168.226.100操作

下载nginx

bash 复制代码
yum install -y nginx
bash 复制代码
修改默认打开的网站用来识别来自哪个服务器
 
#对192.168.226.99执行
echo "web-server111111" > /usr/share/nginx/html/index.html
 
#对192.168.226.100执行
echo "web-server222222" > /usr/share/nginx/html/index.html

开启服务并设置开机自启

bash 复制代码
systemctl start nginx
systemctl enable nginx

在lo接口上绑定VIP

bash 复制代码
ip addr add dev lo 192.168.226.136/32

忽略arp广播

bash 复制代码
echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore

匹配精确ip地址回包

bash 复制代码
echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce

重启nginx

bash 复制代码
systemctl restart nginx

四. 打开网页测试

在windows中应访问VIP,即192.168.226.136,打开浏览器进入无痕模式输入IP即可看到信息,多次刷新,也可看到两个主机会切换,记得用无痕模式,有些时候浏览器缓存会导致刷新并不会切换网页信息。因为我们添加真实服务器IP时,没有指定权重,那么默认两个权重是一样的,所以多次刷新,跳转页面的比例应在1:1左右。

相关推荐
真真-真真7 分钟前
WebXR
linux·运维·服务器
wanhengidc1 小时前
短视频运营行业该如何选择服务器?
运维·服务器
雨中rain1 小时前
Linux -- 从抢票逻辑理解线程互斥
linux·运维·c++
-KamMinG2 小时前
Centos7.9安装openldap+phpldapadmin+grafana配置LDAP登录最详细步骤 亲测100%能行
运维·grafana
Bessssss2 小时前
centos日志管理,xiao整理
linux·运维·centos
豆是浪个2 小时前
Linux(Centos 7.6)yum源配置
linux·运维·centos
vvw&2 小时前
如何在 Ubuntu 22.04 上安装 Ansible 教程
linux·运维·服务器·ubuntu·开源·ansible·devops
王铁柱子哟-2 小时前
解决 正在下载VS Code 服务器... 问题
运维·服务器
chinayu20073 小时前
虚拟机桥接模式
linux·运维·桥接模式
vvw&3 小时前
如何在 Ubuntu 22.04 上安装 Graylog 开源日志管理平台
linux·运维·服务器·ubuntu·开源·github·graylog