Configuring Apache HTTP Server With Pramati



Similar documents
Configuring Microsoft IIS 5.0 With Pramati Server

Configuring Nex-Gen Web Load Balancer

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

Load Balancing using Pramati Web Load Balancer

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

Configuring Apache HTTP Server as a Reverse Proxy Server for SAS 9.2 Web Applications Deployed on BEA WebLogic Server 9.2

Enhanced Connector Applications SupportPac VP01 for IBM WebSphere Business Events 3.0.0

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

Configuring Apache HTTP Server as a Reverse Proxy Server for SAS 9.3 Web Applications Deployed on Oracle WebLogic Server

DEPLOYING EMC DOCUMENTUM BUSINESS ACTIVITY MONITOR SERVER ON IBM WEBSPHERE APPLICATION SERVER CLUSTER

Using RADIUS Agent for Transparent User Identification

SIEMENS. Teamcenter Web Application Deployment PLM

Oracle EXAM - 1Z Oracle Weblogic Server 11g: System Administration I. Buy Full Product.

Configuring IBM HTTP Server as a Reverse Proxy Server for SAS 9.3 Web Applications Deployed on IBM WebSphere Application Server

IBM WebSphere Application Server V8.5 lab Basic Liberty profile administration using the job manager

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

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

Chapter 1 - Web Server Management and Cluster Topology

How to Make the Client IP Address Available to the Back-end Server

XCP APP FAILOVER CONFIGURATION FOR WEBLOGIC CLUSTER AND APACHE WEBSERVER

SSL CONFIGURATION GUIDE

Working With Virtual Hosts on Pramati Server

Oracle Exam 1z0-102 Oracle Weblogic Server 11g: System Administration I Version: 9.0 [ Total Questions: 111 ]

ITG Software Engineering

EQUELLA. Clustering Configuration Guide. Version 6.2

McAfee One Time Password

ELIXIR LOAD BALANCER 2

Oracle Application Server 10g Oracle HTTP Server Frequently Asked Questions October 2006

Web Server Configuration Guide

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

Relay Server Installation (X88)

FioranoMQ 9. High Availability Guide

Enterprise SSL Support

WEBLOGIC ADMINISTRATION

IUCLID 5 Guidance and Support

Oracle Communications WebRTC Session Controller: Basic Admin. Student Guide

Configuring Single Sign-On for Documentum Applications with RSA Access Manager Product Suite. Abstract

Using Logon Agent for Transparent User Identification

CA Workload Automation Agent for Databases

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

EMC Documentum Connector for Microsoft SharePoint

McAfee epolicy Orchestrator Software

Red Hat JBoss Core Services Apache HTTP Server 2.4 Apache HTTP Server Installation Guide

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

Administrator s Guide

Novell Access Manager

Relay Server. Copyright 2010, ianywhere Solutions, Inc. - SQL Anywhere

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

TIBCO Runtime Agent Domain Utility User s Guide Software Release November 2012

Sametime 9 Meetings deployment Open Mic July 23rd 2014

1 of 24 7/26/2011 2:48 PM

APACHE WEB SERVER. Andri Mirzal, PhD N

Configuring Load Balancing

How to Integrate IIS with JBoss / Tomcat Under Windows XP and Linux

Configuring the BIG-IP and Check Point VPN-1 /FireWall-1

SIMIAN systems. Setting up a Sitellite development environment on Windows. Sitellite Content Management System

CA Nimsoft Monitor. Probe Guide for Apache HTTP Server Monitoring. apache v1.5 series

CYAN Secure Web Microsoft ISA Server Deployment Guide

Guide to the LBaaS plugin ver for Fuel

What will be supplied with chemoventory package?

HOW TO CONFIGURE PASS-THRU PROXY FOR ORACLE APPLICATIONS

Installing a Symantec Backup Exec Agent on a SnapScale Cluster X2 Node or SnapServer DX1 or DX2. Summary

MID-TIER DEPLOYMENT KB

Configuring ADOBE LIVECYCLE ES4 Application Server Cluster using WEBSPHERE

Installing and Configuring DB2 10, WebSphere Application Server v8 & Maximo Asset Management

WebSphere Application Server V6: Diagnostic Data. It includes information about the following: JVM logs (SystemOut and SystemErr)

Step by step guide for installing highly available System Centre 2012 Virtual Machine Manager Management server:

Setup Guide Access Manager 3.2 SP3

Monitoring System Status

MIGS Payment Client Installation Guide. EGate User Manual

EQUELLA. Clustering Configuration Guide. Version 6.0

vcenter Hyperic Configuration Guide

Infor Web UI High Availability Deployment

Administering Jive for Outlook

Load Balancing. Outlook Web Access. Web Mail Using Equalizer

STREAMEZZO RICH MEDIA SERVER

Oracle9i Application Server: Options for Running Active Server Pages. An Oracle White Paper July 2001

Jive Connects for Microsoft SharePoint: Troubleshooting Tips

Siteminder Integration Guide

Table of Contents. V. UPGRADING LSTC License Manager Software for Microsoft Windows A. Run the Installation Program B. Verify the Installation

Tutorial: Load Testing with CLIF

Funambol Exchange Connector v6.5 Installation Guide

Using Actian PSQL as a Data Store with VMware vfabric SQLFire. Actian PSQL White Paper May 2013

SOA Software: Troubleshooting Guide for WebSphere Application Server Agent

Deploying Intellicus Portal on IBM WebSphere

WebSphere Business Monitor V7.0: Clustering Single cluster deployment environment pattern

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

Administrator s Guide

ServletExec TM 6.0 Installation Guide. for Microsoft Internet Information Server SunONE Web Server Sun Java System Web Server and Apache HTTP Server

Deploying Windows Streaming Media Servers NLB Cluster and metasan

Secure Messaging Server Console... 2

IMF Tune v7.0 Backup, Restore, Replication

HP Operations Manager Software for Windows Integration Guide

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

SAP HANA Client Installation and Update Guide

EMC Documentum Content Services for SAP Repository Manager

Transcription:

Configuring Apache HTTP Server With Pramati 45 A general practice often seen in development environments is to have a web server to cater to the static pages and use the application server to deal with dynamic content. Pramati Server allows developers to integrate a number of third party products with its Server through a plug-in called WebGate. In this chapter, we will look at how to configure Pramati Server WebGate, a plug-in for Apache. WebGate is available for Apache HTTP Servers as well as Microsoft IIS. The plugin is provided by Pramati and can be downloaded from the website (http:// www.pramati.com/). Apart from the normal behavior shown by the plug-in (i.e. redirecting pages to other back-end servers), the plug in can also be configured to perform LoadBalancing. We will cover both of these scenarios. Apache is one of the most widely used webservers available for both Windows and Unix platforms. The WebGate plug-in allows requests to be proxied from an Apache Server to Pramati Server. WebGate enhances an existing Apache installation by providing a method to transparently access Pramati servlet engine. Version and Platform Support WebGate can be used with Apache Server 1.3.2x or 2.0 on Solaris, Linux, and Windows platforms. WebGate is installed as a module on Apache Server to load dynamic content from Pramati Server. WebGate is available for each of these platforms as: Platform WebGate File Name Windows NT, Windows 2000 WGApache1.3Win.dll for Apache Versions 1.3 WGApache2.0Win.dll for Apache Versions 2.0 Solaris WGApache1.3Solaris.so for Apache Version 1.3 WGApache2.0Solaris.so for Apache Version 2.0 Linux WGApache1.3Linux.so for Apache Version 1.3 WGApache1.3Linux.so for Apache Version 2.0 Pramati WebGate for Apache is a plug-in that can be used in an environment where the Apache Server serves static pages while the dynamic content is redirected to the Pramati Server. WebGate is provided by Pramati and can be downloaded from http:// www.pramati.com/. It is distributed as a dynamic shared object (DSO). The downloadable WebGate plug-in archive contains the following files: The plug-in itself (both for Windows and *NIX based systems)

436 Pramati Server 3.5 Installation & Configuration Guide A plug-in properties file (pramatiplugin.props for Apache) Library Jars that are used to configure the WebGate plug-in for load balancing A copy of a web-config.xml file used by the LoadBalancer (enabled with the plug-in). Note: The WebGate plug-in for Apache 1.3 on Solaris does not support load balancing. Installing WebGate for Apache HTTP Server Before installing WebGate, you should configure Apache Server for dynamic shared object (DSO) support, since the plug-in is built as a DSO that is loaded when the Apache HTTP Server starts. To verify that DSO is enabled on Apache Server, run httpd -l at the prompt for Unix based systems. For Windows users run apache -l at the <install-root>/apache/ directory. All modules loaded on the Apache Server are listed. Look for mod_so.c. If mod_so.c is not present, contact your system administrator to enable DSO support for Apache Server. Installing Apache Server with DSO Support in Unix To work with the WebGate plug-in, the Apache server has to be installed with the Dynamic Shared Object (DSO) support. Apache supports building modules as shared objects on all major Unix platforms (see section "Supported Platforms" in document htdocs/manual/dso.html for details). APACI has a nice way of enabling the building of DSO-based modules and automatically installing them: $./configure --prefix=/path/to/apache \ --enable-module=rewrite \ --enable-shared=rewrite $ make $ make install Enabling the DSO Module on Windows With Apache 1.3 make sure the line AddModule mod_so.c is un-commented (by removing the # symbol at the beginning of the line). #AddModule mod_usertrack.c #AddModule mod_unique_id.c AddModule mod_so.c Installing WebGate To install WebGate on Apache Server, extract the contents of the archive into a convenient location on your local system. Let it be called <webgate_home>. 1 Copy pramatiplugin.props into the <APACHE_ROOT>/conf/ directory.

CHAPTER 45 Configuring Apache HTTP Server With Pramati 437 2 Open <APACHE_ROOT>\conf\httpd.conf in any text editor to view the Apache Server configuration file. Add the following information in the LoadModule and AddModule sections respectively, in the configuration file: LoadModule webgate_module /path/to/webgate_home/wgapachex.xwin.dll AddModule mod_webgate.c (ignore this for Apache version 2.0) 3 Requests can be redirected to Pramati Server based on a URI Pattern. To redirect requests to Pramati Server based on a URI pattern, specify the URI pattern as shown in the example below: <Location /bankweb/*> SetHandler webgate-handler </Location> <Location /bankweb/im/*> SetHandler webgate-handler </Location> <Location /bankweb/im/*/*> SetHandler webgate-handler </location> In the <Location> tag above, wild cards (*) can be used in the URI pattern. The * indicates all files under that directory. Alternatively, the LocationMatch tag can also be used: <LocationMatch /bankweb> SetHandler webgate-handler </LocationMatch> In the above configuration snippet, all URI requests that contain the sub string /bankweb in its URI would be redirected to the webgate-handler. Note that in the <LocationMatch> entry, wildcards (*)cannot be used. 4 Save the configuration file and start/restart Apache Server. WebGate is now plugged into Apache Server and allows you to load dynamic content from applications deployed on Pramati Server. If you are using the WebGate plug-in 2.0, the following paths should be added to your system s path for Windows, and the LD_LIBRARY_PATH for Unix-based systems. Operating System Windows Unix/Linux Solaris File Path <JAVA_HOME>/jre/bin/client <JAVA_HOME>/jre/lib/i386:<JAVA_HOME>/jre/lib/i386/client <JAVA_HOME>/jre/lib/sparc

438 Pramati Server 3.5 Installation & Configuration Guide Determining the Version of Plug-in To determine the version of the WebGate Plug-in, please take a look at the log file. Here s a snippet from the log file that shows that the version of the plug-in is 2.1 and the build: WebGate Plugin with Enhanced LoadBalancer for Apache2.0 Version 2.1 09-06-2004 Closing Idle Sockets on Pramati Server With WebGate running, Pramati Server can be tuned for better performance with Apache. These parameters are mostly modified in the Pramati Server configuration file, web-config.xml, located under <install-dir>\server\nodes\default\config directory. The most significant property has to do with keeping idle sockets open on Pramati Server. The tag in the Server configuration file is shown below: Table 1: Setting socket time out for Pramati Server with Apache Parameter keepalive-timeout-millis (in milliseconds) Default Value Set Tag in web-config.xml 1000 ms <keepalive-timeout-millis>30000</keepalive-timeout-millis> Configuring WebGate The pramatiplugin.props file contains configuration parameters required for serving dynamic content from the Server. It is located in the directory APACHE_ROOT/conf/. The parameters stored as key pairs are: Parameter Logging MaxLogFileSizeInMB NoOfLogFiles LogFileName AddClientHeaders Description This parameter can take three values - None, Medium, or Verbose. The default log level is medium. Log files are not generated if this value is None. For log level none, no log file will be created. Maximum size of each log file. If given less than 1 only one log is maintained Number of old log files to be generated/kept after the size of the current log file exceeds its maximum size. <logfile> is the latest and the previous versions are renamed as <logfile>1, <logfile>2, <logfile>3,... and so on. The logfile to which WebGate will write the logs. Here, the file name should be given relative to <APACHE_ROOT> directory. The default log file is <APACHE_ROOT>/logs/pramatiplugin.log. To override the default log file, the file path relative to <APACHE_ROOT>/ should be provided. The string <APACHE_ROOT>/, is attached by default the new logfilename. This option enables forwarding of client headers, this is usefull to identify the IP headers. Add X-Forwarded-For Header.

CHAPTER 45 Configuring Apache HTTP Server With Pramati 439 WebGateHost MaxSockPool EnhancedLBEnabled PluginInstallationHome This is a comma separated list of machine names on which the Pramati Server is running. For example, Host:port The maximum number of sockets used by the plug-in to connect Pramati Web Server. The default is 10. To enable/disable the enhanced LoadBalancer which maintains Session stickiness, balances load in a round robin fashion and performs failover by resending the request to another node. It can also detect a restarted node. Default is false. The plugin installation directory. The directory from which 'web-lbconfig.xml' is picked up. Note : this directory should also contain the required jars. Apart from these the web-config.xml file would be needed to configure enhanced LoadBalancing. Also, if tracing is used, the plugin-home directory should contain the trace.props file. Using Connection Pooling of Pramati Server Instead of creating a new socket from the plug-in to the web container of Pramati Server, a specified number of sockets can be created at start up and reused. This number is set in the pramatiplugin.props as MaxSockPool (see table above). Failover of WebGate for Apache HTTP Server When the Apache plug-in starts up, it tries to create a pool of connections to a node that is specified first in the comma separated list of nodes. If it successfully creates the connection, it serves the request using the pool. When a node is shutdown, the plug-in performs a failover and tries to create a connection pool for the next node. If the connection fails or there is no response from any Server in the cluster, an error message is sent. Sample Configuration Following is a sample configuration file: Logging medium MaxLogFileSizeInMB 500 NoOfLogFiles 5 LogFileName logs/pramatiplugin.log AddClientHeaders true WebGateHost localhost:8181 MaxSockPool 10 EnhancedLBEnabled false PluginInstallationHome D:/WebGateHome

440 Pramati Server 3.5 Installation & Configuration Guide Achieving Loadbalancing with the Apache plug-in Pramati WebGate plug-in can be configured to balance load among several backend nodes. One advantage of configuring loadbalancing at the plug-in level is that it would avoid an extra hop to the Load balancer node and the loadbalancing takes place right at the plug-in level. To learn more about concepts of loadbalancing refer to the chapter on Request Dispatcher Architecture in Pramati Server 3.5 Technical Reference Guide. To enable loadbalancing of the WebGate Plug-in, unzip the downloadable archive at a convenient location on the machine on which it should be configured. Let this directory be <webgate_home>. In this section we will look at how to configure the WebGate plug-in to balance load. The loadbalancing feature can be enabled at the plug-in level by enabling the EnhancedLBEnabled property. Here s a sample plugin.props with descriptions of each properties inline: Here s a sample pramatiplugin.props with descriptions of each properties inline: Property Name Description EnhancedLBEnabled To enable/disable the enhanced LoadBalancer which maintains Session stickiness, balances load in a round robin fashion and performs failover by resending the request to another node. It can also detect a restarted node. If enabled, the configuration property WebgateHost from pramatiplugin.props will not be read. The nodes informaiton will be picked up from web-lbconfig.xml file. PluginInstallationHome The plugin installation directory. The 'web-lbconfig.xml' file needed to configure the enhanced LB and the LB.jar will be picked up from this directory. Make sure that this path is in the system path. EnhancedLBContexts If 'EnhancedLBEnabled' is enabled, then a list of contexts which need to be redirected to the back-end Pramati Servers is specified here. Eg. EnhancedLBContexts /admin. Use '@' for all contexts. Note that the web-lbconfig.xml file (in the <webgate_home> directory) should be configured to provide information about various backend nodes and their port numbers. To learn more about configuring backend nodes, refer to the chapter Administration Guide. Enabling Tracing for LoadBalancing Pramati Server provides a tracing mechanism where by developers can troubleshoot or debugg problems that may occur while using loadbalancing with the WebGate. When the plugin is started with Enhanced LB enabled, messages produced by the loadbalancer are present in <PluginInstallationHome>/ApachePlugin1.3.log or <PluginInstallationHome>/ ApachePlugin2.0.log file. The log file with property LogFileName generates logging information generated by the plugin alone. By default only messages that are marked severe are logged. Pramati Server provides a trace.props file that enables logging. This file should be available in the plugin home.

CHAPTER 45 Configuring Apache HTTP Server With Pramati 441 The following is a sample trace.props file: #~~~~~~~~~ #Trace.props #~~~~~~~~~ handlers=custom_handler handler.custom_handler.type=console handler.custom_handler.details= handler.custom_handler.isabsolutepath=true handler.custom_handler.appendiffileexists=true handler.custom_handler.loglevel=all handler.custom_handler.contexttype.packages=.,true; enable.debug=true Table 2: Trace Properties Property Description handlers handler.custome_handler.ty pe handler.custom_handler.det ails handler.custom_handler.isa bsolutepath handler.custom_handler.app endiffileexists handler.custom_handler.logl evel handler.custom_handler.con texttype.packages enable.debug This is just a place holder for the kind of handlers. There can be a number of handlers available doing various types of tracing. Here the entry custom_handler provides the reference to the current handler. Tracing can happen either to a file or to console. Enter file for logging trace messages to a file, and console to the command shell. The path to the file where the trace messages should be logged in case of a file. Set this to true if the path given above is an absolute path, and false otherwise. This can be either true or false. If true, trace methods are appended at the end of the file, if it exists. If set to false, the trace file is overwritten. Loglevels can be specified here. The following log levels are available : event, debug, off, info, user, finer, severe, warning, all. All relavent trace methods that occur in a given package are logged in the trace file. Set this to true if debug messages should appear while tracing. Valid values are true or false.

442 Pramati Server 3.5 Installation & Configuration Guide