.NET UI Load Balancing & Clustering



Similar documents
.NET UI Load Balancing & Failover

FILECLOUD HIGH AVAILABILITY

White Paper. ThinRDP Load Balancing

Architecting ColdFusion For Scalability And High Availability. Ryan Stewart Platform Evangelist

Scaling Progress OpenEdge Appservers. Syed Irfan Pasha Principal QA Engineer Progress Software

High Availability and Clustering

Deploying Remote Desktop Connection Broker with High Availability Step-by-Step Guide

Siemens PLM Connection. Mark Ludwig

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

Purpose-Built Load Balancing The Advantages of Coyote Point Equalizer over Software-based Solutions

INUVIKA TECHNICAL GUIDE

Aqua Connect Load Balancer User Manual (Mac)

Pacific Application Server for OpenEdge: Getting Started. Progress OpenEdge 11.5 Workshop

Load Balancing Web Applications

Intro to Load-Balancing Tomcat with httpd and mod_jk

By the Citrix Publications Department. Citrix Systems, Inc.

Intellicus Enterprise Reporting and BI Platform

Web Application Hosting Cloud Architecture

Learn Oracle WebLogic Server 12c Administration For Middleware Administrators

Configure AlwaysOn Failover Cluster Instances (SQL Server) using InfoSphere Data Replication Change Data Capture (CDC) on Windows Server 2012

Lab 5 Explicit Proxy Performance, Load Balancing & Redundancy

DEPLOYMENT GUIDE CONFIGURING THE BIG-IP LTM SYSTEM WITH FIREPASS CONTROLLERS FOR LOAD BALANCING AND SSL OFFLOAD

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

Load Balancing using Pramati Web Load Balancer

Clustering ExtremeZ-IP 4.1

LICENSE4J AUTO LICENSE GENERATION AND ACTIVATION SERVER USER GUIDE

Enterprise Deployment of the EMC Documentum WDK Application

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

Deployment Topologies

Snapt Redundancy Manual

Blackboard Learn TM, Release 9 Technology Architecture. John Fontaine

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

EXPRESSCLUSTER X for Windows Quick Start Guide for Microsoft SQL Server Version 1

Clustering a Grails Application for Scalability and Availability

Load Balancing IBM WebSphere Servers with F5 Networks BIG-IP System

Configuring the BIG-IP system for FirePass controllers

Chapter 10: Scalability

Apache Tomcat. Load-balancing and Clustering. Mark Thomas, 20 November Pivotal Software, Inc. All rights reserved.

VMware Identity Manager Connector Installation and Configuration

CA Nimsoft Unified Management Portal

High Availability with Elixir

Deployment Guide Oracle Siebel CRM

<Insert Picture Here> WebLogic High Availability Infrastructure WebLogic Server 11gR1 Labs

Configuring Windows Server Clusters

JBoss Seam Performance and Scalability on Dell PowerEdge 1855 Blade Servers

CS312 Solutions #6. March 13, 2015

Building a Highly Available and Scalable Web Farm

INCREASE SYSTEM AVAILABILITY BY LEVERAGING APACHE TOMCAT CLUSTERING

Sametime 9 Meetings deployment Open Mic July 23rd 2014

HUAWEI OceanStor Load Balancing Technical White Paper. Issue 01. Date HUAWEI TECHNOLOGIES CO., LTD.

NetIQ Access Manager 4.1

Lustre SMB Gateway. Integrating Lustre with Windows

McAfee Agent Handler

Deploying the BIG-IP LTM with the Cacti Open Source Network Monitoring System

ColdFusion 8. Performance Tuning, Multi-Instance Management and Clustering. Sven Ramuschkat MAX 2008 Milan

Load Balancing. Outlook Web Access. Web Mail Using Equalizer

Configuring HAproxy as a SwiftStack Load Balancer

Cloud Based Application Architectures using Smart Computing

Technical Note. vsphere Deployment Worksheet on page 2. Express Configuration on page 3. Single VLAN Configuration on page 5

Active-Active and High Availability

Tushar Joshi Turtle Networks Ltd

WEBAPP PATTERN FOR APACHE TOMCAT - USER GUIDE

JBOSS OPERATIONS NETWORK (JBOSS ON) MONITORING

Load Balancing BEA WebLogic Servers with F5 Networks BIG-IP

LISTSERV in a High-Availability Environment DRAFT Revised

Load Balancing IBM Lotus Instant Messaging and Web Conferencing Servers with F5 Networks BIG-IP System

HDFS Federation. Sanjay Radia Founder and Hortonworks. Page 1

Infor Web UI High Availability Deployment

Deploying the BIG-IP System with Oracle E-Business Suite 11i

Syncplicity On-Premise Storage Connector

Availability Digest. Redundant Load Balancing for High Availability July 2013

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

I N S T A L L A T I O N M A N U A L

High Availability Essentials

Load Balancing for Microsoft Office Communication Server 2007 Release 2

Scalable Linux Clusters with LVS

IBM WEBSPHERE LOAD BALANCING SUPPORT FOR EMC DOCUMENTUM WDK/WEBTOP IN A CLUSTERED ENVIRONMENT

Deployment Guide July-2014 rev. a. Deploying Array Networks APV Series Application Delivery Controllers with Oracle WebLogic 12c

DEPLOYMENT GUIDE Version 1.2. Deploying F5 with Oracle E-Business Suite 12

CS 188/219. Scalable Internet Services Andrew Mutz October 8, 2015

2X ApplicationServer & LoadBalancer Manual

Apache Tomcat Clustering

Configuring Nex-Gen Web Load Balancer

mod_cluster A new httpd-based load balancer Brian Stansberry JBoss, a division of Red Hat

Cisco Active Network Abstraction Gateway High Availability Solution

Load Balancing & High Availability

Configuring Apache HTTP Server With Pramati

Resonate Central Dispatch

Oracle BI Publisher Enterprise Cluster Deployment. An Oracle White Paper August 2007

2 Downloading Access Manager 3.1 SP4 IR1

Multiple Public IPs (virtual service IPs) are supported either to cover multiple network segments or to increase network performance.

DEPLOYMENT GUIDE Version 1.1. Deploying F5 with IBM WebSphere 7

FioranoMQ 9. High Availability Guide

Uptime Infrastructure Monitor. Installation Guide

Deployment Guide AX Series with Citrix XenApp 6.5

Blue Coat Systems. Client Manager Redundancy for ProxyClient Deployments

Fixed Price Website Load Testing

High Performance Cluster Support for NLB on Window

Apache Performance Tuning

STREAMEZZO RICH MEDIA SERVER

Transcription:

QAD Load Balancing & Clustering Nectarios Daloglou President & Principal Consultant Dalo Consulting Inc. 1 2014 Dalo Consulting Inc. Agenda Introduction Manual Load Balancing DNS Round Robin Other Solutions Case Study: Load Balancing with 1000+ Users Questions 2 2014 Dalo Consulting Inc. Dalo Consulting Inc. One of the first to implement Load Balancing with Performed specialized services at more than 50 QAD customer sites: Progress Database Administration Install/Upgrades/Migrations of Progress & QAD Applications (, Qxtend, etc ) Technical Audits / Performance Tuning Business Continuity Strategies Key Member in a large ongoing QAD Implementation 3 2014 Dalo Consulting Inc. Before We Start Your Mileage May Vary Information in this presentation may not necessarily apply to your environment Focused primarily on, not a full load balancing / clustering solution for the rest of the QAD system 4 2014 Dalo Consulting Inc. What is Load Balancing? Load balancing is a computer networking method for distributing workloads across multiple computing resources. Load balancing aims to optimize resource use, maximize throughput, minimize response time, and avoid overload of any one of the resources. Reference: http://en.wikipedia.org/wiki/load_balancing_(computing); Image: http://beyondearthseries.com/2012/05/09/seesaw-of-life/ 5 2014 Dalo Consulting Inc. Why Load Balance? Scalability: Performance and stability issues with 250+ connections in past versions (400-600 in later/current versions) per Tomcat instance Calculate your connections: Number of UI Configurations X Number of users X Maximum connections (tabs) in User Option Telnet Maintenance Example: (DEV 10 users X 5 Max) + (QA 20 X 5 Max) + (PROD 100 X 5 Max) = 650 Connections Reference: QAD Deployment Considerations Sep. 2007 6 2014 Dalo Consulting Inc. 1

Max Connections Why Load Balance? High Availability: Downtime Avoidance Protect against localized failure such as a server crash or hardware failure Ability to maintain a server or node without rendering the UI unavailable Seamlessly failover to working nodes/servers Reference: QAD Deployment Considerations Sep. 2007 7 2014 Dalo Consulting Inc. 8 2014 Dalo Consulting Inc. Agenda Introduction Manual Load Balancing DNS Round Robin Other Solutions Case Study: Load Balancing with 1000+ Users Questions Reference: QAD Installation Guide 9 2014 Dalo Consulting Inc. 10 2014 Dalo Consulting Inc. Tomcat Monitoring Tomcat Status: http://<server>:<tomcat Port> Example: http://serv456.com:8086 Tomcat Monitoring cont'd Tomcat Status: Other Methods: Check if process is running: PID=`cat $TOMCAT/logs/tomcat.pid` PID_STATUS=`ps -ef grep $PID grep c $TOMCAT[\/] Use port monitor: (OE Management, Monitoring Framework or other tool) 11 2014 Dalo Consulting Inc. 12 2014 Dalo Consulting Inc. 2

Connection Manager Monitoring http://<tomcat Host>:<Port>/<UI Name> Example: http://serv456.com:8086/prod_294 13 2014 Dalo Consulting Inc. Connection Manager Pool Monitoring Connection Manager Heartbeat URLs: idle.jsp: Returns number of idle sessions status.jsp: Returns total/busy/initializing/idle status: All: 3 Busy: 1 Init: 0 Idle: 2 busy.jsp: Returns number of busy sessions 14 2014 Dalo Consulting Inc. Connection Manager Pool Monitoring cont'd Connection Manager Heartbeat URLs: init.jsp: Returns number of sessions initializing list.jsp: Returns detailed info on busy sessions: Connection Manager Pool Monitoring cont'd Connection Manager Heartbeat URLs: Can be accessed via web browser: http://<tomcat Host>:<Port>/<UI-name>/heartbeat/idle.jsp Can also be accessed by using a command line browser such as lynx : http://lynx.isc.org/ With lynx, we can incorporate web commands into scripts for monitoring, starting and stopping the connection pool Can be used by load balancing device 15 2014 Dalo Consulting Inc. 16 2014 Dalo Consulting Inc. Agenda Introduction Manual Load Balancing DNS Round Robin Other Solutions Case Study: Load Balancing with 1000+ Users Questions 17 2014 Dalo Consulting Inc. Load Balancing Requirements Load balancing method must enforce session persistence Static data located within the Tomcat webapps, such as process maps, must be replicated throughout all Tomcat instances User data, such as favorites must be available from any of the Tomcat instances Located in <Tomcat Install>/webapps/qadhome/configurations/<UI Config>/storage Can be replicated using scripting Can exist in a common location and accessed using NFS mounts (mapped drives) or soft links 18 2014 Dalo Consulting Inc. 3

Load Balancing Requirements Tomcat <Tomcat Install>/conf/context.xml must be modified in order for soft-links to work: <Context path="/qadhome" allowlinking="true"> <!-- Default set of monitored resources --> <WatchedResource>WEB-INF/web.xml</WatchedResource> Ensuring Persistence Session UI Launch Tomcat Database Server Progress AppServer Progress Webspeed <!-- Uncomment this to disable session persistence across Tomcat restarts --> <!-- <Manager pathname="" /> --> <!-- Uncomment this to enable Comet connection tacking (provides events on session expiration as well as webapp lifecycle) --> <!-- <Valve classname="org.apache.catalina.valves.cometconnectionmanagervalve" /> --> </Context> System Selection List Maintenance Screen client.session.xml PROD_294 Embedded Telnet Sessions QAD DB 19 2014 Dalo Consulting Inc. 20 2014 Dalo Consulting Inc. Manual Load Balancing Specifically assigned groups of users to Separate instances Example: Users 1-50 assigned to Tomcat1 Users 51-100 assigned to Tomcat2 Easy to implement Must keep track of user assignment No support for high availability, unless the client front end is hosted (Citrix / Terminal Server) and also load balanced. 21 2014 Dalo Consulting Inc. Manual Load Balancing User 1 User 2 User 3 22 2014 Dalo Consulting Inc. User 51 User 52 User 53 Manual Load Balancing with Citrix 2 23 2014 Dalo Consulting Inc. 1 53 Citrix Farm 14 51 75 Round-Robin Robin DNS Works by translating a common web address into multiple IP addresses Example: Users are configured to connect to http://loadbalancer.corp, but can be redirected to any of fthe following servers: 192.168.10.1 192.168.10.2 192.168.10.3 Easy to implement No need to keep track of user assignment No support for high availability 24 2014 Dalo Consulting Inc. 4

DNS Load Balancing 192.168.10.1 192.168.10.2 DNS Server loadbalancer.corp 25 2014 Dalo Consulting Inc. Load balancing device features: Can determine if a Tomcat instance is unavailable and will stop redirecting to unavailable instance until it becomes available Can track least busiest server via heartbeat URLs Other metrics can be used such as CPU, response time, etc Can be costly and complex to set up 26 2014 Dalo Consulting Inc. cont'd 27 2014 Dalo Consulting Inc. 28 2014 Dalo Consulting Inc. Load Balancing As user base increases, so does the need for more nodes: TOMCAT 8086 UIREG01 UIREG02 UIREG03.NET Client Launch Load Balancer UI List UI List UI List TOMCAT 8087 UIREG01 UIREG02 UIREG03 TOMCAT 8088 UIREG01 UIREG02 UIREG03 29 2014 Dalo Consulting Inc. Benefits Maximizes uptime by providing automatic failover Improved user performance as load is distributed Improved user experience as the load balancer device will skip failed or busy instances Ensures persistent connections 30 2014 Dalo Consulting Inc. 5

Configuration Guidelines for Load Balancing Configuration Guidelines for Load Balancing Use actual server names when configuring additional builds Files/Directories that contain hostname and Port information: DELETE: /<TOMCAT>/webapps/<UI NAME>/screen.xml DELETE: /<TOMCAT>/webapps/<UI NAME>/headerhtml.out DELETE: /<TOMCAT>/webapps/<UI NAME>/cache/* CHANGE SERVER NAME: /<TOMCAT>/webapps/<UI NAME>/WEB- INF/conf/ connectionmanagerconfig.xml CHANGE SERVER NAME: /<TOMCAT>/webapps/<UI NAME>/WEB- INF/conf/process-config.xml CHANGE SERVER NAME: /<TOMCAT>/webapps/qadhome/configurations/<UI NAME>/client-session.xml Configuration Guidelines for this Load Balancing (con t): Make sure that each client config file in the qadhome directory points to its respective instance Use the load balancer URL to install or re-install clients Example: Instead of http://mydot net:8080/qadhome Use http://loadbalancer:8080/qadhome 31 2014 Dalo Consulting Inc. 32 2014 Dalo Consulting Inc. Scripted Load Balancing Scripted Load Balancing Scripts can be set up to monitor the least busiest instances and automatically modify the client-session.xml files accordingly Uses only one qadhome server Aside from the qadhome, can provide failover capabilities among Tomcat instances and servers Can be combined with other load balancing schemes No known sites using this in production Session UI Launch System Selection List Maintenance Screen Tomcat client.session.xml PROD_294 Scripts polling Copying pre-configured client-session.xml.a or client.-ession.xml.b Scripts polling Copying pre-configured client-session.xml.a or client.-ession.xml.b PROD_294 33 2014 Dalo Consulting Inc. 34 2014 Dalo Consulting Inc. Apache/Tomcat Load Balancing Apache/Tomcat Load Balancing Apache or Tomcat can be used to enable load balancing between multiple Tomcat instances Useful for distributing load and provides failover capability among Tomcat instances Introduces a single point of failure via the single load balancing address / webapp. Have not tested this Details here: http://tomcat.apache.org/connectorsdoc/generic_howto/loadbalancers.html 192.168.10.1 192.168.10.2 Apache Tomcat Connector loadbalancer.corp 35 2014 Dalo Consulting Inc. 36 2014 Dalo Consulting Inc. 6

Agenda Case Study: Large Auto Parts Manufacturer Introduction Manual Load Balancing DNS Round Robin Other Solutions Case Study: Load Balancing with 1000+ Users Questions Large QAD UI User base: 1000+ Users worldwide Limited number of connections per Tomcat was 250 at the time of implementation High availability and redundancy d required Solution: Hardware load balancing 37 2014 Dalo Consulting Inc. 38 2014 Dalo Consulting Inc. Case Study: Large Auto Parts Manufacturer Hardware: Redundant Cisco CSS 11500 Series LB calls URI which is a perl script that calculates total sessions busy per Tomcat instance Clients: Citrix i & Windows 7 User data shared using softlinks and an NFS mount Citrix Farm netui:8080 Tomcat 8080 Server 1 Tomcat 8081 Tomcat 8082 AP_291 AP_291 AP_291 Tomcat 8080 AP_291 Server 2 Tomcat 8081 User data AP_291 Tomcat 8082 AP_291 39 2014 Dalo Consulting Inc. 40 2014 Dalo Consulting Inc. Questions Questions or comments? Feel free to e- mail me: Questions? Nectar Daloglou: nd@daloconsulting.com For a copy of this presentation and for other useful stuff, visit our website: www.daloconsulting.com 41 2014 Dalo Consulting Inc. 42 2014 Dalo Consulting Inc. 7

Thank You! 43 2014 Dalo Consulting Inc. 8