LVS + keepalived DR 模式

第1章 LVS  + keepalived 负载均衡安装配置笔记

经安装测试能够实现我的这些需要:

  • 双机或多机实现虚拟IP,能够实现IP故障切换
  • 能够连接多台后端真实服务器,实现后端服务器的负载均衡
  • 能够实现双机热备份(同一时间单机工作,故障后切换到另一台)
  • 能够双机虚拟IP且负载均衡(双机即做调度器又做真实服务器)

1.1 LVS (Linux Virtual Server)

虚拟IP,负载均衡调度器,但需要手工动态增加命令,所以需要keepalived来实现自动配合。虚拟IP同时只能存在于某一台机器上,此时称为master机,其它为backup机。

安装:ubuntu上直接用apt-get install ipvsadm,装完后为自启动服务。剩下的事就交给keepalived管理了,不需要手工配置LVS。

1.2 Keepalived

根据配置文件进行监控,向LVS提供信息,自动检测各调度器可用性,从而实现虚拟IP(即master机)由哪台机器服务。就是指定哪些机器一块虚拟出哪个IP。还有在虚拟的IP上提供哪个端口映射到哪些后端真实服务器从而实现后端服务的负载均衡(可自动检测出哪些不可用)

安装:ubuntu上直接用apt-get install keepalived,装完后为自启动服务。然后在/etc/keepalived/中增加配置keepalived.conf

1.3 基本网络结构

一般需要4台机器,2台做为双机备份的调度器(VIP同时只能存在其中一台机上,另一台闲着的),另2台做为真实应用服务器(realserver)如web服务器。其中调度器可以增加为多台(浪费),realserver也可以增加为多台。设:

虚拟VIP:10.0.0.110

调度器A:10.0.0.101 (装lvs+keepalived+配置)

调度器B:10.0.0.102 (装lvs+keepalived+配置)

realserverA:10.0.0.103 (需要启动realserver.sh脚本)

realserverB:10.0.0.104 (需要启动realserver.sh脚本)

1.4
keepalived.conf

global_defs {

router_id webHA

}

vrrp_instance VI_1 {    #调度器虚拟IP切换配置

state
MASTER   #一台为MASTER,另一台为BACKUP。或者两台均是BACKUP

interface ens33

virtual_router_id 51

priority 100   #优先级,另一台改为90

advert_int 1    #组播信息发送间隔,两个节点设置必须一样

nopreempt  #不抢占,只在优先级高的机器上设置即可,优先级低的机器不设置

authentication {

auth_type PASS

auth_pass 1111

}

virtual_ipaddress {

10.0.0.110

}

}

virtual_server 10.0.0.110 80 {  #负载均衡配置 (重要:端口必须与realserver端口一致,不能更改)

delay_loop 5   #每个5秒检查一次real_server状态

lb_algo wrr   #LVS算法

lb_kind DR    #LVS模式

persistence_timeout 10   #会话保持时间

protocol TCP

real_server 10.0.0.103 80 {

weight 1

TCP_CHECK {

connect_timeout 5    #连接超时时间

nb_get_retry 2       #重连次数

delay_before_retry 3   #重连间隔时间

connect_port 80   #健康检查端口

}

}

real_server 10.0.0.104 80 {

weight 1

TCP_CHECK {

connect_timeout 5    #连接超时时间

nb_get_retry 2       #重连次数

delay_before_retry 3   #重连间隔时间

connect_port 80   #健康检查端口

}

}

}

两台调度器做好配置后,重启service keepalived restart,即可实现2台调度器上的VIP切换(关掉机器或断掉网络或关掉keepalived都可以使VIP切换)。

重要:要使服务转接到后端realserver实现负载均衡,realserver上必须运行一个脚本用来修改网络配置,不能realserver会产生对VIP的冲突,原理暂时我还不清楚。

重要:虚拟VIP实现的服务端口必须与realserver上的服务端口一致,不能更改成其它端口,否则不能转接到realserver

 

可以在2台调度器机器上运行 ipvsadm -ln 来查看后方realserver的状态。没有显示出来的则表示该realserver有问题,能显示的代表realserver服务正常,但不一定从VIP访问就是OK

1.5
realserver.sh脚本

以下脚本是放在rs节点服务器上的

#!/bin/bash

# description: Config realserver lo and apply noarp

#Written by :NetSeek http://www.yaodouwang.com

VIP=10.0.0.110

case "$1" in

start)

ifconfig
lo:0 $VIP netmask 255.255.255.255 broadcast $VIP

/sbin/route add -host $VIP dev lo:0

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/all/arp_ignore

echo
"2" >/proc/sys/net/ipv4/conf/all/arp_announce

sysctl -p
>/dev/null 2>&1

echo
"RealServer Start OK"

;;

stop)

ifconfig
lo:0 down

route del
$VIP >/dev/null 2>&1

echo
"0" >/proc/sys/net/ipv4/conf/lo/arp_ignore

echo "0"
>/proc/sys/net/ipv4/conf/lo/arp_announce

echo
"0" >/proc/sys/net/ipv4/conf/all/arp_ignore

echo
"0" >/proc/sys/net/ipv4/conf/all/arp_announce

echo
"RealServer Stoped"

;;

*)

echo
"Usage: $0 {start|stop}"

exit 1

esac

exit 0

完成上面步骤后,就可以虚拟IP并且负载均衡了。

1.6
keepalived绑定公网IP方法

添加一块网卡

确定之后进入虚拟机,ip a命令会出现网卡信息

可以看到我这里有个刚添加的网卡,keepalived配置文件设置的虚拟IP绑定到这个网卡上

原文地址:https://www.cnblogs.com/a-can/p/123ddd.html

时间: 2024-08-29 15:41:37

LVS + keepalived DR 模式的相关文章

lvs+keepalived(DR模式)

(一) 网络架构     D1: (LVS_MASTER)     eth1:192.168.1.111     D2:(LVS_BACKUP)     eth2: 192.168.1.113     R1: (web_server1)     eth1:192.168.1.214      R2: (web_server2)     eth1:192.168.1.215      VIP:192.168.1.200 (网站对外提供的虚拟ip地址,域名是解析到这个ip地址) (二) 安装keep

LVS+keepalived DR模式配置高可用负载均衡集群

实验环境 LVS-Master 10.0.100.201 VIP:10.0.100.203 LVS-Slave       10.0.100.204 WEB1-Tomcat 10.0.2.29 gateway:10.0.2.253 WEB2-Tomcat 10.0.100.202 (注意:应保持所有服务器的时间一致) Install LVS # ln -s /usr/src/kernels/2.6.32-431.el6.i686/ /usr/src/linux //若找不到这个目录则先安装ker

centos6.5里搭建LVS+Keepalived(DR模式)集群

最近闲着,整理下以前搭建的服务.. 介绍还是百度下, LVS+Keepalived 介绍LVSLVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统.本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一.目前有三种IP负载均衡技术(VS/NAT.VS/TUN和VS/DR):十种调度算法(rrr|wrr|lc|wlc|lblc|lblcr|dh|sh|sed|nq).KeepalviedKeepalived在这里主要用作

LVS+Keepalived DR模式实现web负载均衡高可用

一.环境介绍: lvs_master:192.168.1.18 lvs_backup:192.168.1.19 web1:192.168.1.16 web2:192.168.1.17 vip:192.168.1.20 二.安装: 在两台lvs上安装lvs+keepalived: yum install lvsadm keepalived -y 在两台web服务器上安装nginx(安装配置略过) 配置keepalived: 主lvs上配置: vim /etc/keepalived/keepaliv

搭建LVS(DR模式)+Keepalived高可用群集,可跟做!!!

Keepalived的设计目标就是构建高可用的LVS负载均衡群集,可以调用ipvsadm工具来创建虚拟服务器.管理服务器池,而不仅仅用作双机热备.使用Keepalived构建LVS群集更加简便易用,主要优势体现在,对LVS负载调度器实现热备切换.提高可用性,对服务器池中的节点进行健康检查,自动移除失效节点,恢复后再重新加入. 在基于LVS(DR模式)+Keepalived实现的LVS群集结构中,至少包括两台热备的负载调度器,两台以上的节点服务器,本次实验以DR模式的LVS群集为基础,增加一台负载

LVS + keepalived(DR) 实战

一.LVS体系结构 使用LVS架设的服务器集群系统有三个部分组成:最前端的负载均衡层,用Load Balancer表示,中间的服务器群组层,用Server Array表示,最底端的数据共享存储层,用Shared Storage表示,在用户看来,所有的内部应用都是透明的,用户只是在使用一个虚拟服务器提供的高性能服务. LVS体系结构如图1所示: 二.LVS 3种负载均衡技术对比 负载均衡技术有很多实现方案,有基于DNS域名轮流解析的方法.有基于客户端调度访问的方法.有基于应用层系统负载的调度方法,

负载均衡高可用之LVS+Keepalived(DR/主备)+apache

负载均衡高可用之LVS+Keepalived(DR/主备)+apache 介绍: LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统.本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一. LVS集群采用IP负载均衡技术和基于内容请求分发技术.调度器具有很好的吞吐率,将请求均衡地转移到不同的服务器上执行,且调度器自动屏蔽掉服务器的故障,从而将一组服务器构成一个高性能的.高可用的虚拟服务器.整个服务器集群的结构对客户

LVS:DR模式(Direct Routing)部署实验

本文介绍怎样在kvm的虚拟环境下,部署实验LVS的DR模式.包含网络结构图,怎样配置.以及使用tcpdump分析ip包. 网络结构图 kvm节点(client) 192.168.7.2 (CIP) |           br_e网桥 /                     \ (VIP) eth7:192.168.7.33      eth14: 192.168.7.99       lvs虚拟主机                      server虚拟主机 (DIP)        

CentOS6.4 配置LVS(DR模式)

DR模式中LVS主机与实际服务器都有一块网卡连在同一物理网段上. IP分配 VIP:10.10.3.170 RIP1:10.10.3.140 RIP2:10.10.3.141 1.安装所需的依赖包 yum install -y wget make kernel-devel gcc gcc-c++ libnl* libpopt* popt-static 2.创建一个软链接,防止后面编译安装ipvsadm时找不到系统内核 ln -s /usr/src/kernels/2.6.32-358.18.1.