前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >负载均衡集群实验--DR模式

负载均衡集群实验--DR模式

原创
作者头像
用户10048459
发布2022-09-22 22:22:06
2730
发布2022-09-22 22:22:06
举报
文章被收录于专栏:执笔绘倾城执笔绘倾城

环境准备:(配置好IP,开启路由转发)

构建DR模式的负载均衡集群

拓展

ARP

arp_annouce 通告

0 将本机任何接口上的任何地址都向外通告

1 尽可能避免向目标网络通告其网络不匹配的地址信息

2 仅向目标网络通告与其网络匹配的地址信息

arp_ignore 响应

0 只要本机配置有该ip就响应

1 仅在请求的目标地址配置在请求到达的接口上时,才给予响应。

实验规划:

Centos7五台服务器(考试可以去除测试机和路由器)

  1. 1号充当测试机:

IP:192.168.10.13

GW:192.168.10.23

  1. 2号作为路由器:双网卡,外网网卡和内网网卡

ens33:192.168.10.23

ens37:192.168.11.23

  1. 2号机路由器开启路由转发:

vim /etc/sysctl.conf

添加内容:net.ipv4.ip_forward = 1

sysctl -p

  1. 3号机作为负载均衡服务器:添加网卡子接口作为VIP地址

DIP--ens33

IP:192.168.11.33

GW:192.168.11.23

网卡子接口:VIP地址

VIP--ens33:0

IP:192.168.11.200

GW:192.168.11.23

  1. 4号和5号:两台作为real server,应用服务器(配置本地回环网卡子接口)

4号:

ens33:192.168.11.43

GW:192.168.11.23

5号:

ens33:192.168.11.53

GW:192.168.11.23

本地回环网卡配置子接口----------两台应用服务器同步操作:按照以下步骤操作

cd /etc/sysconfig/network-scripts/

cp -a ifcfg-lo ifcfg-lo:0

vim ifcfg-lo:0

1 DEVICE=lo

2 IPADDR=192.168.11.200

3 NETMASK=255.255.255.255

  1. 注意:修改完配置文件后,重启网卡

systemctl restart network

实验步骤

第一步: 4号、5号后端真实服务器配置(同步操作)

  1. 两个后端服务器上都要安装httpd服务器

yum -y install httpd

  1. 在后端服务器1上配置网站

cd /var/www/html/

echo "http1 1 hao" >> index.html

  1. 在后端服务器2上配置网站

cd /var/www/html/

echo "http2 2 hao " >> index.html

  1. 两个后端服务器的内网网关地址为负载调度器的内网ip地址(两个服务器都执行,如果想要永久生效,写入网卡配置文件)

route add default gw 192.168.11.23

  1. 修改keepalive配置文件

cp -a /usr/share/doc/httpd-2.4.6/httpd-default.conf /etc/httpd/conf.d/

vim /etc/httpd/conf.d/httpd-default.conf

修改以下两部分

  1. httpd服务启动

systemctl restart httpd

systemctl enable httpd

  1. 先测试机测试访问网站是否可以访问
  2. 2号机路由器开启路由转发:

vim /etc/sysctl.conf

添加内容:net.ipv4.ip_forward = 1

sysctl -p

测试机测试

[root@zjt13 ~]# curl 192.168.11.43

http1 1 hao

[root@zjt13 ~]# curl 192.168.11.53

http2 2 hao

第二步:配置3号负载调度器(集群规则做MAC地址转换)

  1. 优化配置(关闭路由重定向)

vim /etc/sysctl.conf

(三选一)

net.ipv4.conf.all.send_redirects = 0

net.ipv4.conf.default.send_redirects = 0

net.ipv4.conf.eth0.send_redirects = 0

sysctl –p

  1. 配置网卡子接口,作为VIP,集群IP地址

[root@zjt33 ~]# cd /etc/sysconfig/network-scripts/

[root@zjt33 network-scripts]# cp -a ifcfg-ens33 ifcfg-ens33:0

[root@zjt33 network-scripts]# vim ifcfg-ens33:0

  1. 重启网卡

systemctl restart network

  1. 查看是否支持ipvs内核模块

config为内核文件,如果做过内核升级应该判断正在用的内核版本的文件

grep -i "ip_vs" /boot/config-3.10.0-957.el7.x86_64

  1. 安装用户的管理命令,ipvsadm工具进行创建、管理集群,用rpm或yum安装

yum -y install ipvsadm.x86_64

  1. 创建集群—指定VIP

ipvsadm -A -t 192.168.11.200:80 -s rr

  1. 查看:

ipvsadm -ln

  1. 向集群内添加服务器,建立服务器池

ipvsadm -a -t 192.168.11.200:80 -r 192.168.11.43:80 -g

ipvsadm -a -t 192.168.11.200:80 -r 192.168.11.53:80 -g

  1. 再次查看:

ipvsadm -ln

集群创建完成没有配置文件不需要保存

第三步:配置4号、5号应用服务器(真实服务器):两台服务器同步操作

  1. 两个真实服务器都配置--添加虚拟网卡接口,将VIP地址添加到回环网卡子接口上

cd /etc/sysconfig/network-scripts/

cp -a ifcfg-lo ifcfg-lo:0

vim ifcfg-lo:0

1 DEVICE=lo

2 IPADDR=192.168.11.200

3 NETMASK=255.255.255.255

4 NETWORK=127.0.0.0

5 # If you're having problems with gated making 127.0.0.0/8 a martian,

6 # you can change this to something else (255.255.255.255, for example)

7 BROADCAST=127.255.255.255

8 ONBOOT=yes

9 NAME=loopback

  1. 重启网卡

systemctl restart network

  1. 优化配置-调整内核参数

vim /etc/sysctl.conf

三组任选一组

net.ipv4.conf.all.arp_ignore = 1

net.ipv4.conf.all.arp_announce = 2

net.ipv4.conf.default.arp_ignore = 1

net.ipv4.conf.default.arp_announce = 2

net.ipv4.conf.lo.arp_ignore = 1

net.ipv4.conf.lo.arp_announce = 2

[root@zjt43 network-scripts]# sysctl -p

net.ipv4.conf.all.arp_ignore = 1

net.ipv4.conf.all.arp_announce = 2

  1. 添加路由策略(centos7版本可以不用做)

route add -host 192.168.11.200 dev lo:0

第四步:测试(刷新看效果):添加路由器防火墙规则

2号机添加路由器防火墙规则

iptables -t nat -A PREROUTING -i ens33 -d 192.168.10.23 -p tcp --dport 80 -j DNAT --to-destination 192.168.11.200

#192.168.10.23—路由器公网IP地址

#192.168.11.200—集群IP地址(VIP)

查看防火墙规则:

iptables -t nat -L

1号测试机访问路由器公网IP地址

  1. 测试机操作:vim /etc/hosts
  1. 测试:curl或者elinks测试

[root@zjt13 ~]# curl www.zjt.com

  1. 测试机安装软件包httpd-tools

yum -y install httpd-tools

[root@zjt13 ~]# which ab

/usr/bin/ab

[root@zjt13 ~]# rpm -qf /usr/bin/ab

httpd-tools-2.4.6-88.el7.centos.x86_64

  1. 测试机使用ab命令进行测压

ab -c 100 -n 1000 http://192.168.10.23:80/index.html

  1. 测试机访问完后在负载调度器上查看

ipvsadm -ln

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 环境准备:(配置好IP,开启路由转发)
    • 实验规划:
      • 实验步骤
        • 第一步: 4号、5号后端真实服务器配置(同步操作)
        • 第二步:配置3号负载调度器(集群规则做MAC地址转换)
        • 第三步:配置4号、5号应用服务器(真实服务器):两台服务器同步操作
        • 第四步:测试(刷新看效果):添加路由器防火墙规则
        • 2号机添加路由器防火墙规则
        • 查看防火墙规则:
        • 1号测试机访问路由器公网IP地址
    相关产品与服务
    负载均衡
    负载均衡(Cloud Load Balancer,CLB)提供安全快捷的流量分发服务,访问流量经由 CLB 可以自动分配到云中的多台后端服务器上,扩展系统的服务能力并消除单点故障。负载均衡支持亿级连接和千万级并发,可轻松应对大流量访问,满足业务需求。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档