Keepalived与LVS

########################Keepalived的工作原理####################
说明:
1、keepalived是lvs的扩展项目,因此它们之间具备良好的兼容性。这点应该是keepalived部署比其他类似工具能更简洁的原因吧!
2、通过对服务器池对象的健康检查,实现对失效机器/服务的故障隔离。
3、负载均衡器之间的失败切换failover,是通过VRRPv2(Virtual Router Redundancy Protocol)stack实现的。
##VRRP工作原理
1. VRRP即,虚拟路由冗余协议(Virtual Router Redundancy Protocol)
   两台(或多台)设备组成一个组,所有的组成员设备都运行VRRP协议。彼此发送vrrp报文,并根据设置的优先级和IP地址来竟选出一台设备作为MASTER,并在其上面虚拟出一台路由器来作为提供数据转发,提供相应arp请求的设备。而所有的其他设备都处于BACKUP状态,并通过发送VRRP报文来监听MASTER设备是否出现问题,以在MASTER出现问题时及时接管虚拟路由器。

##keepalived工作原理
keepalived是模块化设计,不同的模块负责不同的功能,其模块有:
1. core:是keepalived的核心,负责主进程的启动和维护,全局配置文件的加载解析等。
2. checkers:负责真实服务器的健康检查healthchecking,是keepalived最主要的功能。换句话说,可以没有VRRPStack,但健康检查healthchecking是一定要有的。
3. VRRPStack 负责负载均衡器之间的失败切换FailOver。如果只用一个负载均衡器,则VRRP不是必须的。
4. IPVS wrapper 用来发送设定的规则到内核ipvs代码。
5. Netlink Reflector 用来设定vrrp的vip地址等。
6.WatchDog:负责监控checkers和VRRP进程的状况。
keepalived正常运行时,共有3个进程:
1.父进程:负责监控其子进程。
2.vrrp子进程
3.checkers子进程

##keepalived.conf的配置
配置文件分三部分:
1.全局定义部分
2.VRRP实例定义部分
3.虚拟服务定义部分
##################Global Defined###################
global_defs {      
        router_id LVS_MASTER     #定义标识主机的字符,可以不必是主机名
}

vrrp_sync_group VGM {         #定义一同进行故障转移的IP组的名称
        group {
                http      #定义vrrp实例的名称,也就是后面定义实例的名称。
        }
}

#####################Vrrp Instance###################
vrrp_instance http {
        state MASTER      #定义初始化状态,MASTER或BACKUP
        interface eth0      #定义运行vrrp协议的网口
        lvs_sync_daemon_interface eth0  #定义lvs syncd的接口
        virtual_router_id 51    #定义虚拟路由组id,属于同一组的组成员的id必须是一样的
        priority 100       #定义组成员的优先级,数值愈大,优先级越高。
        advert_int 1      #定义MASTER 与BACKUP 负载均衡器之间同步检查的时间间隔,单位为秒
        authentication {     
                auth_type PASS
                auth_pass 1111
        }
        virtual_ipaddress {     #定义外界访问的VIP
                192.168.1.100
        }
}
####################Virtual Service Defined###############
virtual_server 192.168.1.100 80 {   #定义为哪个服务提供虚拟IP服务
        delay_loop 6      #对RealServer进行健康检查的时间间隔
        lb_algo rr       #调度算法
        lb_kind DR       #LVS三种模式DR,TUN,NAT之一
#       persistence_timeout 20    #会话保持时间,对于动态网页非常有用。
        protocol TCP      #指定转发协议的类型,有TCP和UDP两种

real_server 192.168.1.106 80 {
                weight 100     #配置服务节点权值,数字越大权值越高。
                TCP_CHECK {     #对realserver状态的TCP监测
                        connect_timeout 3 #链接超时时间
                        nb_get_retry 3  #超时后的重试次数
                        delay_before_retry 3 #每次重试的间隔时间
                        connect_port 80  
                }
        }

real_server 192.168.1.107 80 {
                weight 100
                TCP_CHECK {
                        connect_timeout 3
                        nb_get_retry 3
                        delay_before_retry 3
                        connect_port 80
                }
        }
}                                                                 
注:以上配置属于处于MASTER状态的配置文件
若要配置BACKUP状态的组成员机器只需修改如下几项即可:
1.router_id LVS_SLAVE
2.priority 80
3. state BACKUP

时间: 2024-10-17 03:41:06

Keepalived与LVS的相关文章

高可用集群技术之keepalived实现lvs高可用并负载均衡web服务

Keepalived概述: Keepalived的作用是检测服务器的状态,如果有一台web服务器死机,或工作出现故障,Keepalived将检测到,并将有故障的服务器从系统中剔除,同时使用其他服务器代替该服务器的工作,当服务器工作正常后Keepalived自动将服务器加入到服务器群中,这些工作全部自动完成,不需要人工干涉,需要人工做的只是修复故障的服务器. keepalived实现lvs高可用并负载均衡web服务: 准备工作: 2台keepalived节点为: node1.samlee.com

基于keepalived实现LVS的高可用

keepalived简介 首先简单介绍一下VRRP协议(虚拟路由器冗余协议).VRRP是一种容错协议,它可以将一组路由器组织成一个虚拟路由器,这个虚拟路由器仅适用一个IP地址,这个IP地址配置在其中的一台路由器上,这个路由器即为主路由器(MASTER),其余的为备用路由器(BACKUP).如果这个路由器组内的MASTER路由器出现故障了,BACKUP路由器将会通过选举策略选出一个新的MASTER路由器继续向外提供服务.这样就保证了网络之间的通信不会中断. keepalived即采用了VRRP协议

keepalived实现lvs的高可用

搭建环境: 两台director,两台RS director1:ip(172.16.125.5),安装好keepalived: director2:ip(172.16.125.6),安装好keepalived: RS1:ip(172.16.125.7),安装好httpd: RS2:ip(172.16.125.8),安装好httpd: vip(1):172.16.125.100,vip(2):172.16.125.110. 在此处keepalived实现lvs的高可用,使用了lvs的dr模型.关闭

实例:LVS+Keepalived配置LVS的高可用

LVS+Keepalived配置LVS的高可用 我们这里LVS-DR模型的高可用集群: 实验环境:     vm1 LVS-DR1:              eth0 172.16.3.2/16              VIP :eth0:0 172.16.3.88              vm2 LVS-DR2:             eth0 172.16.3.3/16     vm3 Server-web1             RS1: eth0 172.16.3.1/16  

keepalived实现lvs高可用并负载均衡lamp

一.安装lamp 1.安装httpd(172.16.23.211) [[email protected] ~]# yum install -y httpd 2.安装php(172.16.23.211) [[email protected] ~]# yum install -y php 3.安装php-mysql(172.16.23.211) [[email protected] ~]# yum install -y php-mysql 4.安装mariadb(172.16.23.211 Cent

基于Keepalived实现LVS双主高可用集群

前言 前面说过基于heartbeat的LVS高可用方案,今天带来另一种解决方案:基于Keepalived实现LVS双主高可用集群.什么是Keepalived呢,keepalived观其名可知,保持存活,在网络里面就是保持在线了, 也就是所谓的高可用或热备,用来防止单点故障的发生.本文将详细讲述Keepalived工作原理及高可用解决方案的实现. 相关介绍 Keepalived简介 Keepalived采用VRRP(virtual router redundancy protocol,虚拟路由冗余

keepalived配置lvs使用

keepalived最初专为LVS设计用来监控LVS集群系统中各个节点的状态,后来加入VRRP功能.因此也可以做nginx,haproxy,mysql的高可用. VRRP:虚拟路由器冗余协议,解决静态路由单点故障.通过竞选协议来实现虚拟路由器的功能,所有的协议报文通过ip多播(多播地址224.0.0.18),虚拟路由器的vrid对外的MAC地址00-00-5e-00-01-vrid.master会一直发VRRP广告包,如果BACKUP收不到广播包,会自己配置vip起服务. ###########

Linux-利用keepalived实现lvs的高可用性

单主模型IPVS示例 配置keepalive 高可用的ipvs集群示例:修改keepalived配置文件 修改主机:192.168.234.27的keepalived配置文件 1 [[email protected] ~]# vim /etc/keepalived/keepalived.conf 2 ! Configuration File for keepalived 3 4 global_defs { 5 notification_email { 6 [email protected] //

小白应该怎样Linux利用keepalived实现lvs的高可用性?

LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统.这篇文章主要介绍了Linux利用keepalived实现lvs的高可用性 ,需要的朋友可以参考下 lvs+keepalived是什么? keepalived工作原理 keepalived是集群管理中保证集群高可用的一个服务软件,其功能类似于heartbeat,用来防止单点故障. keepalived是以VRRP协议为实现基础的,VRRP全称Virtual Router Redundanc