Impala实践之七:添加负载均衡

前言

impala的负载均衡,使用haproxy来做,主要是比较简单。安装后做一个小配置就行。

主要用的就是haproxy四层交换机的特性,讲所有指向haproxy主机和端口的请求,转发到相应的主机:端口上。

cdh官网里面的信息已经比较久了,有些配置需要改,因此做一个笔记。

impala负载

安装haproxy

yum install haproxy

配置文件

vim /etc/haproxy/haproxy.cfg

下面是一个实际的配置文件,主机信息已经隐藏。

global
    # To have these messages end up in /var/log/haproxy.log you will
    # need to:
    #
    # 1) configure syslog to accept network log events.  This is done
    #    by adding the ‘-r‘ option to the SYSLOGD_OPTIONS in
    #    /etc/sysconfig/syslog
    #
    # 2) configure local2 events to go to the /var/log/haproxy.log
    #   file. A line like the following can be added to
    #   /etc/sysconfig/syslog
    #
    #    local2.*                       /var/log/haproxy.log
    #
    log         127.0.0.1 local0
    log         127.0.0.1 local1 notice
    chroot      /var/lib/haproxy
    pidfile     /var/run/haproxy.pid
    maxconn     4000
    user        haproxy
    group       haproxy
    daemon

    # turn on stats unix socket
    #stats socket /var/lib/haproxy/stats

#---------------------------------------------------------------------
# common defaults that all the ‘listen‘ and ‘backend‘ sections will
# use if not designated in their block
#
# You might need to adjust timing values to prevent timeouts.
#---------------------------------------------------------------------
defaults
    mode                    http
    log                     global
    option                  httplog
    option                  dontlognull
    option http-server-close
    option forwardfor       except 127.0.0.0/8
    option                  redispatch
    retries                 3
    maxconn                 3000

    #连接时间需要修改,因为如果时间较短的话会出现,任务在执行,但是连接已经断开所以获取不到结果的情况。
    timeout connect 3600000ms
    timeout client 3600000ms
    timeout server 3600000ms

#
# This sets up the admin page for HA Proxy at port 25002.
#
listen stats :25002
    balance
    mode http
    stats enable
    stats auth admin:admin

# This is the setup for Impala. Impala client connect to load_balancer_host:25003.
# HAProxy will balance connections among the list of servers listed below.
# The list of Impalad is listening at port 21000 for beeswax (impala-shell) or original ODBC driver.
# For JDBC or ODBC version 2.x driver, use port 21050 instead of 21000.

# 注意:haproxy-host-ip是haproxy的ip地址,主机名也可以
listen impala haproxy-host-ip:25003

    # impala负载均衡需要第四层的,所以填tcp
    mode tcp
    option tcplog
    balance leastconn

    #主机列表
    #impala-host-1是impala的主机列表
    #由于是要对jdbc的请求进行转发,所以端口设置的是21050
    server impala-1 impala-host-1:21050
    server impala-2 impala-host-2:21050
    server impala-3 impala-host-3:21050
    server impala-4 impala-host-4:21050

启动

/usr/sbin/haproxy  -f   /etc/haproxy/haproxy.cfg

使用

使用起来十分方便,区别仅仅相当于是修改了一个ip地址和端口而已,其余不变。

jdbc:hive2://haproxy-host-ip:25003/;auth=noSasl

总结

网络知识基本上是废的差不多了,之前四层交换机都想不起来是什么东东。重新稍微温习一下基础,在脑子里面就会对这些负载均衡还是什么几层交换机理解了,再来做工程,至少是从原理上能有所把握,不至于是为了做东西而做东西,一堆堆的组件拼接。

来源:

http://blog.csdn.net/zhaodedong

http://zhaodedong.leanote.com

http://zhaodedong.com



2016-04-21 15:17:00 hzct

时间: 2024-08-27 17:27:13

Impala实践之七:添加负载均衡的相关文章

当Kubernets遇上阿里云 -之七层负载均衡(一).

我们知道Kubernetes的service只能实现基于4层的负载均衡,无法提供7层之上的许多特性,诸如基于URL的负载均衡,SSL支持,三方授权等等:Ingress可以实现七层负载均衡的许多功能,唯一的遗憾就是无法提供一个固定的接入IP.想想当你为业务申请了一个域名后准备将域名绑定到IngressIP上的时候,却发现后端IP会时不时的变一下是怎样的心情.本文结合阿里云SLB为Kubernetes服务提供7层之上的负载均衡.本文假设您已经有一个支持阿里云的Kubernetes部署,参考. 本教程

排查网络故障实践:解决负载均衡的难题

对网络问题进行故障排查往往是件棘手的任务,而负载均衡器的存在则会带来其它更为复杂的挑战.我们很难判断负载均衡器单纯是在丢弃数据包.以某种方式变更数据包还是导致网络整体延迟水平上升.不过在今天的文章中,我们将共享几项常见技巧,相信它们能帮助各位更加轻松地发现问题所在. 对于任何一种故障排查流程来讲,首先要做的肯定是检查整套实体的统计信息.然而,即使统计信息显示一切运转正常,我们仍然不能就此排除存在网络问题的可能性.接下来,我们要做的就是引入故障排查领域的中立处理手段——数据包分析.虽然目前已经有大

负载均衡的mariadb集群搭建

集群介绍: Galera是一个MySQL(也支持MariaDB,Percona)的同步多主集群软件,目前只支持InnoDB引擎. 主要功能: 同步复制 真正的multi-master,即所有节点可以同时读写数据库 自动的节点成员控制,失效节点自动被清除 新节点加入数据自动复制 真正的并行复制,行级 用户可以直接连接集群,使用感受上与MySQL完全一致 优势: 因为是多主,所以不存在Slave lag(延迟) 不存在丢失交易的情况 同时具有读和写的扩展能力 更小的客户端延迟 节点间数据是同步的,而

nginx 负载均衡+keepalived实现双机热备

部署 ip分配 nginx192.168.1.5主机  192.168.1.6备机  浮动ip192.168.1.7 首先设置浮动ip(主备机器都要设置) 打开网卡eth0 配置好网络参数 复制eth0为eth0:1 修改vim eth0:1 NAME = eth0:1 DEVICE = eth0:1 IPADDR = 192.168.1.7 开启转发 echo "1" > /proc/sys/net/ipv4/ip_forward 修改/etc/sysctl.conf文件,让包

web负载均衡整理

参考:http://www.cnblogs.com/lovingprince/archive/2008/11/13/2166350.html http://www.cnblogs.com/lovingprince/archive/2008/11/13/2166349.html http://news.cnblogs.com/n/208124/ http://network.51cto.com/art/201108/281452.htm 负载均衡的概念 Web集群是由多个同时运行同一个web应用的

DHCP负载均衡 实验

1. 搭建一个域:192.168.1.2/24 2. 搭建两台DHCP,两台DHCP都加入域中,DHCP1:192.168.1.10/24, DHCP2:192.168.1.20/24,网关均为:192.168.1.1,DNS均为:192.168.1.2 3. 给两台DHCP服务器安装DHCP服务 4. 在DHCP1上创建Scope 5. 添加负载均衡的DHCP2服务器 next, 选择dhcp2, next, 选择Load balance还是Hot balance,此处我选择负载均衡(Load

(转)ubuntu apache2 的负载均衡和反向代理

apache功能其实很是强大,最近一段时间研究了下apache的反向代理和负载均衡,反向代理网协的外网出口和我的博客出口就是通过apache的反向代理实现的,总结一下,重点说说负载均衡的配置. 首先说先实验环境吧 操作系统:DEBIAN 5.03(Ubuntu也可以同理配置) 一.安装apache加载模块 apt-get install apache2然后进入到apache的配置目录cd /etc/apache2apache的反向代理和负载均衡其实利用的都是反向代理的原理,至于什么叫做反向代理可

负载均衡软件之Apache以及和tomcat整合

Apache不仅可以作为WEB服务器,也能够作为负载均衡服务器或者反向代理服务器. 部分文字和内容来自网络. 首先,Apache并不是用来设计做负载均衡服务器的,如果需要使用Apache的负载均衡功能,需要手动开启Apache的mod_proxy模块. 利用Apache做负载均衡,有一些基本配置 1).基本配置 假设有一个域名为:www.a.com 的网站要用apache作为负载均衡设备, 首先需要启用Apache的几个必须的模块: Httpd.conf代码 LoadModule proxy_m

【nginx】配置Nginx实现负载均衡

在关于高并发负载均衡一文中已经提到,企业在解决高并发问题时,一般有两个方向的处理策略,软件.硬件,硬件上添加负载均衡器分发大量请求,软件上可在高并发瓶颈处:数据库+web服务器两处添加解决方案,其中web服务器前面一层最常用的的添加负载方案就是使用nginx实现负载均衡. 一.负载均衡的作用 1.转发功能 按照一定的算法[权重.轮询],将客户端请求转发到不同应用服务器上,减轻单个服务器压力,提高系统并发量. 2.故障移除 通过心跳检测的方式,判断应用服务器当前是否可以正常工作,如果服务器期宕掉,