Impala负载均衡方案

本文详细介绍了如何使用haproxy实现Impala的四层负载均衡,包括配置haproxy的步骤和示例配置文件。同时,针对kerberos环境下的连接问题,提出了修改principal的方法,通过合并keytab文件确保每个impalad节点能够识别相同的principal,从而解决创建连接时的异常。最后,文章提到了haproxy本身的高可用性方案。
摘要由CSDN通过智能技术生成

概述

Impala分为是三个组件,statestored/catalogd和impalad,其中statestored和catalogd是单点的,没有高可用的需求,因为这两个实例是无状态的,本身不存储任何数据,例如catalogd的数据存储在第三方数据库(例如mysql中),statestore的数据全都存储在内存中,可以通过简单的主备的方式来实现高可用,本文最后会提到。正常情况下只有master提供服务,slave只是运行状态但是不接受任何请求,当master出现问题之后再slave提升为master提供服务。

而对于impalad节点,每一个节点都可以提供jdbc和thrift等服务,并且对于连接到该impalad的查询作为coordinator节点(需要消耗一定的内存和CPU)存在,为了保证每一个节点的负载的平衡需要对于这些impalad做一下均衡,负载均衡分为四层负载均衡和七层负载均衡,前者是针对运输层的,后者是针对应用层的,区别在于前者不需要了解应用协议,只需要对传输层收到的IP数据包进行转发,而后者需要了解应用协议的,而对于impalad这种SQL服务器,就需要使用SQL协议的代理,所以七层代理对于impalad是有点不切实际的。

下面以haproxy作为四层代理服务器来说明如何对impalad节点进行load balance。官方推荐的代理方案参见该文档

除了本文档提到的使用 load-balancing proxy server外,最简单的方案莫过于使用DNS做负载均衡,但

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值