ELIXIR LOAD BALANCER 2



Similar documents
High Availability with Elixir

S y s t e m A r c h i t e c t u r e

Load Balancing using Pramati Web Load Balancer

Oracle WebLogic Server 11g Administration

Configuring Nex-Gen Web Load Balancer

CHAPTER 1 - JAVA EE OVERVIEW FOR ADMINISTRATORS

MEASURING WORKLOAD PERFORMANCE IS THE INFRASTRUCTURE A PROBLEM?

High Availability and Clustering

FioranoMQ 9. High Availability Guide

VERITAS Cluster Server Traffic Director Option. Product Overview

WEBLOGIC ADMINISTRATION

Deploying Windows Streaming Media Servers NLB Cluster and metasan

MagDiSoft Web Solutions Office No. 102, Bramha Majestic, NIBM Road Kondhwa, Pune Tel: /

User Guide for VMware Adapter for SAP LVM VERSION 1.2

Basic TCP/IP networking knowledge of client/server concepts Basic Linux commands and desktop navigation (if don't know we will cover it )

Oracle WebLogic Foundation of Oracle Fusion Middleware. Lawrence Manickam Toyork Systems Inc

Elixir Repertoire Server Manual

Exploring Oracle E-Business Suite Load Balancing Options. Venkat Perumal IT Convergence

Load Balancing for Microsoft Office Communication Server 2007 Release 2

Configuring Microsoft IIS 5.0 With Pramati Server

This training is targeted at System Administrators and developers wanting to understand more about administering a WebLogic instance.

Immotec Systems, Inc. SQL Server 2005 Installation Document

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

PingFederate. Server Clustering Guide

Deploying Load balancing for Novell Border Manager Proxy using Session Failover feature of NBM and L4 Switch

DB2 Connect for NT and the Microsoft Windows NT Load Balancing Service

CS312 Solutions #6. March 13, 2015

BlackBerry Enterprise Service 10. Version: Configuration Guide

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

WebAccelerator Administration Guide

No.1 IT Online training institute from Hyderabad URL: sriramtechnologies.com

Creating Web Farms with Linux (Linux High Availability and Scalability)

Guide to the LBaaS plugin ver for Fuel

How To Monitor A Server With Zabbix

Web Application Hosting Cloud Architecture

VMware vsphere-6.0 Administration Training

PassTest. Bessere Qualität, bessere Dienstleistungen!

NetCrunch 6. AdRem. Network Monitoring Server. Document. Monitor. Manage

Microsoft Office Communications Server 2007 & Coyote Point Equalizer Deployment Guide DEPLOYMENT GUIDE

Lab 5 Explicit Proxy Performance, Load Balancing & Redundancy

HP Client Automation Standard Fast Track guide

Galileo SSL Installation Guide Galileo SSL Client v

MID-TIER DEPLOYMENT KB

OSGi Service Platform in Integrated Management Environments Telefonica I+D, DIT-UPM, Telvent. copyright 2004 by OSGi Alliance All rights reserved.

DNA. White Paper. DNA White paper Version: 1.08 Release Date: 1 st July, 2015 Expiry Date: 31 st December, Ian Silvester DNA Manager.

Veritas Cluster Server

Building a Scale-Out SQL Server 2008 Reporting Services Farm

Rally Installation Guide

SysPatrol - Server Security Monitor

vrealize Automation Load Balancing

המרכז ללימודי חוץ המכללה האקדמית ספיר. ד.נ חוף אשקלון טל' פקס בשיתוף עם מכללת הנגב ע"ש ספיר

Server Installation Procedure - Load Balanced Environment

Using RADIUS Agent for Transparent User Identification

Astaro Deployment Guide High Availability Options Clustering and Hot Standby

Kaseya 2. User Guide. for Network Monitor 4.1

Application Discovery Manager User s Guide vcenter Application Discovery Manager 6.2.1

Aqua Connect Load Balancer User Manual (Mac)

Smart Cloud Integration Pack. For System Center Operation Manager. v User's Guide

Administrator Guide VMware vcenter Server Heartbeat 6.3 Update 1

Automation Engine 14. Troubleshooting

SyAM Software Management Utilities. Creating Templates

VMware Certified Professional 5 Data Center Virtualization (VCP5-DCV) Exam

Check Point FireWall-1 HTTP Security Server performance tuning

PVFS High Availability Clustering using Heartbeat 2.0

Oracle Call Center Applications Setup

VMware vcenter Log Insight Getting Started Guide

Funkwerk UTM Release Notes (english)

Configuring Apache HTTP Server With Pramati

Configuring Load Balancing

IMF Tune Quarantine & Reporting Running SQL behind a Firewall. WinDeveloper Software Ltd.

How to Configure a High Availability Cluster in Azure via Web Portal and ASM

Gigabyte Management Console User s Guide (For ASPEED AST 2400 Chipset)

Implementing the Application Control Engine Service Module

VMware vsphere 4.1 with ESXi and vcenter

MCSE Core exams (Networking) One Client OS Exam. Core Exams (6 Exams Required)

Configuring MassTransit Server to listen on ports less than 1024 using WaterRoof on Macintosh Workstations

This presentation covers virtual application shared services supplied with IBM Workload Deployer version 3.1.

6WRUP:DWFK. Policies for Dedicated SQL Servers Group

1 Basic Configuration of Cisco 2600 Router. Basic Configuration Cisco 2600 Router

How To Run Apa Hadoop 1.0 On Vsphere Tmt On A Hyperconverged Network On A Virtualized Cluster On A Vspplace Tmter (Vmware) Vspheon Tm (

ActiveVOS Clustering with JBoss

Managing and Maintaining a Windows Server 2003 Network Environment

Network Licensing. White Paper 0-15Apr014ks(WP02_Network) Network Licensing with the CRYPTO-BOX. White Paper

Securing Networks with PIX and ASA

WhatsUp Gold v16.3 Installation and Configuration Guide

Alfresco Enterprise on Azure: Reference Architecture. September 2014

Avaya one-x Agent. Port Settings. Issue: 1.0 May 2011

Metalogix SharePoint Backup. Advanced Installation Guide. Publication Date: August 24, 2015

Oracle WebLogic Server 11g: Administration Essentials

Apache and Tomcat Clustering Configuration Table of Contents

DeployStudio Server Quick Install

Altor Virtual Network Security Analyzer v1.0 Installation Guide

Enterprise Manager. Version 6.2. Installation Guide

ZEN LOAD BALANCER EE v3.04 DATASHEET The Load Balancing made easy

Configuring Windows Server Clusters

VMware vsphere 5.0 Boot Camp

BlackBerry Enterprise Server for Microsoft Exchange. Version: 5.0 Service Pack: 4. Upgrade Guide

2X ApplicationServer & LoadBalancer Manual

Exam : Oracle 1Z : Oracle WebLogic Server 10gSystem Administration. Version : DEMO

Transcription:

ELIXIR LOAD BALANCER 2 Overview Elixir Load Balancer for Elixir Repertoire Server 7.2.2 or greater provides software solution for load balancing of Elixir Repertoire Servers. As a pure Java based software application, it is platform independent and can run on any J2SE enabled OS platforms that has Java version 1.5.0 or greater. Elixir Load Balancer supports a wide range of platforms and operating systems and is able to run on commodity hardware. Therefore, its performance can easily and cost-effectively grow as required. Elixir Load Balancer can complement other hardware-only load balancing solutions in very high traffic environments. Hardware Load Balancers are deployed at the edge of hosting provider s network, making simple packet switching decisions at very high speed. Load Balancer is used to handle Repertoire Server specific requests. It is also able to handle almost any TCP/IP-based protocol. 1

Availability There are two ways to configure the Load Balance to improve availability, which are Static Server Configuration or Dynamic Server Configuration. (A) Static Server Configuration Load Balancer provides seamless Repertoire Server fail over. A primary and secondary server cluster needs to be setup. The primary cluster is a group of Repertoire Servers that will service report requests while the secondary cluster consists of Repertoire Servers are in hot standby. In the event of a Repertoire Server failure, the requests will be piped automatically to a Repertoire Server in the secondary cluster. The affected Repertoire Server(s) in the primary cluster will be removed from the server pool. User can reactivate the Repertoire Server(s) once the issue is resolved via the web console. The detection of failure Repertoire Server is only done when connection request is triggered to reduce unnecessary network traffic which is usually caused by active monitoring. 2

In addition, we provide a service wrapper that can be installed as part of Windows Services to monitor Java Virtual Machine. The service is able to automate the restarting of the Load Balancer in the event of a JVM fault (crash) or restart of hardware. Auto detection of recovery of failed Repertoire Server is provided. On detection of the server recovery, it will be included as part of the server pool through active monitoring of the IP and port. To increase fault tolerance, user should use a hardware/os clustering solution to handle hardware failure. (B) Dynamic Server Configuration Load balancer can be configured to support dynamic server discovery. A multi cast IP address and port is setup for the Load Balancer and the Repertoire Servers. At intervals, the Load Balancer will broadcast a message and listen for responses from available the Repertoire Servers. New servers will be added to the Load Balancer s list of available servers. If any of the servers in list failed to response to the Load Balancer broadcast, it will be removed from that list. Before the Repertoire Server is added or be removed from list, the Load Balancer will probe to reconfirm the availability of the server on the actual Repertoire Server port. In order for the Dynamic server configuration to work, firstly configure the Repertoire Server to support dynamic server discovery, the MBean, ERS2:name=PingListener needs to be enabled in the ERS2.xml file of Repertoire Server configuration directory. <ers:mbean name="ers2:name=pinglistener" class="com.elixirtech.ers2.ping.ping"> <ers:property name="port">7001</ers:property> <ers:property name="address">224.5.12.24</ers:property > <ers:property name="timeout">30000</ers:property > As for the Load Balancer configuration, MBean, ERS2:name=DynamicInstanceConfigurator needs to be enabled in ERS2-LoadBalancer.xml configuration file of the Load Balancer configuration directory. 3

<ers:mbean name="ers2:name=dynamicinstanceconfigurator" class="com.elixirtech.ers2.lb.dynamicinstanceconfigurator"> <ers:property name="port">7001</ers:property> <ers:property name="address">224.5.12.24</ers:property> <ers:property name="timeout">5000</ers:property> <ers:property name="broadcastinterval">30000</ers:property> The IP address is the standard multicast group is specified by a class D IP address and by a standard UDP port number. Class D IP addresses are in the range 224.0.0.0 to 239.255.255.255, inclusive. The address 224.0.0.0 is reserved and should not be used. Server Affinity Load Balancer allows the client to connect to the same Repertoire Server after the http session is authenticated. This association of session with backend server is call sticky session. The Repertoire Server origin is encoded in the session cookie for Load Balancer to locate the appropriate Repertoire Server to send the request. In the Load Balancer configuration file, ERS2-LoadBalancer.xml, set the parameter UseServerAffinity to true. <ers:mbean name="ers2:name=loadbalancer" class="com.elixirtech.ers2.lb.loadbalancer"> <ers:property name="useserveraffinity">true</ers:property> Repeat the same for the Repertoire Server configuration file, ERS2.xml, at the Jetty MBean configuration set as enable. <ers:mbean name="ers2:name=jetty" class="com.elixirtech.jetty.jettylauncher">. <ers:property name="serveraffinityenabled">true</ers:property> 4

The session cookie name can also be modified. This allow you configure a different cookie name i.e. JSESSION to a different one. The properties set in the <ers:mbean name="ers2:name=loadbalancer" class="com.elixirtech.ers2.lb.loadbalancer"> <ers:property name="serveraffinitycookiename">jsessionid</ers:property> 5

Administration The Load Balancer provides a Web administration screen to allow a user to view the configuration and the current state of the Load Balancer. It is based on JMX J2EE platform. Load Balancer Web administration: http://localhost:8090 Configuration is fairly straightforward. All configurations are done via an xml file where you can specify the Load Balancer s port and configure the servers as primary and secondary server pool. Load Balancing Algorithm Load Balancer provides Lowest Workload and Round Robin balancing algorithms. For Round Robin balancing algorithm, new requests are being distributed between the Repertoire Servers evenly. As for the Lowest Workload balancing algorithm, new requests are being assigned to the Repertoire Server instance with the lowest workload. This maximizes the Repertoire Server resources to handle load. 6

Configuration of Load Balancer System Requirement Java VM J2SE version 1.5.0 or greater Recommended minimum physical memory of 128MB Shipped with Windows service wrapper. For non-windows daemon, please see http://wrapper.tanukisoftware.org/doc/english/index.html for details Configuration All the configuration information is located in the Load Balancer\config\ERS2- LoadBalancer.xml. There are three sets of configurable items provided. (i) Load Balancer This allows users to configure the port and the number of servers to be allocated in the primary server pool. Port This determines the port that requests are submitted to from the client. ActivationCount This determines the number of servers that are setup to be in the primary pool. Setup example: When the Load Balancer is setup to listen to incoming client report request connection for port 7000 and three report servers setup to process report from the primary pool while the rest will be in the secondary server pool in hot standby mode. 7

<ers:mbean name= ERS2:.name=LoadBalancer class= com.elixirtech.ers2.lb.loadbalancer > <ers:property name= Port >7000</ers:property> <ers:property name= ActivationCount >3</ers:property> Configuring Limit When the number of clients on each instance hits the limit set in ClientCountLimit, a warning message will be shown in the log file. When the number of clients on each instance hits the limit specified in ClientCountMaximumLimit, that particular instance will be removed from the primary server pool and will not accept any new requests. During this period of time, any connection time that is greater than the value specified in ClientCountMaximumAgeLimit will be cleared from the instance. The instance will wait for the time specified in InstanceWaitTime before it will reset and go back to the primary server pool to accept new requests. SocketTimeout SocketLingerTimeout SocketAlive RecoveryWaitTime ClientCountLimit ClientCountMaximumLimit InstanceWaitTime ClientCountMaximumAgeLimit Enable/disable SocketTimeout with the specified timeout, in milliseconds. The timeout must be > 0. A timeout of zero is interpreted as an infinite timeout. Controls how long it waits to close when there are still unsent data. Whether or not to have socket keep alive turned on. It is either set to true or false. The amount of waiting time in milliseconds before the recovery of an instance. If set to zero, there will be no recovery of dead instances. The count limit for the number of clients on each instance. When the limit is reached, there will be a warning in the log. If set to zero, there will be no limit to the number of clients. The maximum number of clients on each instance. When the limit is reached, the instance will be removed from the primary server pool. The time in milliseconds the instance will wait before it will reset. Any connection greater than the client age limit will be cleared 8

from the instance. Server Affinity ServerAffinityEnabled ServerAffinityCookieName Enable the Load balancer to direct the request to its origin. This is the session cookie name use by the Repertoire to keep session based information. Load Balancer uses this to locate which server instance the connection originates from. (ii) Repertoire Server Instance (A) Static Server Configuration This specifies the Reportoire Server TCP/IP address or host name and its port that a report request can be directed to. Host Port Repertoire Server host name or TCP/IP address. Repertoire Server listener port. ERS2Instance:name Internal name that the Load Balancer refers to. Determined by the user. <ers:mbean name= ERS2Instance:name=First class= com.elixirtech.ers2.lb.ers2instance > <ers:property name= Host >192.168.1.1</ers:property> <ers:property name= Port >6998</ers:property> (B) Dynamic Server Configuration This allows the auto discovery Repertoire Server instance in the network. Address Port Broadcast address (Multicast IP) Broadcast port. BroadcastInterval Length time (ms) before it broadcast for response from servers 9

Timeout Length time (ms) to wait for incoming Repertoire Servers responses. 10

(iii) Web Console Configuration This specifies the port that the user can connect to the web management console of the Elixir Load Balancer. Load Balancer Web console can be disabled by commenting it out. Port Port that the user can connect to via the web browser. <ers:mbean name= ERS2:name=html class= com.sun.jdmk.comm.htmladaptorserver > <ers:property name= Port >8089</ers:property> (iv) Monitoring of Failed Servers (optional) In the event that a failed server is detected, it will be taken out of the pool and place in a monitoring queue. At regular intervals (user configurable), the Load Balancer will check. If the server responses, it will be restored to the queue. This monitoring behavior can be removed by commenting it out of the configuration script. Wait Time to wait till the next monitoring for server activity. (in milliseconds) <ers:mbean name= ERS2:name=MonitorDeadServers class= com.elixirtech.ers2.lb.monitordeadserverinstance > <ers:property name= Wait >3600000</ers:property> 11

Configuration As Service Elixir Load Balancer can run as a Window service or Unix daemon via Java Service wrapper. Shipped in our package is the Windows version of the service wrapper. For those who want the Load Balancer in a non-windows environment, please download the respective OS configurable at: http://wrapper.tanukisoftware.org/doc/english/index.html When the Load Balancer is run as a Windows service or Unix daemon, the startup and shutdown process is controlled by the service wrapper. 12