一、HAProxy简介

HAProxy提供高可用性、负载均衡以及基于TCP和HTTP应用的代 理,支持虚拟主机,它是免费、快速并且可靠的一种解决方案。HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保持或七层处理。 HAProxy运行在当前的硬件上,完全可以支持数以万计的并发连接。并且它的运行模式使得它可以很简单安全的整合进您当前的架构中, 同时可以保护你的web服务器不被暴露到网络上。

二、Keepalived简介

它是一个基于VRRP协议来实现的WEB服务高可用方案,可以利用其来避免单点故障。一个WEB服务至少会 有2台服务器运行Keepalived,一台为主服务器(MASTER),一台为备份服务器(BACKUP),但是对外表现为一个虚拟IP,主服务器会发 送特定的消息给备份服务器,当备份服务器收不到这个消息的时候,即主服务器宕机的时候,备份服务器就会接管虚拟IP,继续提供服务,从而保证了高可用性。

三、Flume简介

Flume是Apache提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力。

注:根据我们公司具体业务需求,对其进行二次开发满足跨国跨机房日志数据完整传输录入到hadoop,同时确保高性能(tps:10k),当前已经有部分业务线上介入,日收集日志条数2亿+(日志大小约30G)。

四、Keepalived安装&配置

(1) keepalived依赖环境

yum install -y openssl-devel openssl;

yum install -y popt-devel;

(2) 从keepalived官网下载最新的版本:http://www.keepalived.org/download.html

(3) 安装与编译:

./configrure;

make && make install

(4) 设置service启动服

[root@localhost~]#  cp /usr/local/etc/rc.d/init.d/keepalived   /etc/rc.d/init.d       
[root@localhost~]#  cp /usr/local/etc/sysconfig/keepalived   /etc/sysconfig/
[root@localhost~]#  mkdir /etc/keepalilved
[root@localhost~]#  cp /usr/local/etc/keepalived/keepalived.conf  /etc/keepalived/
[root@localhost~]#  cp /usr/local/sbin/keepalived  /usr/sbin/
[root@localhost~]#  service  keepalived start

(5) 配置文件

vrrp_script chk_haproxy {
   script"/data/sh/check_haproxy.sh"
   interval2
   weight2
}
# VIP1
vrrp_instance VI_1 {
    state MASTER #主备模式
    interfaceeth2  # 监控网卡,要产生虚拟ip的网卡,如机器161.106内网网卡为eth0则必须为eth0
    virtual_router_id151# 这个两台服务器必须一样
    priority100   #权重值 MASTRE 一定要高于 BAUCKUP
    advert_int5
    nopreempt
    authentication {
        auth_typePASS # 加密
        auth_pass2222# 加密的密码,两台服务器一定要一样
    }
    virtual_ipaddress {
        192.168.161.xxx    #VIP 地址
    }
    track_script {
     chk_haproxy  # 执行监控的服务
   }
}
   注: keepalived主备唯一不同的是配置文件 state & priority

五、HAProxy安装&配置

(1) 从官网下载最新版本haproxy: http://haproxy.1wt.eu/#down

(2) 安装

make TARGET=linux26 PREFIX=/usr/local/haproxy     #将haproxy安装到/usr/local/haproxy

make install PREFIX=/usr/local/haproxy

(3) 配置文件

global 
    maxconn51200#最大连接数
    user root
    group root
    uid99 
    gid99 
    daemon 
    #quiet 
    nbproc6#进程数
   
defaults 
        mode http 
        retries3
        option redispatch
        timeout connect 5000ms
        timeout client 30000ms
        timeout server 30000ms
        timeout check10000#检查超时时间
        log127.0.0.1local0 debug #[err warning info debug] 
 
listen admin_stats  #监控后台
        bind0.0.0.0:8880
        mode http
        option httplog
        stats refresh 30s
        stats uri /stats
        stats realm Haproxy Manager
        stats auth admin:admin
 
listen logservers
        bind *:18888 
        mode tcp  tcp模式
        timeout client 5m #客户端连接服务器多久没有数据连接超时,类似与http keepalive
        timeout server 5m #类似
        server t1192.168.1.7:8888 weight 1 check inter 5000 rise2 fall3 
        server t2192.168.1.118:8888 weight 1 check inter 5000 rise2 fall3
       #weight 代表权重  inter代表检测频率 rise代表检测成功多少次服务器可用 fall代表检测失败多少次服务器不可用

(4) 平滑重启haproxy

/usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/haproxy_tcp.cfg -p /usr/local/haproxy/ha.pid -st `cat /usr/local/haproxy/ha.pid`

HAProxy + Keepalived + Flume 构建高性能高可用分布式日志系统的更多相关文章

  1. 基于nginx+xxl-job+springboot高可用分布式任务调度系统

    技术.原理讲解: <分布式任务调度平台XXL-JOB--源码解析一:项目介绍> <分布式任务调度平台XXL-JOB--源码解析二:基于docker搭建admin调度中心和execut ...

  2. Nginx(haproxy)+keepalived+Tomcat双主高可用负载均衡

    周末的时候一个正在学Linux的朋友问我,高可用怎么玩?我和他微信了将近三个小时,把Nginx和haproxy双主高可用教给他了,今天突然想把这个给写进博客里,供给那些正在学习Linux系统的朋友们, ...

  3. Keepalived+Nginx+Tomcat配置高可用负载均衡系统示例

    前言 此示例为keepalived+nginx+tomcat的基础配置示例,某些特定配置此例中不会出现,在示例中会用到三个虚拟机:两个纯命令行用于模拟服务端配置,一个带桌面环境的用于模拟客户端访问,这 ...

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

    一.简介 VS/NAT原理图: 二.系统环境 实验拓扑: 系统平台:CentOS 6.3 Kernel:2.6.32-279.el6.i686 LVS版本:ipvsadm-1.26 keepalive ...

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

    源地址:http://www.cnblogs.com/mchina/archive/2012/08/27/2644391.html 一.简介 VS/NAT原理图: 二.系统环境 实验拓扑: 系统平台: ...

  6. RHEL 5.4下部署LVS(DR)+keepalived实现高性能高可用负载均衡

    原文地址:http://www.cnblogs.com/mchina/archive/2012/05/23/2514728.html 一.简介 LVS是Linux Virtual Server的简写, ...

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

    CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡   一.简介 VS/NAT原理图: 二.系统环境 实验拓扑: 系统平台:CentOS 6.3 Kernel:2 ...

  8. Dubbo+zookeeper构建高可用分布式集群(二)-集群部署

    在Dubbo+zookeeper构建高可用分布式集群(一)-单机部署中我们讲了如何单机部署.但没有将如何配置微服务.下面分别介绍单机与集群微服务如何配置注册中心. Zookeeper单机配置:方式一. ...

  9. 案例一(haproxy+keepalived高可用负载均衡系统)【转】

    1.搭建环境描述: 操作系统: [root@HA-1 ~]# cat /etc/redhat-release CentOS release 6.7 (Final) 地址规划: 主机名 IP地址 集群角 ...

随机推荐

  1. Java9之HashMap与ConcurrentHashMap

    HashMap在Java8之后就不再用link data bins了,而是转为用Treeify的bins,和之前相比,最大的不同就是利用了红黑树,所以其由 数组+链表+红黑树 组成.: * This ...

  2. hive 元数据库表描述

    元数据库表描述 这一节描述hive元数据库中比较重要的一些表的作用,随着后续对hive的使用逐渐补充更多的内容. mysql元数据库hive中的表: 表名 作用 BUCKETING_COLS 存储bu ...

  3. HttpRequest获得服务端和客户端的详细信息

    参考文档:http://blog.csdn.net/u012104100/article/details/43051301 http://blog.csdn.net/u011162260/articl ...

  4. 个人小爱好:Operating System: three easy pieces第6章第5节——总结

    总结 我们讨论了实现CPU虚拟化的部分底层机制,及我们统称为直接执行(direct execution)的一组技术.基本的思想十分简单明了:直接在CPU上运行你想运行的代码,但是你先得确保将硬件设置好 ...

  5. shop_z 一套非常适合二次开发的php后台管理系统

    QQ群:247823727 如果你需要定制某些功能开联系群主,价格实惠,后期交接完善,有上手培训 shop_z基础thinkphp5  php7上开发运行,速度杠杠的 地址:https://gitee ...

  6. 用VsCode写Markdown

    Markdown 基本语法 段落 非常自然,一行文字就是一个段落. 比如: 这是一个段落 会被解释成: <p>这是一个段落.</p> 如果你需要另起一段,请在两个段落之间隔一个 ...

  7. 推举算法 AdaBoost 哥德尔奖 Godel Prize

    推举算法 AdaBoost  2003年理论计算机科学界最高奖 哥德尔奖 Godel Prize

  8. python_打包成exe

    1. 安装pyinstaller pip install pyinstaller 或通过国内镜像下载(较快): pip install pyinstaller -i http://pypi.douba ...

  9. spark-sql中的DataFrame文件格式转储示例

    SparkConf sparkConf = new SparkConf() // .setMaster("local") .setAppName("DataFrameTe ...

  10. time和datetime和tzinfo

    time和datetime模块还有tzinfo (时区)(一直不明白两者的区别,然后摘了两片文章(最后面的两个链接),很清晰...) 一.time模块 常用函数 1. time()函数 time()函 ...