forked from ISTI-ansible-roles/ansible-roles
Add haproxy support for some services.
This commit is contained in:
parent
ee8ceb8978
commit
2681156ce2
|
@ -48,3 +48,4 @@ cdh_zeppelin_work_dirs:
|
||||||
cdh_zeppelin_ldap_auth: True
|
cdh_zeppelin_ldap_auth: True
|
||||||
cdh_zeppelin_dedicated_node: False
|
cdh_zeppelin_dedicated_node: False
|
||||||
|
|
||||||
|
cdh_impala_load_balancer: False
|
|
@ -7,4 +7,6 @@
|
||||||
when: cdh_oozie_server
|
when: cdh_oozie_server
|
||||||
- import_tasks: zeppelin.yml
|
- import_tasks: zeppelin.yml
|
||||||
when: cdh_zeppelin_node
|
when: cdh_zeppelin_node
|
||||||
|
- import_tasks: services-haproxy.yml
|
||||||
|
when: cdh_impala_load_balancer
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,7 @@
|
||||||
|
---
|
||||||
|
- block:
|
||||||
|
- name: Install the haproxy configuration
|
||||||
|
template: src=hue-hive-impala_haproxy.cfg dest=/etc/haproxy/haproxy.cfg owner=root group=root
|
||||||
|
notify: Reload haproxy
|
||||||
|
|
||||||
|
tags: [ 'cdh', 'haproxy', 'impala', 'hue', 'hive' ]
|
|
@ -0,0 +1,84 @@
|
||||||
|
global
|
||||||
|
# References:
|
||||||
|
# https://www.cloudera.com/documentation/enterprise/5-13-x/topics/impala_proxy.html
|
||||||
|
# https://www.cloudera.com/documentation/enterprise/5-13-x/topics/hue_sec_ha.html#concept_ef1_1pf_51b
|
||||||
|
#
|
||||||
|
# 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 /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
|
||||||
|
contimeout 5000
|
||||||
|
clitimeout 50000
|
||||||
|
srvtimeout 50000
|
||||||
|
|
||||||
|
#
|
||||||
|
# This sets up the admin page for HA Proxy at port 25002.
|
||||||
|
#
|
||||||
|
# listen stats :25002
|
||||||
|
# balance
|
||||||
|
# mode http
|
||||||
|
# stats enable
|
||||||
|
# stats auth username:password
|
||||||
|
|
||||||
|
# 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.
|
||||||
|
listen impala :25003
|
||||||
|
mode tcp
|
||||||
|
option tcplog
|
||||||
|
balance leastconn
|
||||||
|
{% for host in groups['workers'] %}
|
||||||
|
server {{ host }} {{host }}:21000 check
|
||||||
|
{% endfor %}
|
||||||
|
|
||||||
|
# Setup for Hue or other JDBC-enabled applications.
|
||||||
|
# In particular, Hue requires sticky sessions.
|
||||||
|
# The application connects to load_balancer_host:21051, and HAProxy balances
|
||||||
|
# connections to the associated hosts, where Impala listens for JDBC
|
||||||
|
# requests on port 21050.
|
||||||
|
listen impalajdbc :21051
|
||||||
|
mode tcp
|
||||||
|
option tcplog
|
||||||
|
balance source
|
||||||
|
{% for host in groups['workers'] %}
|
||||||
|
server {{ host }} {{host }}:21050 check
|
||||||
|
{% endfor %}
|
||||||
|
|
Loading…
Reference in New Issue