设为首页 加入收藏

TOP

集群上配置Keepalived实现负载均衡
2017-10-13 10:37:22 】 浏览:7430
Tags:集群 配置 Keepalived 实现 负载 均衡

简介:

  Keepalived是一个基于VRRP协议来实现的服务高可用方案,可以利用其来避免IP单点故障。Keepalived的作用是检测服务器的状态,如果有一台web服务器宕机,或工作出现故障,Keepalived将检测到,并将有故障的服务器从系统中剔除,同时使用其他服务器代替该服务器的工作,当服务器工作正常后Keepalived自动将服务器加入到服务器群中,这些工作全部自动完成,不需要人工干涉,需要人工做的只是修复故障的服务器。

  本文主要介绍利用keepalived来监控sparkJDBC进程,当一个节点的sparkJDBC进程宕机之后,能自动的将VIP切换到另外的节点上。

Keepalived的来监测sparkJDBC进程

  应用说明:利用keepalived,实VIP (virtual IP) 的飘动;检测sparkJDBC程,当集群服务器上的一个进程挂掉之后,可以自动飘到另一台服务器上。

1、安装配置好keepalived之后。(本文配置在10.199.33.1210.199.33.13)目录为:

    

2、修改keepalived的配置文件:keepalived.conf

    

4、配置文件的内容如下:

vrrp_script chk_http_port {
    script "/etc/keepalived/check-sparksubmit-server.sh"
    interval 2 #间隔时间
    weight 0  
    global_defs {
        router_id LVS_DEVEL
    }
    vrrp_instance VI_1 {
        state BACKUP  
        interface em1 #服务器的网卡
        virtual_router_id 51 
        priority 90   #优先级
        advert_int 1
        authentication {
            auth_type PASS
            auth_pass 1111
        }
        track_script {
            chk_http_port
        }
        virtual_ipaddress {
            10.199.33.15 #虚拟的IP
        }
    }
}

4、进程监测脚本的目录要与keepalived配置文件一致:

配置文件中的内容:script "/etc/keepalived/check-sparksubmit-server.sh"

5、shell脚本的程序的内容如下:红色是进程的名字,通过它获取进程ID。

#!/bin/bash
ldapPid=$(ps -ef |grep SparkJDBCmdss8|grep -v grep|awk '{print $2}'|grep -v PID)
#echo $ldapPid
if [ "$ldapPid" == "" ]; then
   service keepalived stop
   exit 1
else
   exit 0
fi 

  

  

测试:

1、启动所有点上的keepalived

2、通过命令查看虚拟IP的情况:ip a

    kvdb02(10.199.33.12)上有VIP:

  

    kvdb03(10.199.33.13)上没有VIP:

  

3、启动所有节点上的sparkJDBC进程:

  

4、kill掉kvdb02的SparkSubmit进程:

  

5、再次查看虚拟IP的情况:ip a

    kvdb02(10.199.33.12)上没有VIP:

 

    kvdb03(10.199.33.13)上有VIP: 

 

  到此就全部测完了,这是第一次写博客!!!有什么不对的地方请指正!

        2017-09-11,写于武汉出差。

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇pip 警告!The default format wi.. 下一篇linux下文件和目录

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目