一、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. react+mobx 编写 Async装饰器

    使用 // indexStore.js import axios from "axios"; import { from } from "rxjs"; impo ...

  2. ajax方式提交表单数据并判断当前注册用户是否存在

    项目的目录结构 源代码: regservlet.java package register; import java.io.IOException; import java.io.PrintWrite ...

  3. SecureCRT操作指令

    连接服务器,文件——连接SFTP会话,然后可以help查看命令 传输文件需要明确并处在客户端和服务器端两个正确路径下, 服务器端的操作: cd——去服务器指定的路径 pwd——查看服务器端当前目录 l ...

  4. js设计模式(六)---组合模式

    组合模式将对象组合成树形结构,以表示“部分-整体”的层次结构.除了用来表示树形结构之外,组合模式的另一个好处是通过对象的多态性表现,使得用户对单个对象和组合对象的使用具有一致性.基本图例 1.组合模式 ...

  5. C#压缩图片时保留原始的Exif信息

    啥是Exif信息,有啥用,百度百科有解释: Exif百科 总之,这东西对摄影爱好者来说是不可或缺的,通常使用Photoshop来压缩只要不是保存为Web格式都会保留Exif信息. 而我们写代码来压缩图 ...

  6. linux命令: 两个查找工具 locate,find

    linux 中有很多查找工具,今天主要讲解locate,find两个工具. 1.locate (1)查询系统上预建的文件索引数据库 /var/lib/mlocate/mlocate.db 注意:如果这 ...

  7. mysql 用户及权限

    永远不要给任何人(除了MySQL root帐户)访问 数据库中的 user表mysql!这很关键. mysql.user表存放所有用户的主机,用户名,密码,权限.直接修改表中信息,需flush pri ...

  8. pycharm import pygame 出现报错:No module named 'pygame'

    首先发现装的Python 有问题原来的Python3.6.4版本安装完成后Scripts文件夹里空白的,什么也没有,从https://www.python.org/downloads/windows/ ...

  9. python基础(12)-包的导入&异常处理

    包的导入 几种导入方式 import 包名 import time time.time() import 包名,包名 import time,sys time.time() sys.path from ...

  10. python selenium webdriver入门基本操作

    python selenium webdriver入门基本操作 未经作者允许,禁止转载! from selenium import webdriver import time driver=webdr ...