【云原生】LVS 学不会?来看看这篇,一动手秒会(实验篇)

PS(作者小牢骚):LVS知识理解不了?请看转移至全网最详细讲解LVS(理论篇),你不懂的它都有!!!

一、lvs的nat模式

1、实验环境

主机名角色IP地址
lvs调度器

172.25.254.100(NAT)

192.168.0.100(仅主机)

webserver1真实服务器(RS)192.168.0.10
webserver2真实服务器(RS)192.168.0.20
server测试机172.25.254.254

2、实验步骤

2.1 LVS中开启内核路由功能(LVS)

2.1.1 查看
sysctl -a | grep ip_forward

 可以使用上述命令进行查看,若 net.ipv4.ip_forward = 0,则内核路由功能处于关闭状态。

2.1.2 编辑sysctl.conf文件
vim /etc/sysctl.conf

net.ipv4.ip_forward = 1
2.1.3 生效
sysctl -p

 2.2 设置网关 (webserver1、webserver2)

将两台 RS 网关设置为 192.168.0.100,可以使用 route -n 命令去查看网关情况。

vim /etc/NetworkManager/system-connections/eth0.nmconnection

address1=192.168.0.10/24,192.168.0.100

2.3 apache 服务设置

2.3.1 下载 (LVS、webserver1、webserver2)
dnf install -y httpd
 2.3.2 编辑网页以便测试(webserver1、webserver2)
echo webserver1 > /var/www/html/index.html

echo webserver2 > /var/www/html/index.html
2.3.3 开启 apache 服务 (LVS、webserver1、webserver2)
systemctl enable --now httpd
2.3.4 测试(LVS)
curl 192.168.0.10

curl 192.168.0.20

 2.4 安装LVS软件(LVS)

dnf install -y ipvsadm

 2.5 添加策略(LVS)

ipvsadm -A -t 172.25.254.100:80 -s rr
ipvsadm -a -t 172.25.254.100:80 -r 192.168.0.10 -m
ipvsadm -a -t 172.25.254.100:80 -r 192.168.0.20 -m

查看 LVS 策略命令:

ipvsadm -Ln 

3、测试结果 

在测试机上进行结果测试

for i in {1..10}
> do
> curl 172.25.254.100
> done

二、ipvsadm命令的使用

1、管理集群服务中的增删改

参数参数说明
-A添加
-E

修改

-D删除
#增加
ipvsadm -A -t 172.25.254.100:80 -s rr

#修改
ipvsadm -E -t 172.25.254.100:80 -s wrr

#删除
ipvsadm -D -t 172.25.254.100:80

2、管理集群中 RealServer 的增删改 

参数参数说明
--rate输出速率信息
-C清空lvs策略
-w设定权重

注意:权重一定要设定为 wrr 不能设定为 rr ,否则在测试过程中会报错。 

3、保存策略

#第一种
ipvsadm-save > /etc/sysconfig/ipvsadm
ipvsadm -C
ipvsadm-restore > /etc/sysconfig/ipvsadm

#第二种
systemctl stop ipvsadm.service
vim /etc/sysconfig/ipvsadm
-A -t 172.25.254.100:80 -s rr
-a -t 172.25.254.100:80 -r 192.168.0.10 -m
-a -t 172.25.254.100:80 -r 192.168.0.20 -m
systemctl start ipvsadm.service

 注意:第一种使用 ipvsadm-restore > /etc/sysconfig/ipvsadm 命令之后,/etc/sysconfig/ipvsadm 文件内容清空

三、lvs的dr模式实现

1、实验环境

主机名角色IP地址
client客户机172.25.254.200
router路由机

172.25.254.100(NAT)

192.168.0.100(主机上)

lvs调度器192.168.0.50
webserver1真实服务器(RS)192.168.0.10
webserver2真实服务器(RS)192.168.0.20

2、实验步骤

2.1 设置网关

lvs、webserver1、webserver2上的网关为192.168.0.100

client上的网关为172.25.254.100

2.2 开启内核路由功能(router、lvs)

vim /etc/sysctl.conf
net.ipv4.ip_forward = 1

sysctl -p

 2.3 解决vip响应问题(webserver1、webserver2)

echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore
echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce
echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce

2.4 配置 vip 回环接口(lvs、webserver1、webserver2)

ip a a 192.168.0.200/32 dev lo

2.5 配置策略(lvs)

ipvsadm -A -t 192.168.0.200:80 -s wrr
ipvsadm -a -t 192.168.0.200:80 -r 192.168.0.10:80 -g
ipvsadm -a -t 192.168.0.200:80 -r 192.168.0.20:80 -g

 3、测试结果

四、lvs防火墙标记 

1、实验环境

主机名角色IP地址
client客户机172.25.254.200
router路由机

172.25.254.100(NAT)

192.168.0.100(主机上)

lvs调度器192.168.0.50
webserver1真实服务器(RS)192.168.0.10
webserver2真实服务器(RS)192.168.0.20

2、实验步骤

2.1 在 RS1 和 RS2 中安装 mod_ssl 并重启 apache

yum install mod_ssl -y

systemctl restart httpd

2.2  设定端口标签

iptables -t mangle -A PREROUTING -d 192.168.0.200 -p tcp -m multiport --dports 
80,443 -j MARK --set-mark 66

 2.3 设定调度规则

ipvsadm -A -f 66 -s rr
ipvsadm -a -f 66 -r 192.168.0.10 -g
ipvsadm -a -f 66 -r 192.168.0.20 -g

3、测试结果

 

  • 14
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值