Note: If you cannot find a topic, go to docs.rightscale.com where all RightScale documentation will soon be located. Also, feel free to Chat with us!
Home > Partners > Zeus > Zeus Traffic Manager ServerTemplates

Zeus Traffic Manager ServerTemplates

Table of Contents

Description and Inputs

Boot scripts

The following scripts will be run at boot time when a Server is launched with the "Zend Traffic Manager" ServerTemplate.  The scripts are listed in the order in which they will be run.

RightScript: Zeus Traffic Manager install
Description: Installs the Zend Traffic Manager software.

Required Inputs and Default Settings: None.

RightScript: Zeus Traffic Manager preconfigure (<Traffic Manager variant>)
Description: Installs a Zeus license key appropriate to the type of ServerTemplate being instantiated.
Required Inputs and Default Settings: None.
RightScript: Zeus Traffic Manager configure
Description: Provides initial configuration for a previously installed Traffic Manager.
Required Inputs and Default Settings:
OPT_CLUSTER_HOST

The hostname of the Traffic Manager with which to cluster.

Optional: By default, the new Traffic Manager will create its own stand-alone cluster.

OPT_CLUSTER_PORT

Management port for the Admin UI on the OPT_CLUSTER_HOST.

Optional: Defaults to 9090.

ZEUS_ADMIN_PASSWORD

Password for the primary 'admin' user.

Mandatory.

RightScript: Zeus set EC2 credentials
Description: Sets your AWS credentials in the Traffic Manager configuration so that it can manipulate Elastic IPs.  
Required inputs and Default Settings:
AWS_ACCESS_KEY_ID

Amazon Access Key ID.

Optional: By default, the Credential (with the same name) that RightScale automatically creates for your RightScale account will be used.

AWS_SECRET_ACCESS_KEY

Amazon Secret Access Key

Optional: By default, the Credential (with the same name) that RightScale automatically creates for your RightScale account will be used.

 

RightScript: Zeus AFM Install

Description: Installs the Zeus Application Firewall Module (AFM) and configures it ready for use with Zeus Traffic Manager.
Required inputs and Default Settings:
AFM_ADMIN_PW

The administration password for the Zeus Application Firewall Module (AFM) Admin UI. If clustering using the OPT_CLUSTER_HOST input this must be the password used on the other AFMs in the cluster.

AFM Server Templates only.
AFM_ADMIN_USER

If clustering this traffic manager with others using the OPT_CLUSTER_HOST input, which admin user should be used to cluster the AFMs?

AFM Server Templates only.

 

RightScript: Zeus AFM Licence

Description: Installs a suitable Zeus Application Firewall Module (AFM) cloud licence key.
Required Inputs and Default Settings: None.

 

RightScript: SYS Monitoring install

Description: Installs collectd and configures it to send generic system performance statistics to RightScale so that system data can be collected and graphed inside the Dashboard.   Metrics can also be used for setting RightScale Alert Specifications.
Required inputs and Default Settings:
MON_PROCESSES

List of additional processes to monitor in the RightScale Dashboard.

Always set to 'zeus.zxtm'

SERVER_UUID

Required for monitoring and logging by RightScale.

Always set to RS_INSTANCE_UUID

SKETCHY

Required for data collection and graphing in the RightScale Dashboard.

Always set to RS_SKETCHY

 
 
RightScript: SYS monitoring Zeus add
Description: Configures collectd to send Zeus-specific statistics to RightScale.
Required Inputs and Default Settings:
 OPT_ZEUS_COLLECTD_INTERVAL 

Defines how often to send statistics.  (i.e. Interval between statistics samples)

Optional: Defaults to 20 seconds

SERVER_UUID

Set to the appropriate value by default.

Always set to RS_INSTANCE_UUID

 

Operational Scripts

The following Operational Scripts are optional scripts that are designed to be manually run on-demand once the Server is operational.
RightScript: Zeus create vserver
Description: When a Traffic Manager is first started, it has no services configured.  You would normally use the Zeus Administration UI to configure any services that are required.  This script provides an automated way to create a simple service consisting of a Virtual Server and Pool.  Refer to the Zeus User Manual for further information on the concepts used here.
It is not necessary to run this script on each new Traffic Manager joining an existing cluster as the configuration is replicated across to the new cluster members automatically.
Required Inputs and Default Settings:
 
LB_APPLISTENER_NAME

Name of the new Virtual Server (and its associated Pool).  

Mandatory.

LB_BIND_PORT

Port on which the new Virtual Server should listen.  

Mandatory.

LB_PROTOCOL

Virtual Server protocol (HTTP, FTP, etc.).

Mandatory.

Decommission scripts

These scripts are run at shutdown to remove the terminating Traffic Manager cleanly from the cluster.
RightScript: Zeus leave TM cluster
Description: Cleanly removes the Traffic Manager from its cluster.
Required Inputs and Default Settings: None. 

Backend Scripts

There are two additional scripts which should be installed on the ‘backend’ nodes (content/application/web servers, etc.).  These automatically add a node to a specific pool on the Traffic Manager on startup, and remove it on shutdown.
These scripts are not a part of the ServerTemplate.  However, they can be located in the MultiCloud Marketplace and imported into your RightScale account's 'Local' collection separately.
RightScript: Zeus backend connect
Description: Adds a new backend node to a pool on the Traffic Manager.  Should be installed as a Boot Script on each backend node.
Required Inputs and Default Settings:
LB_APPLISTENER_NAME

Name of the Traffic Manager pool which this backend node should join.   

Mandatory.

LB_HOSTNAME

Name of the Traffic Manager to joinusually the DNS name of the service.

Mandatory.

LB_BACKEND_NAME

Name of the server node that is joining the Traffic Manager pool.

Optional:  Defaults to the node's EC2 local hostname.

OPT_VHOST_PORT

Port on which the backend server is listening on for connections.  

Optional: If no value is provided, an appropriate default will be found.

RightScript: Zeus backend disconnect
Description: Removes a backend from a Traffic Manager pool.  This script should be installed as a Decommission Script on each backend node.
Required Inputs and Default Settings:
LB_APPLISTENER_NAME

Name of the Traffic Manager pool which this backend node should be removed from.   

Mandatory.

LB_HOSTNAME

Name of the traffic manager to disconnect fromusually the DNS name of the service.

Mandatory.

LB_BACKEND_NAME

Name of the server node that is disconnecting from the Traffic Manager pool.

Optional:  Defaults to the node's EC2 local hostname.

OPT_VHOST_PORT

Port on which the backend server is listening on for connections.  

Optional: If no value is provided, an appropriate default will be found.

 
 

Statistics

The collectd system, as installed by the "SYS Monitoring install" and "SYS Monitoring Zeus add" scripts, monitors the following Traffic Manager performance metrics:
For each Traffic Manager:
total_connections Connection rate (connections/second) handled by this Traffic Manager during the measurement interval.
bytes_in Data received (bytes/second) by this Traffic Manager from clients during the measurement interval.
bytes_out Data sent (bytes/second) by this Traffic Manager to clients during the measurement interval.
 
For each Virtual Server:
total_connections Connection rate (connections/second) handled by this Virtual Server during the measurement interval.
bytes_in Data received (bytes/second) by this Virtual Server from clients during the measurement interval.
bytes_out Data sent (bytes/second) by this Virtual Server to clients during the measurement interval.
connection_errors Rate of protocol-level errors during the measurement interval.  For instance, an invalid HTTP response from a backend server is counted as a connection error.
connection_failures Rate of socket-level errors during the measurement interval.  For instance, an TCP timeout when connecting to a backend server is counted as a connection failure.
max_connections Maximum number of concurrent connections handled by this Virtual Server.
 

Common Runbook Cases

This runbook is not meant to provide detailed information on the underlying architecture of the Zeus Traffic Manager. Further information can be found in the Zeus EC2 Getting Started Guide or at the following website: http://knowledgehub.zeus.com.

Security Group Settings

The following ports should be allowed in the Security Groups for your Traffic Managers:

  • For system administration, TCP ports 22 (SSH command-line access) and 9090 (management port for the web-based Admin UI) should be open to connections from your network gateway;
  • TCP port 80 (and any other ports required for your configured services) should be open to the world;
  • TCP ports 9080 and 9090, and UDP ports 9080 and 9090, should be open between Traffic Manager nodes in your Deployment.

Set up your first Traffic Manager

Zeus Traffic Manager is designed to work best as multiple instances together in a clustered arrangement, in order to provide greater capacity and fault tolerance. It can, however, work as a stand-alone instance.

  • For a single Traffic Manager, set the OPT_CLUSTER_HOST and OPT_CLUSTER_PORT inputs to "ignore" as there is no cluster to join. Subsequent Traffic Managers may set these to the hostname and port of the Traffic Manager they wish to cluster with.
  • The ZEUS_ADMIN_PASSWORD input should be set in all cases. This is the ‘admin’ user password used to log into the Traffic Manager to configure it. This password will also be used by additional Traffic Managers wishing to join the cluster, and by backend web servers wishing to join server pools.
  • Once a Traffic Manager is operational, you can log into the web-based Admin UI and configure it. Set your browser URL to the hostname or IP address of the new Traffic Manager, on port 9090. You should be presented with the Admin UI login screen.

Add a Traffic Manager to a cluster

A cluster of Zeus Traffic Managers is created by first launching a single Traffic Manager instance, then launching additional Traffic Managers and instructing them to cluster with the first.

  • Once the first Traffic Manager instance is running, you can launch subsequent instances and instruct them to cluster with the first.
  • Set the OPT_CLUSTER_HOST and OPT_CLUSTER_PORT inputs to the hostname and management port of another Traffic Manager in the cluster you want to join. It is not necessary to always specify the same Traffic Manager, as once they are clustered each Traffic Manager becomes capable of accepting cluster requests from new instances.
  • OPT_CLUSTER_PORT defaults to 9090. ZEUS_ADMIN_PASSWORD should be set to the ‘admin’ user password of the machine with which you wish to cluster.
  • You can create an auto-scaling array of Traffic Managers, using the performance statistics reported by each machine to drive scaling up and scaling down.

Remove a Traffic Manager from a cluster

A Traffic Manager will automatically remove itself from a cluster when it is shut down. The remaining Traffic Managers will automatically recognize the removal of the node and adjust their configuration accordingly.

Add and Remove backend servers

You can configure your backend web servers to add themselves to the Traffic Manager's load-balanced server pools automatically.

  • Import the Zeus backend connect script from the MultiCloud Marketplace into your account's local collection. Add it to your web backend ServerTemplates as a Boot script. This will cause a server based on this template to be automatically added into the desired server pool when it is started up.
    • Set the LB_HOSTNAME input to be the hostname or IP address of a traffic manager in your cluster.
    • Set the LB_APPLISTENER_NAME input to the name of the server pool which you wish to join.
  • Import the "Zeus backend disconnect" script from the MultiCloud Marketplace into your 'Local' collection. Add it to your web backend ServerTemplates as a Decommission Script to ensure that a server based on this ServerTemplate will automatically and cleanly remove itself from the Traffic Manager cluster configuration when it's shuts down. (Note: You may need to clone the ServerTemplate to create an editable version.)
    • Set the LB_HOSTNAME input to be the hostname or IP address of a Traffic Manager in your cluster.
    • Set the LB_APPLISTENER_NAME input to the name of the server pool of which the backend is a member.
  • You can create an auto-scaling array of backend servers, using the performance statistics reported by the Traffic Manager cluster and the backend servers themselves to drive scaling up and scaling down.

Upgrading a traffic manager

The RightScale environment enables an administrator to start and stop new instances of the traffic manager to suit the needs of the services being provided.  Instead of upgrading a running traffic manager instance when a new version of the software is released, it is simpler and less disruptive to start an instance of the newer software, migrate the configuration over from the old one, and then terminate the old instance.  The following steps can be performed for each traffic manager in your cluster:

  • Start an instance of the new ServerTemplate version.
  • Using the Admin UI, or the OPT_CLUSTER_HOST input for the “Zeus Traffic Manager configure” RightScript, join the new instance to your cluster.  Ensure that you set the new instance to join the appropriate Traffic IP groups.  Note that per-node hostname mappings (configured on the System > Networking page of the Admin UI) will not be migrated automatically - you must set these manually on each new instance.
  • Terminate one of the old instances in your cluster.
  • Repeat these steps until all the traffic managers in your cluster have been replaced. Replace instances one by one - do not terminate an old instance until its replacement has successfully joined the cluster.
You must to post a comment.
Last modified
23:44, 16 May 2013

Tags

This page has no custom tags.

Classifications

This page has no classifications.

Announcements

None


© 2006-2014 RightScale, Inc. All rights reserved.
RightScale is a registered trademark of RightScale, Inc. All other products and services may be trademarks or servicemarks of their respective owners.