Technical specification



Similar documents
EQUELLA. Clustering Configuration Guide. Version 6.0

Setting Up B2B Data Exchange for High Availability in an Active/Active Configuration

Installing an SSL certificate on the InfoVaultz Cloud Appliance

1. Introduction 2. Getting Started 3. Scenario 1 - Non-Replicated Cluster 4. Scenario 2 - Replicated Cluster 5. Conclusion

EQUELLA. Clustering Configuration Guide. Version 6.2

The only skill required really is to locate and edit text-files with a text-editor like Notepad.

DEPLOYMENT GUIDE Version 1.0. Deploying the BIG-IP LTM with Apache Tomcat and Apache HTTP Server

By PANKAJ SHARMA. Concepts of Server Load Balancing

PROXY SETUP WITH IIS USING URL REWRITE, APPLICATION REQUEST ROUTING AND WEB FARM FRAMEWORK OR APACHE HTTP SERVER FOR EMC DOCUMENTUM EROOM

White Paper DEPLOYING WDK APPLICATIONS ON WEBLOGIC AND APACHE WEBSERVER CLUSTER CONFIGURED FOR HIGH AVAILABILITY AND LOAD BALANCE

Apache HTTP Server. Load-Balancing with Apache HTTPD 2.2 and later. Erik Abele

Setup a Virtual Host/Website

ULTEO OPEN VIRTUAL DESKTOP UBUNTU (PRECISE PANGOLIN) SUPPORT

SITEMINDER SSO FOR EMC DOCUMENTUM REST

Technical specification

Rails Application Deployment. July Philly on Rails

WebBridge LR Integration Guide

Apache and Virtual Hosts Exercises

CentraSite SSO with Trusted Reverse Proxy

1. Configuring Apache2 Load Balancer with failover mechanism

Network and Scalability Whitepaper

Apache httpd v2.4: Reverse Proxy. (The Hidden Gem) Jim Jagielski

deploying meteor with meteor up

Configuring Ubuntu Server as a Firewall and Reverse Proxy for OWA 2007 Configuration Guide

CTIS486 Midterm Solution 23/07/ Akgül

Configuring IIS 6 to Load Balance a JBoss 4.2 Adobe LiveCycle Enterprise Suite 2 (ES2) Cluster

Created by : Ashish Shah, J.M. PATEL COLLEGE UNIT-5 CHAP-1 CONFIGURING WEB SERVER

Apache HTTP Server. Implementation Guide. (Version 5.7) Copyright 2013 Deepnet Security Limited

CC ICT-SUD. Setting up and integrate Apache, MySQL and PHP on a Linux system

Installing Apache Software

HOW TO BUILD A VMWARE APPLIANCE: A CASE STUDY

Painless Web Proxying with Apache mod_proxy

How to Install Multicraft on a VPS or Dedicated Server (Ubuntu bit)

Installing Rails 2.3 Under CentOS/RHEL 5 and Apache 2.2

SIMIAN systems. Setting up a Sitellite development environment on Mac OS X. Sitellite Content Management System

Apache 2.2 and mod_proxy_balancer

Implementing a Weblogic Architecture with High Availability

Configuring Remote HANA System Connection for SAP Cloud for Analytics via Apache HTTP Server as Reverse Proxy

Ulteo Open Virtual Desktop Installation

Kollaborate Server Installation Guide!! 1. Kollaborate Server! Installation Guide!

Release Notes Date: September 2013

Cookbook Secure Failover for Tomcat Application Server Use Apache, mod_proxy, mod_security, mod_ssl to offer secure application delivery

Host your websites. The process to host a single website is different from having multiple sites.

Rails 5. web CGI. okkez Ruby. Apache. lighttpd. WEBrick. Mongrel. Thin. Rails. Virtual Host

INUVIKA OVD INSTALLING INUVIKA OVD ON UBUNTU (TRUSTY TAHR)

How to setup HTTP & HTTPS Load balancer for Mediator

High Availability Low Dollar Load Balancing

CumuLogic Connector for Citrix CloudPlatform Business Manager Guide

This section is intended to provide sample configurations and script examples common to long-term operation of a Jive SBS installation.

Apache & Virtual Hosts & mod_rewrite

Mastering Advanced GeoNetwork

Installing Rails 2.3 Under Windows XP and Apache 2.2

HP ALM. Software Version: External Authentication Configuration Guide

Tonido Cloud Admin Guide

Installation documentation for Ulteo Open Virtual Desktop

Spectrum Technology Platform Version Tutorial: Load Balancing Spectrum Spatial Services. Contents:

ViMP 3.0. SSL Configuration in Apache 2.2. Author: ViMP GmbH

High Availability with Elixir

INSTALLATION GUIDE VERSION

Implementing HTTPS in CONTENTdm 6 September 5, 2012

mod_auth_pubtkt a pragmatic Web Single Sign-On solution by Manuel Kasper, Monzoon Networks AG mkasper@monzoon.net

Intro to Load-Balancing Tomcat with httpd and mod_jk

Managing Virtual Servers

Network setup and troubleshooting

Virtual Host (Web Server)

SNPsyn documentation. Release 1.1b. Tomaž Curk Gregor Rot Davor Sluga Uroš Lotrič Blaž Zupan

Contents Set up Cassandra Cluster using Datastax Community Edition on Amazon EC2 Installing OpsCenter on Amazon AMI References Contact

The course will be run on a Linux platform, but it is suitable for all UNIX based deployments.

CentOS. Apache. 1 de 8. Pricing Features Customers Help & Community. Sign Up Login Help & Community. Articles & Tutorials. Questions. Chat.

To enable https for appliance

Rapid Access Cloud: Se1ng up a Proxy Host

Using VirtualBox ACHOTL1 Virtual Machines

HP Business Service Management

CDH installation & Application Test Report

xcp Application Deployment On Tomcat Cluster

Real Vision Software, Inc.

Lotus Sametime. FIPS Support for IBM Lotus Sametime 8.0. Version 8.0 SC

Nevepoint Access Manager 1.2 BETA Documentation

Instant Chime for IBM Sametime High Availability Server Guide

Example Apache Server Installation for Centricity Electronic Medical Record browser & mobile access

High Availability Configuration of ActiveVOS Central with Apache Load Balancer

Installing IBM Websphere Application Server 7 and 8 on OS4 Enterprise Linux

DEPLOYMENT GUIDE Version 1.0. Deploying the BIG-IP LTM with Apache Tomcat and Apache HTTP Server

DS License Server. Installation and Configuration Guide. 3DEXPERIENCE R2014x

How-to-Guide: Reverse Proxy and Load Balancing for SAP Mobile Platform 3.X

IBM Lotus Sametime Media Manager Cluster Deployment Walk-through Part I Overview and Planning IBM Corporation

The mod_proxy Cookbook

Setting up an Apache Web Server for Greenstone 2 Walkthrough

PassMark Software BurnInTest Management Console. Quick start guide

Configuring Apache HTTP Server With Pramati

Content. Global Delivery Network: Folders

Biznet GIO Cloud Connecting VM via Windows Remote Desktop

DEPLOYMENT GUIDE Version 1.1. Deploying F5 with Oracle Application Server 10g

Scalability of web applications. CSCI 470: Web Science Keith Vertanen

Load Balancing VMware Horizon View. Deployment Guide

Getting the software The Apache webserver can be downloaded free from the Apache website :

High Availability Cluster Solutions for Ubuntu14.04 on Power

STREAMEZZO RICH MEDIA SERVER

LOAD BALANCING TECHNIQUES FOR RELEASE 11i AND RELEASE 12 E-BUSINESS ENVIRONMENTS

Transcription:

Technical specification Load balancing configuration Koaly EXP Page : 1 / 8

Table of contents Introduction... 3 I.Overview... 3 II.The Apache load balancer... 3 III.Limitations... 3 Prerequisites... 4 Configuration... 5 I.Apache modules... 5 II.Apache configuration... 5 III.Portal configuration... 6 IV.Restart... 6 V.Test... 7 Page : 2 / 8

Introduction This document explains how to setup two or more EXP portals in a load balancing setup. I. Overview The sample configuration was tested using a default installation on Ubuntu Server 12.04.2 LTS and the load balancing module included in the default Apache 2 package provided with the OS. Other Linux flavours should work as well but the configuration file locations and format may vary from this documentation. Load balancing is set up for the V2 part of the software only: The legacy (PHP) portion is served by the main apache instance without load balancing. II. The Apache load balancer Documentation of the load balancer can be found here: http://httpd.apache.org/docs/current/mod/mod_proxy_balancer.html The load balancer supports three load balancing scheduler methods: weighted request counting (default method) weighted traffic byte count balancing pending request balancing Several methods for load balancer stickyness are supported. In our example, we use the JSESSIONID cookie to identify the user sessions and route each request to the corresponding node. III. Limitations The only known limitation is that the user's IP addresses will not be logged correctly in the connection log provided by the application. If IP logging is needed, it needs to be set up manually on the Apache server handling the load balancing. Page : 3 / 8

Prerequisites A default installation of the Koaly EXP portal on a Linux server running Ubuntu Server. Other Linux flavours should work as well but the configuration file locations and format may vary from this documentation. A second Koaly EXP portal installed either locally or on a different machine. For our tests, one portal was was installed locally and a seconds one on a second machine. Note that these requirements are for this sample configuration only: The portal does not need to be set up on the same machine as the load balancer any setup is possible with minor modifications to the configuration. Page : 4 / 8

Configuration Starting from default installation of Koaly EXP and a secondary portal installed on a different machine, the following configuration changes will enable load balancing between the two: I. Apache modules First of all, make sure the following Apache modules are enabled. You can use the following commands to do so on Ubuntu Linux: sudo ln -s /etc/apache2/mods-available/proxy_balancer.conf /etc/apache2/mods-enabled/ sudo ln -s /etc/apache2/mods-available/proxy_balancer.load /etc/apache2/mods-enabled/ II. Apache configuration The default virtual host configuration created in a standard EXP installation is as follows: <VirtualHost *:80> ServerName 127.0.0.1 <Proxy *> AddDefaultCharset Off Order deny,allow Allow from all </Proxy> ProxyRequests Off ProxyPass /legacy http://127.0.0.1:8080 ProxyPassReverse /legacy http://127.0.0.1:8080 ProxyPass / ajp://127.0.0.1:8009/ ProxyPassReverse / ajp://127.0.0.1:8009/ </VirtualHost> <VirtualHost 127.0.0.1:8080> ServerName 127.0.0.1 DocumentRoot "/home/koaly/exp/portal1/web" <Directory "/home/koaly/exp/portal1/web"> Options -Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny Allow from all </Directory> </VirtualHost> To enable load balancing, we need to make the following changes: <VirtualHost *:80> ServerName 127.0.0.1 <Proxy *> AddDefaultCharset Off Order deny,allow Allow from all Page : 5 / 8

</Proxy> <Proxy balancer://expcluster> BalancerMember ajp://127.0.0.1:8009/ route=portal0 BalancerMember ajp://{ip address of secondary server}:8009/ route=portal1 ProxySet stickysession=jsessionid </Proxy> ProxyRequests Off ProxyPass /legacy http://127.0.0.1:8080 ProxyPassReverse /legacy http://127.0.0.1:8080 ProxyPass / balancer://expcluster/ ProxyPassReverse / balancer://expcluster/ </VirtualHost> <VirtualHost 127.0.0.1:8080> ServerName 127.0.0.1 DocumentRoot "/home/koaly/exp/portal1/web" <Directory "/home/koaly/exp/portal1/web"> Options -Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny Allow from all </Directory> </VirtualHost> III. Portal configuration The following changes need to applied to the file /home/koaly/exp/portal/conf/server.xml for each portal that is a member of the cluster. The following lines: <!-- You should set jvmroute to support load-balancing via AJP ie : <Engine name="catalina" defaulthost="localhost" jvmroute="jvm1"> --> <Engine defaulthost="localhost" name="catalina"> need to be modified as follows on the first node: <!-- You should set jvmroute to support load-balancing via AJP ie : <Engine name="catalina" defaulthost="localhost" jvmroute="jvm1"> --> <Engine defaulthost="localhost" name="catalina" jvmroute="portal0"> On the second node, portal0 needs to be replaced by portal1, of course. IV. Restart To apply the configuration, the application needs to be restarted, starting with the main node (portal0): sudo service koaly-exp-portal stop sudo service koaly-exp-portal start sudo service apache2 restart Page : 6 / 8

Once the main portal is up, the secondary portal(s) need to be restarted as well. V. Test To test the setup, we need to increase the log level of the portals to TRACE temporarily (for the duration of the test only). To do so, we need to edit the logging configuration file: sudo vim /home/koaly/exp/portal/conf/log4j.xml To change the log level, we need to change the lines <!-- --> <!-- Logger configuration --> <!-- --> <logger name="com.koaly"> <level value="info"/> </logger> to <!-- --> <!-- Logger configuration --> <!-- --> <logger name="com.koaly"> <level value="trace"/> </logger> To activate this configuration change, the portal needs to be restarted: sudo service koaly-exp-portal stop sudo service koaly-exp-portal start Now, we can follow the logging output using the tail command: sudo tail -f /home/koaly/exp/portal/logs/koaly_exp.log After doing the same for the secondary portal(s), we need to connect to the portal. The following log should appear on one of the log files: TRACE com.koaly.core.service.impl.sessionserviceimpl - Session opened for user operator2 connecting from {IP address}. Now, connect to the portal from a different browser session. This is necessary as the load balancer will identify browser sessions by the session ID and redirect all requests belonging to the same session to the same node. Connecting from a different session should result in the same log on the secondary node. If the connection notification appears in the log file of all nodes, your load balancing setup is working. IMPORTANT After completing the tests, the log level needs to be reset to info and the portals need to be restarted. Page : 7 / 8

Document end Page : 8 / 8