Revision as of 23:22, November 8, 2016 by Sschlich (talk | contribs)
Jump to: navigation, search

Setting up the Load Balancer in a Multi-tenant Environment

Follow the instructions on this page and for each tenant, create a separate /etc/httpd/conf.d/loadbalancer_tenantN.conf file. In addition, provide each tenant with a separate balancer rule, ProxyPass and the following URI conventions:

  • Web Services
  • http://loadbalancer/t1/api
  • http://loadbalancer/t1/internal-api
  • http://loadbalancer/t1/ui
  • Recording Processor
  • http://loadbalancer/t1/rp
  • Recording Crypto Server
  • http://loadbalancer/t1/rcs
  • Interaction Receiver
  • http://loadbalancer/t1/interactionreceiver
  • WebDAV Server
  • http://loadbalancer/t1/webdav

loadbalancer_tenantN.conf
Header add Set-Cookie "ROUTEID=.%{BALANCER_WORKER_ROUTE}e; path=/"
env=BALANCER_ROUTE_CHANGED
# Web Server for tenant 1
<Proxy balancer://htcc1>
BalancerMember http://htcc1:8080 route=HTCC1
BalancerMember http://htcc2:8080 route=HTCC2
BalancerMember http://htcc3:8080 route=HTCC3
ProxySet stickysession=ROUTEID
</Proxy>
ProxyPass /t1/api balancer://htcc1/api
ProxyPass /t1/internal-api balancer://htcc1/internal-api
ProxyPass /t1/ui balancer://htcc1/ui
# RP for tenant 1
<Proxy balancer://rp1>
BalancerMember http://rp1:8889
BalancerMember http://rp2:8889
</Proxy>
ProxyPass /t1/rp/api balancer://rp1/api
# RCS for tenant 1
<Proxy balancer://rcs1>
BalancerMember http://rcs1:8008 connectiontimeout=10000ms route=RCS
BalancerMember http://rcs2:8008 connectiontimeout=10000ms route=RCS_b
</Proxy>
ProxyPass /t1/rcs balancer://rcs1/rcs stickysession=JSESSIONID
# Interaction Receiver for tenant 1
<Proxy balancer://sm1>
BalancerMember http://ir1
BalancerMember http://ir2 status=H
</Proxy>
ProxyPass /t1/interactionreceiver balancer://sm1/interactionreceiver
ProxyPass /t1/webdav/dest2 balancer://webdav1/dest2

Follow the instructions on this page and for each tenant create a separate/etc/httpd/conf.d/loadbalancer_tenantN.conf file. In addition, provide each tenant with a separate balancer rule, ProxyPass and the following URI conventions:

  • Interaction Recording Web Services
  • http://loadbalancer/t1/api
  • http://loadbalancer/t1/internal-api
  • http://loadbalancer/t1/ui
  • Recording Processor
  • http://loadbalancer/t1/rp
  • Recording Crypto Server
  • http://loadbalancer/t1/rcs
  • Interaction Receiver
  • http://loadbalancer/t1/interactionreceiver
  • WebDAV Server
  • http://loadbalancer/t1/webdav

loadbalancer_tenantN.conf
Header add Set-Cookie "ROUTEID=.%{BALANCER_WORKER_ROUTE}e; path=/"
env=BALANCER_ROUTE_CHANGED

# Web Server for tenant 1
<Proxy balancer://rws1>
BalancerMember http://rws1:8080 route=RWS1
BalancerMember http://rws2:8080 route=RWS2
BalancerMember http://rws3:8080 route=RWS3
ProxySet stickysession=ROUTEID
</Proxy>
ProxyPass /t1/api balancer://rws1/api
ProxyPass /t1/internal-api balancer://rws1/internal-api
ProxyPass /t1/ui balancer://rws1/ui

# RP for tenant 1
<Proxy balancer://rp1>
BalancerMember http://rp1:8889
BalancerMember http://rp2:8889
</Proxy>
ProxyPass /t1/rp/api balancer://rp1/api

# RCS for tenant 1
<Proxy balancer://rcs1>
BalancerMember http://rcs1:8008 connectiontimeout=10000ms route=RCS
BalancerMember http://rcs2:8008 connectiontimeout=10000ms route=RCS_b
</Proxy>
ProxyPass /t1/rcs balancer://rcs1/rcs stickysession=JSESSIONID

# Interaction Receiver for tenant 1
<Proxy balancer://sm1>
BalancerMember http://ir1
BalancerMember http://ir2 status=H
</Proxy>
ProxyPass /t1/interactionreceiver balancer://sm1/interactionreceiver

# WebDAV for tenant 1
<Proxy balancer://webdav1>
BalancerMember http://webdav1
BalancerMember http://webdav2 status=H
</Proxy>
ProxyPass /t1/webdav/recordings balancer://webdav1/recordings
ProxyPass /t1/webdav/dest2 balancer://webdav1/dest2

Follow the instructions on this page and for each tenant create a separate/etc/httpd/conf.d/loadbalancer_tenantN.conf file. In addition, provide each tenant with a separate balancer rule, ProxyPass and the following URI conventions:

  • Web Services
  • http://loadbalancer/t1/api
  • http://loadbalancer/t1/internal-api
  • http://loadbalancer/t1/ui
  • Interaction Recording Web Services
  • http://loadbalancer/t1/gir/api
  • http://loadbalancer/t1/gir/internal-api
  • Recording Processor
  • http://loadbalancer/t1/rp
  • Recording Crypto Server
  • http://loadbalancer/t1/rcs
  • Interaction Receiver
  • http://loadbalancer/t1/interactionreceiver
  • WebDAV Server
  • http://loadbalancer/t1/webdav

loadbalancer_tenantN.conf
Header add Set-Cookie "ROUTEID=.%{BALANCER_WORKER_ROUTE}e; path=/"
env=BALANCER_ROUTE_CHANGED

# Genesys Web Server for tenant 1
<Proxy balancer://t1htcc>
BalancerMember http://t1htcc1:8080 route=T1HTCC1
BalancerMember http://t1htcc2:8080 route=T1HTCC2
BalancerMember http://t1htcc3:8080 route=T1HTCC3
ProxySet stickysession=ROUTEID
</Proxy>
ProxyPass /t1/api balancer://t1htcc/api
ProxyPass /t1/internal-api balancer://t1htcc/internal-api
ProxyPass /t1/ui balancer://t1htcc/ui

# Recording Web Server for tenant 1
<Proxy balancer://t1rws>
BalancerMember http://t1rws1:8080 route=T1RWS1
BalancerMember http://t1rws2:8080 route=T1RWS2
BalancerMember http://t1rws3:8080 route=T1RWS3
ProxySet stickysession=ROUTEID
</Proxy>
ProxyPass /t1/gir/api balancer://t1rws/api
ProxyPass /t1/gir/internal-api balancer://t1rws/internal-api

# RP for tenant 1
<Proxy balancer://rp1>
BalancerMember http://rp1:8889
BalancerMember http://rp2:8889
</Proxy>
ProxyPass /t1/rp/api balancer://rp1/api

# RCS for tenant 1
<Proxy balancer://rcs1>
BalancerMember http://rcs1:8008 connectiontimeout=10000ms route=RCS
BalancerMember http://rcs2:8008 connectiontimeout=10000ms route=RCS_b
</Proxy>
ProxyPass /t1/rcs balancer://rcs1/rcs stickysession=JSESSIONID

# Interaction Receiver for tenant 1
<Proxy balancer://sm1>
BalancerMember http://ir1
BalancerMember http://ir2 status=H
</Proxy>
ProxyPass /t1/interactionreceiver balancer://sm1/interactionreceiver

# WebDAV for tenant 1
<Proxy balancer://webdav1>
BalancerMember http://webdav1
BalancerMember http://webdav2 status=H
</Proxy>
ProxyPass /t1/webdav/recordings balancer://webdav1/recordings
ProxyPass /t1/webdav/dest2 balancer://webdav1/dest2

Comments or questions about this documentation? Contact us for support!