`

Keepalived + LVS(DR) 高可用集群

 
阅读更多

 

1.       简介

LVS( Linux Virtual Server ) Linux 虚拟服务器,可以把多台服务器虚拟为一个虚拟 IP ,同时实现各种负载均衡算法

Keepalived 是基于 LVS ,并与 LVS 高度融合的,监控 LVS 下所有真实服务器健康状态,并通过健康健康状态动态调整 LVS 的复杂均衡转发权重和规则。同时 keepalived 具备热备功能。

Memcached Session manager 负载后端服务器Tomcat的Session共享和同步。

 

2.       环境准备

四台虚拟机 linux as 5, 小本太慢,每台分配512内存。

内核:

[root@hadoop00 ~]# uname -r

2.6.18-8.el5

LVS: ipvsadm-1.24.tar.gz

Keepalived: keepalived-1.1.17

 

IP 规划

名称

IP

说明

VIP

10.10.10.10

外部应用使用的VIP

调度主服务器

10.10.10.11

Keepalived+LVS 主

调度备服务器

10.10.10.12

Keepalived+LVS 备

真实服务器 1 地址

10.10.10.13

web 服务器 1

真实服务器 2 地址

10.10.10.14

web 服务器 2

 

3.       LVS 安装配置

请参见:http://acooly.iteye.com/blog/1151921

4.       Keepalived 安装配置

安装依赖: kernel-devel openssl-devel

如果你的 Redhat 是官方注册或配置了本地仓库,可以使用:

yum install kernel-devel

yum install openssl-devel

自动安装依赖包

如果没有官方注册,可以直接在安装盘中查找相关依赖包进行手动安装

cd /media/CDROW/Server

ls *openssl-devel*

rpm –ivp …

 

安装 keepalived

wget http://www.keepalived.org/software/keepalived-1.1.17.tar.gz

./configure

make

make install

 

cp /usr/local/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/

cp /usr/local/etc/sysconfig/keepalived /etc/sysconfig/

cp /usr/local/sbin/keepalived /usr/sbin/

mkdir /etc/keepalived

touch /etc/keepalived/keepalived.conf

 

 

配置 keepalived+LVS

Keepalived 启动的时候默认会检查 /etc/keepalived/keepalived.conf 文件是否存在,如果存在则直接加载该配置文件作为 keepalived 的配置文件,一般的配置都采用在该目录下提供配置文件。注意: keepalived 不会对配置文件的正确性进行合法性检查,所以最好在 windows 中用专业的编辑器编辑并确认无误后在拷贝到该目录。 

Keepalived LVS 都安装在虚拟服务器上,并且与 LVS 紧密结合,安装 keepalived 后无需单独启动 LVS 服务, keepalived 会自动管理 LVS 服务进程, LVS 转发策略, LVS 负载算法和权重。

 

/etc/keepalived/keepalived.conf 配置文件如下:

 

global_defs {
	router_id	KEEPALIVED_LVS
}

vrrp_sync_group KEEPALIVED_LVS {
	group {
		KEEPALIVED_LVS_WEB
	}
}
 
vrrp_instance KEEPALIVED_LVS_WEB {
        state MASTER              //注意:如果Keepalived的备机,这里是SLAVE
        interface eth0
        lvs_sync_daemon_interface eth0
        garp_master_delay 5
        virtual_router_id 100
        priority 150              //注意:这里是主备的权重,备一般权重低于主
        advert_int 1
        authentication {
                auth_type PASS
                auth_pass 111111
        }
        virtual_ipaddress {
                10.10.10.10
        }
}
 
virtual_server 10.10.10.10 80 {
        delay_loop 3
        lb_algo wrr                  //定义负载均衡算法,这里是权重轮训
        lb_kind DR                   //定义模式,这里是Direct route
        persistence_timeout 0        //会话保存时长(秒),0表示不使用stickyness会话  
        protocol TCP
        // 后端服务器定义
        real_server 10.10.10.13 80 {
           weight 1                   //权重
           //HttpGET 方式验证真实服务有效性
           HTTP_GET {                 
           url {
                     //验证后端服务是否正常的访问地址
                     path /checkRealServerHealth.28055dab3fc0a85271dddbeb0464bfdb
                     //访问地址内容的 MD5 摘,通过对比摘要验证后端服务器是否可用
                     digest 26f11e326fc7c597355f213e5677ae75
               }
               connect_timeout 3     //连接超时时间
               nb_get_retry 3        //重试次数
               delay_before_retry 3  //每次重试前等待延迟时间
           }
        }
	
        real_server 10.10.10.14 80 {
           weight 1
           HTTP_GET {
           url {
                     path /checkRealServerHealth.28055dab3fc0a85271dddbeb0464bfdb
                     digest 26f11e326fc7c597355f213e5677ae75
               }
               connect_timeout 3
               nb_get_retry 3
               delay_before_retry 3
          
        }
}

 

 

5.       验证 keepalived+LVS

启动所有真实服务器的 LVS 客户端 : 请参见:http://acooly.iteye.com/blog/1151921 

分别启动主备的调度服务器的 keepalived ,不用独立启动 LVS 的虚拟服务器, Keepalived 会自动管理 LVS 的进程和服务。

[root@hadoop00 keepalived]# service keepalived start

 

检查 keepalived 进程

[root@hadoop00 keepalived]# ps aux|grep keepalived

root      6635  0.0  0.1   4352   596 ?        Ss   20:30   0:00 keepalived -D

root      6636  0.0  0.2   4396  1332 ?        S    20:30   0:00 keepalived -D

root      6638  0.0  0.1   4396   936 ?        S    20:30   0:00 keepalived -D

应该有 3 个进程,其中一个是主服务进程,另外两个分别是 checker 子进程和 vrrp 子进程

 

[root@hadoop00 keepalived]# pstree |grep keepalived

     |-keepalived---2*[keepalived]

 

查看 LVS 内存模块

[root@hadoop00 keepalived]# lsmod| grep ip_vs

ip_vs_wlc               6081  1

 

查看系统日志。

因为我在启动 keepalived 是使用了选项 –D , 这将详细的打印日志消息

tail -f /var/log/messages

 

 

分享到:
评论

相关推荐

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

    配置完Keepalived+LVS-DR模式后,输出文档以做备忘。

    Keepalived + LVS(DR) 高可用负载均衡集群

    NULL 博文链接:https://acooly.iteye.com/blog/1832742

    CentOS 6.5 LVS+Keepalived高可用集群搭建教程

    CentOS 6.5 LVS+Keepalived高可用集群搭建教程 DR模式搭建

    LVS+Keepalived集群技术实例

    本文档包括keepalived、ipvsadm安装软件以及LVS-DR安装文档(个人总结),还有Director和RealServer上执行的脚本:lvsdr.sh,lvs_real.sh 网络拓扑 lvs-master:192.168.5.240 lvs-backup:192.168.5.248 vip:192...

    使用keepalived搭建高可用的LVS-DR集群

    keepalived 是一个类似于 layer3, 4 & 5 交换机制的软件,也就是我们平时说的第 3 层、第 4 层和第 5层交换。 Keepalived 的作用是检测 web 服务器的状态,如果有一台 web 服务器死机,或工作出现故障,Keepalived ...

    LVS-DR+Nginx+Apache集群搭建

    LVS-DR+Nginx+Apache集群搭建 不使用keepalived 负载均衡权重,根据实际需求进行配置 网卡配置需要注意哪些问题 外网配置和VIP配置 Nginx的两种安装方式:源码包安装和yum安装 Apache的两种安装方式:源码包安装和...

    linux集群应用实战

    第20-21讲 通过LVS+Keepalived搭建高可用的负载均衡集群系统 课程目标: 熟练掌握lvs的安装方式以及基于dr/tun模式的配置方式 安装lvs管理软件ipvs ipvsadm的用法 lvs在负载调度器上的配置 通过ipvsadm命令行方式...

    lvs+keepalived搭建手册1

    LVS简介及LVS-DR模式配置搭建一、LVS集群简介一LVS集群简介LVS:linux虚拟服务器,是一个虚拟服务器集群系统LVS开源站点官网:http://w

    lvs keepalived搭建手册1

    LVS简介及LVS-DR模式配置搭建一、LVS集群简介一LVS集群简介LVS:linux虚拟服务器,是一个虚拟服务器集群系统LVS开源站点官网:http://w

    LVS+Keepalived构建高可用负载均衡(测试篇)

    一、 启动LVS高可用集群服务 首先,启动每个real server节点的服务: [root@localhost ~]# /etc/init.d/lvsrs start start LVS of REALServer 然后,分别在主备Director Server启动Keepalived服务: [root@DR1 ~]#/...

    LVS Keepalived 详细中文原理构建LINUX HA服务配置手册

    LVS集群的体系结构 6 LVS集群的通用结构 6 可伸缩Web和媒体服务 9 可伸缩Cache服务 10 可伸缩邮件服务 12 地理分布LVS集群的体系结构 13 体系结构 13 基于BGP的地理分布服务器集群调度 14 服务器集群间的...

    Python转运维课程视频.zip

    网盘文件永久链接 01_Linux系统安装和认识 ...24LVS调度策略和DR实践 25LVS TUN实践 26keepalived 集群基础 27keepalived 软件基础 28keepalived 软件部署 29keepalived 配置详解1 30keepalived 配置详解2 ........

Global site tag (gtag.js) - Google Analytics