单机LVS实现请求分发(负载)DR模式

本文详细介绍了如何在单机环境中配置LVS DR模式进行请求分发和负载均衡。首先,介绍了预置条件,包括准备四台服务器并安装httpd应用。接着,阐述了配置LVS公开的VIP、设置LVS请求分发规则以及调整服务器的arp_ignore和arp_announce参数。最后,通过访问VIP验证请求能够正确分发到各个节点。

单机LVS实现请求分发(负载)DR模式

预置条件

准备四台服务器

名称ip地址用途说明
node01192.168.43. 1LVS作业LVS接入服务
node02192.168.43. 2LVS作业LVS接入服务,第二章中用来做主备HA才用到,这里闲置
node03192.168.43. 3服务1需要负载的服务1
node04192.168.43. 4服务2需要负载的服务2

安装httpd应用
在各台服务器上面安装上httpd并且创建index.html页面。用来验证请求到哪个节点了。这里你用其它容器也行。

  • 安装
yum install httpd -y
  • 创建index.html页面
    进入到/var/www/html/创建index.html
1. vim /var/www/html/index.html
2. 在里面写上对应node01-04,用于区分请求到哪个节点了。
3. service httpd start #启动httpd
  • 异常情况
    这里有可能会出现yum安装httpd报错:Error: Unable to find a match: httpd。可以通过修改/etc/yum.conf,注释 yum.conf 中的 exclude=httpd nginx php mysql mairadb python-psutil python2-psutil来解决。
[main]
gpgcheck=1
installonly_limit=3
clean_requirements_on_remove=True
best=True
skip_if_unavailable=False

#注释掉下面这行,或者只删除 “httpd”
# exclude=httpd nginx php mysql mairadb python-psutil python2-psutil
配置LVS公开的VIP(对外的IP,域名指向的IP)
  • 在node01上配置
# enp0s3表示你的网卡,自己通过ifconfig 查看你的网卡名称 /24表示掩码,不用改。
ifconfig  enp0s3:8 192.168.43.100/24
  • 查询配置情况
    通过ipconfig可以查看得到已经配置了一个虚拟网卡enp0s3:8。
    在这里插入图片描述
  • 验证LVS是否映射成功:
    在浏览器访问192.168.43. 100。如果页面显示node01边上已经设置成功。
配置通过LVS请求分发(负载)
  • 安装ipvsadm
yum install ipvsadm
  • 在node01上配置分发规则
	# -t: TCP协议的端口,VIP:TCP_PORT
	# [-s scheduler]:指定集群的调度算法,默认为wlc
	# -g: gateway, dr类型,默认
	# -w weight:权重
	# 服务地址主机和端口,只有支持端口映射的LVS类型才允许此处使用和集群服务中不同的端口
	ipvsadm -A  -t  192.168.43.100:80  -s rr  # 新增一个集群服务
	ipvsadm -a  -t 192.168.43.100:80  -r  192.168.43.3 -g -w 1  # 配置负载
	ipvsadm -a  -t 192.168.43.100:80  -r  192.168.43.4 -g -w 1  # 配置负载
	ipvsadm -ln  # 查看配置情况
设置node03和node04的arp_ignore和arp_announce来改变响应规则。
# 1)修改内核:
echo 1  >  /proc/sys/net/ipv4/conf/enp0s3/arp_ignore 
echo 1  >  /proc/sys/net/ipv4/conf/all/arp_ignore 
echo 2 > /proc/sys/net/ipv4/conf/enp0s3/arp_announce 
echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce 
# 2)设置隐藏的vip:
ifconfig  lo:3  192.168.43.100  netmask 255.255.255.255
验证
  • 在浏览器访问192.168.43. 100验证请求是否能分发到node03和node04上面。

需要做HA高可用的可以看《通过keepalived实现LVS主备

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值