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左右。

相关推荐
康熙38bdc4 分钟前
Linux 环境变量
linux·运维·服务器
存储服务专家StorageExpert20 分钟前
DELL SC compellent存储的四种访问方式
运维·服务器·存储维护·emc存储
大G哥1 小时前
记一次K8S 环境应用nginx stable-alpine 解析内部域名失败排查思路
运维·nginx·云原生·容器·kubernetes
醉颜凉2 小时前
银河麒麟桌面操作系统修改默认Shell为Bash
运维·服务器·开发语言·bash·kylin·国产化·银河麒麟操作系统
苦逼IT运维2 小时前
YUM 源与 APT 源的详解及使用指南
linux·运维·ubuntu·centos·devops
仍有未知等待探索3 小时前
Linux 传输层UDP
linux·运维·udp
zeruns8023 小时前
如何搭建自己的域名邮箱服务器?Poste.io邮箱服务器搭建教程,Linux+Docker搭建邮件服务器的教程
linux·运维·服务器·docker·网站
北城青3 小时前
WebRTC Connection Negotiate解决
运维·服务器·webrtc
疯狂的大狗3 小时前
docker进入正在运行的容器,exit后的比较
运维·docker·容器
XY.散人3 小时前
初识Linux · 文件(1)
linux·运维·服务器