time 
设为首页】【收藏本站
当前位置: 主页 > Unix/Linux > Linux管理 > Linux网络 > CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡

CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡

时间:2012-08-27 21:34 点击:2727次 字体:[ ]




 一、简介

VS/NAT原理图:

CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡_www.fengfly.com

二、系统环境

实验拓扑:

CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡_www.fengfly.com

系统平台:CentOS 6.3

Kernel:2.6.32-279.el6.i686

LVS版本:ipvsadm-1.26

keepalived版本:keepalived-1.2.4

三、安装

0、安装LVS前系统需要安装popt-static,kernel-devel,make,gcc,openssl-devel,lftp,libnl*,popt*

1、在两台Director Server上分别配置LVS+Keepalived

LVS install -------------

[root@CentOS-LVS_MASTER ~]# wget http://www.linuxvirtualserver.org/software/kernel-2.6/ipvsadm-1.26.tar.gz

[root@CentOS-LVS_MASTER ~]# ln -s /usr/src/kernels/2.6.32-279.el6.i686//usr/src/linux/

[root@CentOS-LVS_MASTER ~]# tar zxvf ipvsadm-1.26.tar.gz

[root@CentOS-LVS_MASTER ~]# cd ipvsadm-1.26

[root@CentOS-LVS_MASTER ipvsadm-1.26]# make && make install

Keepalived install -------------

[root@CentOS-LVS_MASTER ~]# wget http://www.keepalived.org/software/keepalived-1.2.4.tar.gz

[root@CentOS-LVS_MASTER ~]# tar zxvf keepalived-1.2.4.tar.gz

[root@CentOS-LVS_MASTER ~]# cd keepalived-1.2.4

[root@CentOS-LVS_MASTER keepalived-1.2.4]# ./configure && make && make install

######### 将keepalived做成启动服务,方便管理##########

[root@CentOS-LVS_MASTER ~]# cp /usr/local/etc/rc.d/init.d/keepalived /etc/init.d/

[root@CentOS-LVS_MASTER ~]# cp /usr/local/etc/sysconfig/keepalived /etc/sysconfig/

[root@CentOS-LVS_MASTER ~]# mkdir /etc/keepalived/

[root@CentOS-LVS_MASTER ~]# cp /usr/local/etc/keepalived/keepalived.conf /etc/keepalived/

[root@CentOS-LVS_MASTER ~]# cp /usr/local/sbin/keepalived /usr/sbin/

[root@CentOS-LVS_MASTER ~]# service keepalived start | stop

2、开启路由转发

[root@CentOS-LVS_MASTER ~]# vim /etc/sysctl.conf 
net.ipv4.ip_forward = 1
[root@CentOS-LVS_MASTER ~]# sysctl -p

3、配置Keepalived

[root@CentOS-LVS_MASTER ~]# less /etc/keepalived/keepalived.conf

 

 

  1. ! Configuration File for keepalived 
  2.  
  3. global_defs { 
  4.    router_id LVS_MASTER            #BACKUP上修改为LVS_BACKUP 
  5.  
  6. vrrp_instance VI_1 { 
  7.     state MASTER                   #BACKUP上修改为BACKUP 
  8.     interface eth0 
  9.     virtual_router_id 51 
  10.     priority 100                   #BACKUP上修改为80 
  11.     advert_int 1 
  12.     authentication { 
  13.         auth_type PASS 
  14.         auth_pass 1111 
  15.     } 
  16.     virtual_ipaddress { 
  17.         10.0.0.227 
  18.     } 
  19.  
  20. vrrp_instance LAN_GATEWAY { 
  21.     state MASTER                   #BACKUP上修改为LVS_BACKUP 
  22.     interface eth1 
  23.     virtual_router_id 52 
  24.     priority 100                   #BACKUP上修改为80 
  25.     advert_int 1 
  26.     authentication { 
  27.         auth_type PASS 
  28.         auth_pass 1111 
  29.     } 
  30.     virtual_ipaddress { 
  31.         192.168.10.10 
  32.     } 
  33.  
  34. virtual_server 10.0.0.227 80 { 
  35.     delay_loop 6 
  36.     lb_algo rr 
  37.     lb_kind NAT 
  38. #   persistence_timeout 5 
  39.     protocol TCP 
  40.  
  41.     real_server 192.168.10.4 80 { 
  42.         weight 3 
  43.         TCP_CHECK { 
  44.             connect_timeout 3 
  45.             nb_get_retry 3 
  46.             delay_before_retry 3 
  47.             connect_port 80 
  48.         } 
  49.     } 
  50.      
  51.     real_server 192.168.10.5 80 { 
  52.         weight 3 
  53.         TCP_CHECK { 
  54.             connect_timeout 3 
  55.             nb_get_retry 3 
  56.             delay_before_retry 3 
  57.             connect_port 80 
  58.         } 
  59.     } 

BACKUP服务器同上配置,先安装lvs再安装keepalived,然后配置/etc/keepalived/keepalived.conf,只需将批注部分改一下即可。

4、分别在2台Real Server上面设置网关

把网关都设置成:192.168.10.10

5、在2台RealServer中分别配置HTTP

[root@WEB1 ~]# yum -y install httpd
[root@WEB1 ~]# cd /var/www/html/
[root@WEB1 html]# cat index.html 
<h1>WEB1/192.168.10.4</h1>
[root@WEB1 html]# /etc/init.d/httpd start
另一台机器配置一样,过程略。

6、分别在CentOS-LVS_MASTERCentOS-LVS_BACKUP上执行service keepalived start启动keepalived就可实现负载均衡及高可用集群了;

[root@CentOS-LVS_MASTER keepalived]# service keepalived start

CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡_www.fengfly.com

CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡_www.fengfly.com

四、测试

####高可用性测试####

模拟故障,将CentOS-LVS_MASTER上的keepalived服务停掉,然后观察CentOS-LVS_BACKUP上的日志,信息如下

CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡_www.fengfly.com

从日志中可知,主机出现故障后,备机立刻检测到,此时备机变为MASTER角色,并且接管了主机的虚拟IP资源,最后将虚拟IP绑定在etho设备上。

CentOS-LVS_MASTER 上的keepalived服务开启后,CentOS-LVS_BACKUP的日志状态。

CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡_www.fengfly.com

从日志可知,备机在检测到主机重新恢复正常后,释放了虚拟IP资源重新成为BACKUP角色

####故障切换测试####

故障切换是测试当某个节点出现故障后,Keepalived监制模块是否能及时发现然后屏蔽故障节点,同时将服务器转移到正常节点来执行。

将WEB2节点服务停掉,假设这个节点出现故障,然后主、备机日志信息如下

CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡_www.fengfly.com

CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡_www.fengfly.com

从以上可以看出,Keepalived监控模块检测到192.168.10.5这台主机出现故障后,将WEB2从集群系统中剔除掉了。 此时访问http://10.0.0.227只能看到WEB1了)

CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡_www.fengfly.com

重新启动WEB2节点的服务,日志信息如下:

CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡_www.fengfly.com

CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡_www.fengfly.com

Keepalived监控模块检测到192.168.10.5这台主机恢复正常后,又将此节点加入集群系统中,再次访问就可以访问到WEB2页面了)

CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡_www.fengfly.com



本文地址 : http://www.fengfly.com/plus/view-209041-1.html
标签: CentOS 负载均衡 nat 高性能 高可用 keepalived LVS
------分隔线----------------------------
最新评论 查看所有评论
发表评论 查看所有评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
验证码: