CentOS 7 构建 LVS-DR 群集

这篇具有很好参考价值的文章主要介绍了CentOS 7 构建 LVS-DR 群集。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、LVS-DR集群摘要

LVS(Linux Virtual Server)是一个用于构建可扩展和高可用性的负载均衡集群的软件。它基于Linux操作系统,并提供了一种将网络流量分发到多个后端服务器的机制。

二、基本工作原理
  1. 配置负载均衡器:在LVS集群中,首先需要配置一个或多个负载均衡器(Load Balancer)。负载均衡器是集群的前端,它接收来自客户端的请求,并将它们分发给后端服务器。
  2. 选择负载均衡调度算法:负载均衡器使用调度算法来决定将请求分发给哪个后端服务器。常见的调度算法包括轮询(Round Robin)、加权轮询(Weighted Round Robin)、最少连接(Least Connection)等。
  3. 监听网络流量:负载均衡器通过监听网络流量来接收客户端的请求。它可以使用虚拟IP地址(Virtual IP Address)来作为前端的入口,客户端将请求发送到这个虚拟IP地址上。
  4. 请求分发:当负载均衡器接收到客户端的请求后,它将使用调度算法选择一个后端服务器,并将请求转发给该服务器。
  5. 后端服务器处理请求:被选中的后端服务器接收到请求后,根据请求的内容进行相应的处理,并将处理结果返回给负载均衡器。
  6. 返回响应给客户端:负载均衡器接收到后端服务器返回的响应后,将它们发送给相应的客户端。
  7. 健康检查:LVS还提供了健康检查机制,用于监测后端服务器的可用性。通过定期发送检查请求,负载均衡器可以确定后端服务器的状态,并根据需要调整请求分发策略,以实现负载均衡和故障恢复。

总结:LVS通过将客户端请求分发到多个后端服务器,实现了负载均衡和高可用性。它能够提高系统的性能和可靠性,确保用户请求得到有效处理,并在后端服务器故障时自动切换到其他可用服务器。

三、LVS-DR模式集群构建

环境准备四台主机,一台负载均衡机lvs,两台web集群,一台server做测试

1.LVS端配置
1)安装ipvsadm
[root@node1 ~]# yum install ipvsadm
2)配置LVS虚拟ip
[root@node1 ~]# ifconfig ens33:100 192.168.136.100/24
3)手工执行配置添加LVS服务并增加两台RS
[root@node1 ~]# ipvsadm -A -t 192.168.136.100:80 -s rr
[root@node1 ~]# ipvsadm -a -t 192.168.136.100:80 -r 192.168.136.162:80 -g
[root@node1 ~]# ipvsadm -a -t 192.168.136.100:80 -r 192.168.136.163:80 -g
# -A:表示添加一个新的虚拟服务器。
# -t 192.168.136.100:80:指定虚拟服务器的监听地址和端
# rr --调度算法即使用轮询(Round Robin)算法
# -g:表示使用直接路由模式(gatewaying mode)
4)查看配置
[root@node1 ~]# 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.136.100:80 rr
  -> 192.168.136.162:80           Route   1      0          0         
  -> 192.168.136.163:80           Route   1      0          0   
2.配置RS
1)安装http服务
[root@node2 ~]# yum install httpd
[root@node2 ~]# systemctl start httpd  启动http服务
2)输入一段文本到index主页中
[root@node2 ~]# echo "web test page ,ip is `hostname -I`" >/var/www/html/index.html
3)手工在RS端绑定VIP
[root@node2 ~]# ifconfig lo:100 192.168.136.100 netmask 255.255.255.255
4)添加本地访问vip路由
[root@node2 ~]# route add -host 192.168.136.100 dev lo
5)手工在RS端抑制ARP响应
[root@node2 ~]# echo "1" > /proc/sys/net/ipv4/conf/lo/arp_ignore
[root@node2 ~]# echo "2" > /proc/sys/net/ipv4/conf/lo/arp_announce
[root@node2 ~]# echo "1" > /proc/sys/net/ipv4/conf/ens33/arp_ignore
[root@node2 ~]# echo "2" > /proc/sys/net/ipv4/conf/ens33/arp_announce
四、使用客户端测试
[root@server ~]# for ((i=1;i<=6;i++)); do curl 192.168.136.100; done
web test page ,ip is 192.168.136.163 
web test page ,ip is 192.168.136.162 
web test page ,ip is 192.168.136.163 
web test page ,ip is 192.168.136.162 
web test page ,ip is 192.168.136.163 
web test page ,ip is 192.168.136.162 
五、有兴趣可以使用shell脚本

lvs director 上的脚本

#!/bin/sh
#
# Startup script handle the initialisation of LVS
# chkconfig: - 28 72
# description: Initialise the Linux Virtual Server for DR
#
### BEGIN INIT INFO
# Provides: ipvsadm
# Required-Start: $local_fs $network $named
# Required-Stop: $local_fs $remote_fs $network
# Short-Description: Initialise the Linux Virtual Server
# Description: The Linux Virtual Server is a highly scalable and highly
#  available server built on a cluster of real servers, with the load
#  balancer running on Linux.
# description: start LVS of DR
LOCK=/var/lock/ipvsadm.lock
VIP=192.168.95.10
RIP1=192.168.95.11
RIP2=192.168.95.12
DipName=ens33
. /etc/rc.d/init.d/functions
start() {
  PID=`ipvsadm -Ln | grep ${VIP} | wc -l`
  if  [ $PID -gt 0 ];
  then
     echo "The LVS-DR Server is already running !"
  else
     #Set the Virtual IP Address
     /sbin/ifconfig ${DipName}:10 $VIP broadcast $VIP netmask
255.255.255.255 up
     /sbin/route add -host $VIP dev ${DipName}:10
     #Clear IPVS Table
     /sbin/ipvsadm -C
     #Set Lvs
     /sbin/ipvsadm -At $VIP:80 -s rr
     /sbin/ipvsadm -at $VIP:80 -r $RIP1:80 -g
     /sbin/ipvsadm -at $VIP:80 -r $RIP2:80 -g
     /bin/touch $LOCK
     #Run Lvs
     echo "starting LVS-DR Server is ok !"   
  fi
}
stop()  {
     #clear Lvs and vip
     /sbin/ipvsadm -C
     /sbin/route del -host $VIP dev ${DipName}:10
     /sbin/ifconfig ${DipName}:10 down >/dev/null
     rm -rf $LOCK
     echo "stopping LVS-DR server is ok !"
}
status() {
  if [ -e $LOCK ];
  then
    echo "The LVS-DR Server is already running !"
  else
    echo "The LVS-DR Server is not running !"
  fi
}
case "$1" in
  start)
    start
   ;;
 stop)
    stop
   ;;
 restart)
    stop
    start
   ;;
status)
   status
   ;;
*)
    echo "Usage: $1 {start|stop|restart|status}"
    exit 1
esac
exit 0

RS上的脚本文章来源地址https://www.toymoban.com/news/detail-637373.html

#!/bin/sh
#
# Startup script handle the initialisation of LVS
# chkconfig: - 28 72
# description: Initialise the Linux Virtual Server for DR
#
### BEGIN INIT INFO
# Provides: ipvsadm
# Required-Start: $local_fs $network $named
# Required-Stop: $local_fs $remote_fs $network
# Short-Description: Initialise the Linux Virtual Server
# Description: The Linux Virtual Server is a highly scalable and highly
#  available server built on a cluster of real servers, with the load
#  balancer running on Linux.
# description: start LVS of DR-RIP
LOCK=/var/lock/ipvsadm.lock
VIP=192.168.95.10
. /etc/rc.d/init.d/functions
start() {
  PID=`ifconfig | grep lo:10 | wc -l`
  if [ $PID -ne 0 ];
  then
    echo "The LVS-DR-RIP Server is already running !"
  else
    /sbin/ifconfig lo:10 $VIP netmask 255.255.255.255 broadcast $VIP up
    /sbin/route add -host $VIP dev lo:10
    echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
    echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
    echo "1" >/proc/sys/net/ipv4/conf/eth0/arp_ignore
    echo "2" >/proc/sys/net/ipv4/conf/eth0/arp_announce
    echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore

到了这里,关于CentOS 7 构建 LVS-DR 群集的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • CentOS 7 构建 LVS-DR 群集 nginx负载均衡

    CentOS 7 构建 LVS-DR 群集 nginx负载均衡

    1、基于 CentOS 7 构建 LVS-DR 群集。 DS(Director Server):DIP 192.168.231.132  VIP 192.168.231.200 rs1 rs2 测试 2、配置nginx负载均衡。 132内网服务器 136内网服务器 137代理服务器 客户端

    2024年02月13日
    浏览(15)
  • 基于 CentOS 7 构建 LVS-DR 群集 && 配置nginx负载均衡

    基于 CentOS 7 构建 LVS-DR 群集 && 配置nginx负载均衡

    RHCE 客户机 192.168.100.146 node1 lvs 192.168.100.145 node2 RS 192.168.100.147 node3 RS 192.168.100.148 [root@node1 ~]# yum install ipvsadm.x86_64 [root@node2 ~]# yum install http -y         [root@node2 ~]# systemctl start httpd [root@node3 ~]# yum install http -y [root@node3 ~]# systemctl start httpd [root@node1 ~]# ifconfig ens33:200 192.168.1

    2024年02月13日
    浏览(11)
  • 基于 CentOS 7 构建 LVS-DR 群集。配置nginx负载均衡。

    1、基于 CentOS 7 构建 LVS-DR 群集。   2、配置nginx负载均衡。

    2024年02月11日
    浏览(14)
  • 基于 CentOS 7 构建 LVS-DR 群集,配置nginx负载均衡。

    基于 CentOS 7 构建 LVS-DR 群集。 关闭防火墙 [root@localhost ~]# systemctl stop firewalld 安装ifconfig yum install net-tools.x86_64 -y 准备四台虚拟机 IP 用途 19.168.244.144 客户端 192.168.244.145 lvs 192.168.244.148 RS 192.168.244.149 RS 在DS上 配置LVS虚拟IP 安装ipvsadm yum install ipvsadm -y 增加IP ifconfig ens33:200 192.1

    2024年02月11日
    浏览(12)
  • 基于 CentOS 7 构建 LVS-DR 群集以及配置nginx负载均衡

    基于 CentOS 7 构建 LVS-DR 群集以及配置nginx负载均衡

    目录 一、基于 CentOS 7 构建 LVS-DR 群集 1、前期准备 1、关闭防火墙 2、安装ifconfig 3、准备四台虚拟机 2、在DS上 2.1、配置LVS虚拟IP 2.2、手工执行配置添加LVS服务并增加两台RS 2.3、查看配置 3、在RS端(第三台、第四台) 上 3.1、配置Web服务器 3.2、配置默认主页 3.3、启动服务 3

    2024年02月13日
    浏览(16)
  • 基于CentOS7.5构建LVS-DR 群集,并启用Nginx负载均衡,一键完成。

    安装必要软件 :在两台服务器上,安装必要的软件,包括 ipvsadm 和 keepalived 。使用以下命令安装软件: 禁用防火墙或配置规则 :禁用防火墙或根据实际需要配置允许LVS流量通过的防火墙规则。 编辑 /etc/sysctl.conf 文件 :打开 /etc/sysctl.conf 文件并取消以下行的注释,使其生效

    2024年02月10日
    浏览(17)
  • 基于 CentOS 7 构建 LVS-DR 集群 及 配置nginx负载均衡

    Node01:PC Node02:LVS Node03、Node04:Webserver 2.1 在Node02上配置 2.1.1 安装ipvsadm管理软件按  2.1.2 配置VIP 2.2 在Node03上配置 2.2.1 安装Apache服务 2.2.2 编辑默认主页  2.3 在Node04配置  2.3.1 安装Apache服务 2.3.2 编辑默认主页 2.4 在Node01上测试 3.1 在Node03上配置 3.2 在Node04行配置 4.1 在Node0

    2024年02月14日
    浏览(9)
  • web集群学习--基于CentOS构建LVS-DR集群、配置nginx负载均衡

    web集群学习--基于CentOS构建LVS-DR集群、配置nginx负载均衡

    环境准备 配置 1.关闭防火墙和SELinux 2.在node3和node4上安装httpd服务并配置默认访问页面 3.配置LVS负载均衡服务并增加两台RS 4.在node3和node4上绑定VIP并添加本机访问VIP的路由 5.抑制ARP响应 PS:也可以使用arptables实现抑制arp 6.测试访问VIP 至此,基于CentOS构建LVS-DR集群实验完成 环境

    2024年02月13日
    浏览(15)
  • 构建 LVS-DR 群集、配置nginx负载均衡。

    构建 LVS-DR 群集、配置nginx负载均衡。

    目录 一、基于 CentOS 7 构建 LVS-DR 群集 1、准备四台虚拟机 2、配置负载调度器(192.168.2.130) 3、部署共享存储(192.168.2.133) 4、配置两个Web服务器(192.168.2.131、192.168.2.132) 测试集群 二、配置nginx负载均衡。 1、安装部署nginx 2、负载均衡服务器192.168.2.130 3、web1服务器192.168.2

    2024年02月12日
    浏览(10)
  • WEB集群——LVS-DR 群集、nginx负载均衡

    WEB集群——LVS-DR 群集、nginx负载均衡

    1、基于 CentOS 7 构建 LVS-DR 群集。 2、配置nginx负载均衡。 LVS-DR(Linux Virtual Server Director Server) 名称 缩写 说明 虚拟IP地址(Virtual IP Address) VIP Director用于向客户端计算机提供服务的IP地址 真实IP地址(Real Server IP Address) RIP 在集群下面节点上使用IP地址 Director的IP地址(Director IP Add

    2024年02月13日
    浏览(13)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包