Haproxy方式实现的Impala负载均衡在Hue中配置Impala服务和impala shell

网友投稿 423 2022-11-23

Haproxy方式实现的Impala负载均衡在Hue中配置Impala服务和impala shell

内容概述

1.测试环境描述

2.Hue配置Impala负载均衡

3.测试Impala负载均衡

4.总结

测试环境

1.CM和CDH版本为5.13.1

2.Haproxy版本为1.5.18

前置条件

1.已配置好Haproxy实现的Impala负载均衡

2.环境描述

在CDH集群中使用Haproxy配置Impala服务的负载均衡,具体可参看Fayson前面的文章《如何使用HAProxy实现Impala的负载均衡》。

注:上图标注部分impalajdbc必须配置,否则在Hue中无法配置Impala的负载均衡。

Haproxy的配置如下:

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 local2    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#---------------------------------------------------------------------defaults    mode                       log                     global    option                     option                  dontlognull    #option    #option forwardfor       except 127.0.0.0/8    option                  redispatch    retries                 3    timeout    10s    timeout queue           1m    timeout connect         10s    timeout client          1m    timeout server          1m    timeout 10s    timeout check           10s    maxconn                 3000listen stats    bind 0.0.0.0:1080    mode    option    maxconn 5000    stats refresh 30s    stats  uri /stats listen hivejdbc    bind 0.0.0.0:10099    mode tcp    option tcplog    balance source    server ip-172-31-5-190.fayson.com ip-172-31-5-190.fayson.com:10000 check    server ip-172-31-6-148.fayson.com ip-172-31-6-148.fayson.com:10000 checklisten impalashell    bind 0.0.0.0:25003    mode tcp    option tcplog    balance leastconn    server cdh04.fayson.com cdh04.fayson.com:21000 check    server ip-172-31-5-190.fayson.com ip-172-31-5-190.fayson.com:21000 check    server ip-172-31-10-118.fayson.com ip-172-31-10-118.fayson.com:21000 checklisten impalajdbc    bind 0.0.0.0:25004    mode tcp    option tcplog    balance source    server cdh04.fayson.com cdh04.fayson.com:21050 check    server ip-172-31-5-190.fayson.com ip-172-31-5-190.fayson.com:21050 check    server ip-172-31-10-118.fayson.com ip-172-31-10-118.fayson.com:21050 check

(可左右滑动)

3.修改Hue配置

1.使用管理员登录Cloudera Manager的WEB控制台,进入hue服务的配置项页面

2.在配置项搜索”hue_safety_valve.ini”,在该配置项增加如下配置

[impala]server_host=ip-172-31-7-172.fayson.comserver_port=25004

配置项说明:

server_host: Haproxy服务的HOSTNAME或IP地址。

server_port: Haproxy中配置监听的impalajdbc的端口25004。

3.保存配置,回到CM主页根据提示重启Hue及相关服务

4.测试Impala是否正常访问

这里我们使用两个浏览器登录Hue,来对Impala进行操作,查看Haproxy是否有负载均衡。

1.使用谷歌浏览器登录Hue,执行SELECT操作

查看此时Haproxy的监控界面,可以看到使用谷歌浏览器登录操作Impala连接的是ip-172-31-10-118.fayson.com节点的Impala Daemon服务

2.使用Safari浏览器登录Hue,执行SELECT操作

SQL执行成功,查看此时Haproxy的监控界面,可以看到使用Safari浏览器登录操作Impala连接的是cdh04.fayson.com节点的Impala Daemon服务

5.总结

在Hue中配置连接多个ImpalaDaemon需要先配置Impala服务JDBC的负载均衡。 在配置impalajdbc的Haproxy时需要将负载均衡的策略指定为balance source否则在使用时会报“Results have expired, rerun the query ifneeded” balance source是将用户的IP地址经过Hash计算后制定到固定的服务器上。

impala shell的测试

impala-shell -i dbos-bigdata-test003:25003

测试结果

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:微软正在研发一种识别静音语音命令的技术
下一篇:Java爬虫范例之使用Htmlunit爬取学校教务网课程表信息
相关文章

 发表评论

暂时没有评论,来抢沙发吧~