Edit
Attach
P
rintable
r11 - 2019-01-22 - 11:52:10 -
ShubjitNaik
You are here:
TWiki
>
Deployment Web
>
DeploymentInstallingUpgradingAndMigrating
>
InstallProxyServers
>
CompareProxyServers
<div id="header-title" style="padding: 10px 15px; border-width:1px; border-style:solid; border-color:#FFD28C; background-image: url(<nop>https://jazz.net/wiki/pub/Deployment/WebPreferences/TLASE.jpg); background-size: cover; font-size:120%"> ---+!! Reverse Proxies and Load Balancers in CLM Deployment <img src="https://jazz.net/wiki/pub/Deployment/WebPreferences/todo.png" alt="todo.png" width="50" height="50" align="right"> %DKGRAY% Authors: Main.ShubjitNaik, Main.DineshKumar, Main.JimRuehlin <br> Build basis: CLM 6.0.6 %ENDCOLOR%</div></sticky> <!-- Page contents top of page on right hand side in box --> <sticky><div style="float:right; border-width:1px; border-style:solid; border-color:#DFDFDF; background-color:#F6F6F6; margin:0 0 15px 15px; padding: 0 15px 0 15px;"> %TOC{title="Page contents"}% </div></sticky> <sticky><div style="margin:15px;"></sticky> This article focuses on the benefits and limitations of different Reverse Proxy Servers and Load Balancers used in standard deployment topologies of IBM Collaborative Lifecycle Management and Continuous Engineering Solutions. ---++ Reverse Proxy A Reverse Proxy is a gateway for servers, and enables one web server to provide content from other servers transparently. It can redirect the traffic to specific applications based on the configuration related to the context root in the URL. Example /ccm, /rm etc. For a distributed deployment, where each application from the stack within the CLM/CE deployment is deployed on its own server, to maintain a single Public URL and hide the underlying deployment you should use a Reverse proxy server.<br> For more Information visit [[https://jazz.net/wiki/bin/view/Deployment/UnderstandingReverseProxy][Understanding Reverse Proxy]] The only supported and tested Reverse Proxy server with CLM and CE Deployment is : * [[https://www.ibm.com/support/knowledgecenter/en/SSEQTJ/mapfiles/product_welcome_ihs.html][IBM HTTP SERVER]] However, we have customers who have worked with other Proxy Servers for CLM and CE Deployment and we have listed them below : * [[https://httpd.apache.org/][Apache HTTP Server]] * [[https://www.f5.com/][F5]] ---++ Load Balancer A Web server that takes cares of redirecting and balancing incoming traffic, based on configured algorithms, between different nodes in a Clustered Setup. <br><br> A load balancer is a requirement for a clustered setup: multiple instances of the same application are running connecting to the same database. As of the publication date, RTC is the only application that can be setup in clustered mode.<br> <br>The supported and tested Load Balancers with Rational Team Concert Clustered Setup are: * [[https://www.ibm.com/support/knowledgecenter/en/SSEQTJ/mapfiles/product_welcome_ihs.html][IBM HTTP Server]] * [[http://www.haproxy.org/][HAProxy]] <br> The following tables lists the key differences between IHS and HAProxy %TABLE{ sort="on" tableborder="1" cellpadding="3" cellspacing="3" headerbg="#D5CCB1" headercolor="#666666" databg="#FAF0D4, #F3DFA8" headerrows="1" footerrows="1" }% | | <b>IBM HTTP SERVER</b> | <b>HAPROXY</b> | | | | | | <b>Support</b> | IBM Support | Forum Support (Community Edition), [[https://www14.software.ibm.com/support/customercare/sas/f/handbook/policies.html][IBM Support Policy on Third party and Open Source software]]<br><br>IBM has documented instructions on installation and configuration of HAProxy in the context of deploying a Clustered Setup of RTC| | <b>Operating Systems</b> | Can be installed on Windows, Linux and AIX Platforms | Can be installed on Linux Platforms Only | | <b>CLM Versions</b> | Supported as a Load Balancer from CLM/CE version 6.0.5 Onwards | Supported as a Load Balancer from CLM/CE 6.0.4 Onwards | | <b>Load Balancing </b>| The following Load Balancing Policies are supported by IHS, the default load balancing type is Round Robin. <br><br> <b>Round Robin</b> <br> <i>The Round Robin implementation has a random starting point. The first application server is picked randomly. Round Robin is then used to pick application servers from that point forward. This implementation ensures that in multiple process-based web servers, all of the processes do not start by sending the first request to the same Application Server.</i><br><br><b>Random </b><br> <i>The Random implementation also has a random starting point. However with this implementation all subsequent servers are also randomly selected. Therefore, the same server might get selected repeatedly while other servers remain idle.</i><br> | HAProxy supports a rich set of Load Balancing algorithms and the default is Leastconn. Following are a few examples: <br><br> <b>Round Robin</b> <br><i>Each server is used in turns, according to their weights. This algorithm is dynamic, which means that server weights may be adjusted on the fly for slow starts for instance. Note that in some large farms, when a server goes up after having been down for a very short time, it may sometimes take a few hundreds requests for it to be re-integrated into the farm and start receiving traffic. This is normal, though very rare. It is indicated here in case you would have the chance to observe it, so that you don't worry.</i><br> <br> <b>Static Round Robin </b><br> <i>Each server is used in turns, according to their weights. This algorithm is as similar to roundrobin except that it is static, which means that changing a server's weight on the fly will have no effect. On the other hand, when a server goes up, it is always immediately reintroduced into the farm, once the full map is recomputed. It also uses slightly less CPU to run (around -1%).</i><br> <br><b>Leastconn </b><br> <i>The server with the lowest number of connections receives the connection. Round-robin is performed within groups of servers of the same load to ensure that all servers will be used. This algorithm is dynamic, which means that server weights may be adjusted on the fly for slow starts for instance. </i><br> <br><b>Source</b> <br> <i>The source IP address is hashed and divided by the total weight of the running servers to designate which server will receive the request. This ensures that the same client IP address will always reach the same server as long as no server goes down or up. This algorithm is static by default, which means that changing a server's weight on the fly will have no effect, but this can be changed using "hash-type".</i><br> | | <b>High Availability</b> | YES | YES | | <b>Monitoring</b> | External Tools can be used | Statistics Reports is Bundled with HAProxy UI. External Tools can be used as well | | <b>As a Reverse Proxy</b> | Supported and Tested<br> - The major advantage of using IBM HTTP Server is that a single server can be used as a Reverse Proxy and as the Load Balancer| Not Tested or Supported as a Reverse Proxy <BR> - HAProxy is tested as a Load Balancer ONLY for RTC clustered setup in combination with IBM HTTP Server as a Reverse proxy| <br> * HAProxy's additional options for load balancing makes it an attractive option for deployments in which the admin team value this flexibility and can accept the cost of another proxy specifically for load balancing. <br> ---++ Content Caching Proxy It is possible to cache files managed by RTC SCM to improve the performance of remote SCM access and build servers. For more information about using the Squid Caching proxy, see <br> * [[ContentCachingProxyJazzSCM][Using Squid Content Caching Proxy for Jazz Source Control]] * [[SquidProxyJazzSCMWindows][Using Squid Content Caching Proxy for Jazz Source Control - Windows]] Additionally we have reports of some customers using Apache Traffic Server as content caching proxies for RTC SCM. <br><br> ---+++++!! Related topics: [[DeploymentWebHome][Deployment web home]], [[https://jazz.net/wiki/bin/view/Deployment/InstallProxyServers][Installing Proxy Servers]] ---+++++!! External links: * [[https://www.ibm.com][IBM]] <!-- ---+++++!! Additional contributors: Main.TWikiUser, Main.TWikiUser --> <sticky></div></sticky>
Edit
|
Attach
|
P
rintable
|
V
iew topic
|
Backlinks:
We
b
,
A
l
l Webs
|
H
istory
:
r22
|
r13
<
r12
<
r11
<
r10
|
More topic actions...
Deployment
Deployment web
Planning and design
Installing and upgrading
Migrating and evolving
Integrating
Administering
Monitoring
Troubleshooting
Community information and contribution guidelines
Create new topic
Topic list
Search
Advanced search
Notify
RSS
Atom
Changes
Statistics
Web preferences
NOTE: Please use the Sandbox web for testing
Status icon key:
To do
Under construction
New
Updated
Constant change
None - stable page
Smaller versions of status icons for inline text:
Copyright © by IBM and non-IBM contributing authors. All material on this collaboration platform is the property of the contributing authors.
Contributions are governed by our
Terms of Use.
Please read the following
disclaimer
.
Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more
here
.