Administrator's Guide

CHAPTER 12

Administering a Cluster

This chapter describes how the Novell exteNd Application Server uses server clustering to implement load balancing and failover. It explains how to set up and maintain a clustered environment. The chapter contains the following sections:

 
Top of page

Server clustering

In order to accommodate high processing loads, the application server implements load balancing using server clustering.

What is a server cluster?

A server cluster is a set of servers running on different hosts that share the processing load. In the application server environment, a cluster is a group of independent systems working together as a single system connected to the same SilverMaster database. In this configuration, clients interact with a cluster as though that cluster were a single high-performance, highly reliable application server.

NOTE:   A cluster of servers can handle demand over time more efficiently than one large machine can, because the sum of the bandwidth and resources of multiple machines is greater (and less expensive) than that of a single large machine.

Benefits of server clustering

Server clustering provides the following benefits:

Benefit

Description

Scalability and better performance

You can increase the number of requests that get processed over a period of time. When the overall load exceeds the capabilities of the systems in the cluster, additional systems can easily be added to the cluster.

Cache management

If a change is made to an application, cache management ensures that the change is propagated to each server in the cluster.

Load management

Client requests are distributed to servers in order to optimize overall performance.

You can also use a third-party load manager.

Failover

Failover capability is provided for each component of the server cluster. Specific system failover capabilities are described in Managing component failover.

 
Top of page

Cluster components

An application server cluster includes these components.

Component

Number

Purpose

SilverMaster database

One

Keeps track of cluster membership

Application server

One or more (usually at least two)

Serves applications

Load Manager

One (optional but requires Dispatcher when used)

Manages the activity of the Dispatcher

Dispatcher

One (optional but requires Load Manager when used)

Used by the Load Manager to redirect requests to application servers

Cache Manager

One

Keeps server caches in sync

The cluster components are configured as follows:

ClusterComponents

Cluster requirements   A cluster configuration must meet these general requirements:

Cluster options   You have the following options within the cluster configuration:

 
Top of section

The Cache Manager

Each application server has an intelligent caching mechanism for storing commonly accessed data in memory (such as security information). Reading this information from the database for each request would be very inefficient, so the application server maintains this information in cache memory. Whenever the information is updated on the server (for example, a new security permission is applied or a J2EE archive is deployed), the application server's cache is updated as well.

Maintaining this cache across multiple servers in a cluster is important for application and data consistency. In a clustered environment, multiple servers can simultaneously change the same data in the application server's system tables, and this situation might leave data cached in memory in a corrupted or inconsistent state. The Cache Manager is responsible for preventing such conflicts by ensuring that other servers in the cluster are notified when any server invalidates cache objects. All servers then discard their invalid cache entries and get an updated version of the resource the next time the object is needed.

How the Cache Manager works

The Cache Manager can run on a separate machine or on any machine in the server cluster. The Cache Manager must be up and running before any servers in a cluster start. At startup, the application server reads the clustering information about the setup from the SilverMaster catalog and initiates contact with the Cache Manager. The Cache Manager registers the server's existence and identifies it as a member of the cluster:

CacheManager

If a server modifies an existing object, it notifies the Cache Manager that the specific object must be invalidated on other servers. Since all objects in the application server environment can be denoted by an URL, the server calls the Cache Manager to invalidate the specified URL for all servers. The Cache Manager calls each registered server (except the one that initiated the invalidation) and tells it to invalidate the object identified by the URL.

 
Top of section

The Load Manager

The Load Manager is a program that can run as a service or regular process on any machine in the same network as the cluster. The Load Manager's role is to keep track of each active server and its relative processing load (or weight, as explained in Distribution mapping below) in the cluster. Based on this information, the Load Manager generates a distribution map, which it transmits to the Dispatcher in the configuration.

How the Load Manager works

The Load Manager must be up and running before any servers in a cluster start. At startup, the server reads the clustering information about the setup from SilverMaster and initiates contact with the Load Manager to register the server's existence. The Load Manager first registers that the server is up, then determines how to contact the server and factors the server into the distribution map. At Load Manager startup, the Load Manager reads the Dispatcher information about the setup from its property file and initiates contact with the Dispatcher so that it can transmit the distribution map in the future.

The figure below shows the Load Manager:

LoadManager

Distribution mapping

The distribution map, which is dynamically generated by the Load Manager, determines the processing load for each server in the cluster. The distribution weight for each server is represented by an integer between 1 and 10.

By default, a round-robin system is used to distribute the load, which means that all servers in the cluster get an equal number of hits over time and have the same weight.

You can modify this distribution. For example, if you set server 1 at 8, server 2 at 4, and server 3 at 2, over a period of time server 1 would get twice as many hits as server 2, and server 2 would get twice as many hits as server 3. The table that follows shows other examples of weight settings:

Servers in clusters

Weight

Result

1, 2, 3

null

Round robin

1, 2, 3

1, 1, 1

Round robin

1, 2, 3

2, 4, 6

Server 1 is least hit, server 2 eventually has twice as many hits as server 1, and server 3 eventually has three times as many hits as server 1

1, 2, 3

1, 1, 10

Server 3 eventually has 10 times as many hits as servers 1 and 2

For more information    For information on modifying the distribution, see Specifying a server's relative load weight.

 
Top of section

The Dispatcher

The Dispatcher serves as the entry point for Web clients into a server cluster: clients initially access the cluster through the Dispatcher's URL.

The Dispatcher is a lightweight HTTP/HTTPS-supported program that communicates with other cluster components to dispatch client requests to servers according to the distribution map the Load Manager provides. The Dispatcher can be run as a service or as a regular process on any machine in the same network as the cluster servers. The Dispatcher and Load Manager can run on separate machines and on separate platforms, and do not need access to the SilverMaster database.

How the Dispatcher works

The first time the Dispatcher is called from the client, it finds the best server for the request, based on the distribution map it receives from the Load Manager. Then, using a standard process called HTTP redirect, it redirects the request back to the client. The client then sends the request directly to the designated server.

Once a session has gone through a Dispatcher to a particular server, all client communication is sent directly to the server, not through the Dispatcher; and the redirection is not masked (meaning that in the browser the user sees the URL for the server, not the URL for the Dispatcher).

The following figure shows the sequence in the HTTP redirect process:

Dispatcher

The Dispatcher supports HTTPS (as well as both HTTP 1.0 and HTTP 1.1). This means you can install server certificates after you set up a cluster. See Administering a server cluster.

Using third-party dispatching solutions

While the application server's software Dispatcher is an excellent solution for many load-balancing and failover needs, you may require functionality that it does not provide.

You may want to use a third-party dispatching solution for the following reasons:

Reason

More information

Complex load-balancing algorithm

When you want more control over how load distribution is calculated, you may want to use another dispatching solution.

DNS masking

Since the software Dispatcher performs a simple HTTP redirection to an available server in the cluster, the browser must be able to establish a direct connection to that server. All clients therefore must be able to resolve all TCP/IP host names for server members. On the other hand, dispatching solutions with DNS masking capabilities process all incoming and outgoing traffic—and thus all servers can be resolved using one common host name.

This capability is particularly useful in Internet applications where it is desirable for users to see only one host name (such as www.company.com)—instead of a host name for each server and dispatcher.

Session-level failover

For J2EE applications whose deployment plans indicate failover support (WARs marked as distributable and EJB JARs marked as recoverable), many third-party dispatchers can automatically reroute a session to another server in the cluster transparently to the user. For session-level failover, rerouting is required.

Global dispatching

You may want to have dispatchers that can do more complex routing—for example, to different sites around the world.

In situations like these, you may want to substitute a third-party dispatching solution for the Load Manager and Dispatcher. You would still use the application server's Cache Manager to maintain a consistent cache and would still use the SMC to manage the server.

Any standard HTTP server load-balancing solution should work with the application server.

 
Top of page

Component failover

The application server provides system failover and recovery in the event of transient failure and persistent failure. If any component in a cluster fails, the failure is detected by a background program called SilverMonitor.

About SilverMonitor

SilverMonitor observes the state of the daemons, processes, and services running on the system. SilverMonitor monitors each component of the server cluster; if any component fails, SilverMonitor detects the failure and attempts to restart the component.

SilverMonitor usually ensures that failed components recover quickly. If a failure is persistent (due, for example, to a hardware failure), SilverMonitor gives up after a predefined number of attempts in order to conserve system resources.

NOTE:   SilverMonitor runs in each cluster by default. It is also provided as a server startup option through which you can define certain program parameters. For more information, see Using SilverMonitor.

If SilverMonitor cannot restart a server

When a server in a cluster goes down and is not restarted promptly, the following sequence occurs:

  1. The Cache Manager detects the failure.

  2. The Load Manager detects the failure and removes the server from the distribution map.

  3. The Load Manager sends an updated map to the Dispatcher so that new clients are not redirected to the failed server.

When the server is restarted

When the server is restarted, the following sequence occurs:

  1. The server reconnects to the Cache Manager.

  2. The server reconnects to the Load Manager.

  3. The Load Manager rebuilds the distribution map and sends it to the Dispatcher.

  4. The server begins to receive client requests.

When a server fails, connected clients lose their connections. They need to either restart or send another request from the browser to the Dispatcher.

 
Top of section

Persistent failure

If restarting a server takes a significant amount of time, the cluster components force a reconfiguration of the cluster so that incoming client requests can be serviced as efficiently as possible. During a persistent failure, the active components respond as follows:

When this component goes down

This happens

Application server

The failure is detected by the Load Manager, which instructs the Dispatcher to redirect traffic to active servers, as described above.

Load Manager

The distribution map cannot be updated, but the Dispatcher still works using the cached version of the map.

Dispatcher

No new connections can be made. Existing sessions are not affected.

Cache Manager

Applications whose logic or properties have not changed continue to run correctly.

 
Top of page

Setting up a server cluster

The application server's clustering components (Cache Manager, Load Manager, and Dispatcher) are available with certain editions of the application server.

Procedure To set up a server cluster:

  1. Install the first server and create the SilverMaster. If you have already completed the installation, make sure the SilverMaster setup is appropriate for the cluster.

    For more information    For information about installing the application server and configuring the SilverMaster database, see Installing Novell exteNd.

  2. Add any deployment databases or connection pools your system needs.

  3. Using the installation program, install the clustering components on one or more machines. You can use a combination of platforms (UNIX, NetWare, and Windows).

    For more information    For more information, see Installing Novell exteNd.

  4. Start the clustering components.

    For more information    For more information, see Starting the clustering components next.

    If you installed the components as daemons or services, you can stop and restart them in this mode.

  5. Using the installation program, install each of the additional servers that are part of the cluster.

    For more information    For more information, see Installing cluster servers.

  6. Start the SMC and create the cluster.

    For more information    For more information, see Creating the cluster.

  7. After creating the cluster, restart all servers and components to activate the cluster.

    For more information    For more information, see Restarting the clustered servers.

 
Top of section

Starting the clustering components

If the load-balancing software is not currently running as a service on your network, you need to run the programs manually on the resident machine(s). If you are using the application server's Load Manager, execute the commands in the order shown in the procedure that follows.

Procedure To start the cluster components:

In Windows and UNIX, the programs specified in the steps below are in the server's \bin directory. In NetWare, enter the command from the System Console.

  1. Start the Cache Manager program.

    Operating system

    Command

    NetWare

      SilverCacheMgr
    

    UNIX

      /bin/SilverCacheMgr
    

    Windows

      \bin\SilverCacheMgr.exe
    

  2. Start the Dispatcher program.

    Operating system

    Command

    NetWare

      SilverDispatcher
    

    UNIX

      /bin/SilverDispatcher
    

    Windows

      \bin\SilverDispatcher.exe
    

  3. Start the Load Manager program.

    Operating system

    Command

    NetWare

      SilverLoadMgr
    

    UNIX

      /bin/SilverLoadmgr
    

    Windows

      \bin\SilverLoadMgr.exe
    

You can specify the JVM to start with each of these executables. For more information, see Specifying the JVM to use.

Using startup parameters with the Dispatcher   You can start the Dispatcher with the parameters described below:

Parameter

Description

-p propfile

The name and location of an alternate Dispatcher.ddl file.

The Dispatcher.DDL file is created by the SMC at cluster configuration time. It specifies the default ports for RMI, HTTP, and HTTPS for the Dispatcher and is located in the server's \Resources directory.

Using an alternate Dispatcher.ddl file—or editing this file outside the SMC—is not recommended.

-c upload-certificate

Run the Dispatcher in upload-certificate mode.

For more information    For more information, see Installing certificates in a cluster.

-h host

The host name specified here is converted to an IP address via:

  InetAddress.getByName(host_name);

When specified, the Dispatcher will open a server socket that is listening on this IP address only. If not specified, the socket will listen on all IP addresses of the local machine.

+cp:p path

Prepends specified path to the classpath. Don't use this debugging option without first contacting Novell exteNd Technical Support. Instead, use AGCLASSPATH to make additional Java classes available to applications.

For more information    For more information, see Setting the AGCLASSPATH variable.

+cp:a path

Appends specified path to the classpath. This option makes additional Java classes available to applications by appending the specified path to the classpath.

NOTE:   Use the AGCLASSPATH environment variable to extend Java classes.

For more information    For more information, see Setting the AGCLASSPATH variable.

 
Top of section

Installing cluster servers

After you have installed the server that will contain the cluster's SilverMaster database, use the installation program to install additional servers. When installing additional servers, you need to point them to the first server you installed (which contains the SilverMaster database), since all servers in a cluster need to use the same SilverMaster.

This section provides some installation tips. For more detailed information, see Installing Novell exteNd.

Guidelines for installing cluster servers (NetWare)

One step in setting up a cluster is installing the application server on each host machine that will participate in the cluster. During these installs, you'll need to follow the guidelines below to properly fill in the Database Information screen.

Installing the first application server in the cluster    In a cluster, only the first application server has a SilverMaster database. When you install that server, fill in the Database Information screen as usual. For example (installing on machine HostA):

Setting

What to specify when installing on Host A

MySQL Database Host

HostA

MySQL Database Port

3306

DB User Name

appserver

DB User Password

*********

Confirm User Password

*********

SilverMaster Name

SilverMaster50

Execute SilverMasterInit

[checked]

Installing the other application servers in the cluster    The other application servers in a cluster use the SilverMaster database of the first server. When you install these other servers, fill in the Database Information screen to point to that database and uncheck the Execute SilverMasterInit setting (to prevent reinitializing the SilverMaster system tables in that database). For example (installing on machine HostB):

Setting

What to specify when installing on Host B

MySQL Database Host

HostA

MySQL Database Port

3306

DB User Name

appserver

DB User Password

*********

Confirm User Password

*********

SilverMaster Name

SilverMaster50

Execute SilverMasterInit

[unchecked]

After adding each server to the cluster, you can use the SMC to create the cluster, as described in Creating the cluster below.

Guidelines for installing cluster servers (UNIX)

Run the application server install on the machine you want to add to the cluster. Note that:

If an error displays, you probably misentered information about the existing SilverMaster database. You'll need to respecify that information.

After adding each server to the cluster, you can use the SMC to create the cluster, as described in Creating the cluster below.

Guidelines for installing cluster servers (Windows)

Run the application server install on the machine you want to add to the cluster. Note that:

If an error displays, you probably misentered information about the existing SilverMaster database. You'll need to respecify that information.

After adding each server to the cluster, you can use the SMC to create the cluster, as described in Creating the cluster below.

 
Top of section

Creating the cluster

Once you have multiple servers pointing to a single SilverMaster, you can create and configure the cluster. An application server can be included in only one cluster.

You must use an HTTP port (not an HTTPS port) to create a cluster. If you have configured an administration port, that must be the port you use.

For more information    For more information, see Using separate ports with your firewall.

Procedure To create a cluster:

  1. Make sure the Cache Manager, Dispatcher (if used), and Load Manager (if used) are running.

    For more information    For more information, see Starting the clustering components.

  2. Start the SMC.

  3. Click New (cluster) from the toolbar.

    The New Cluster Wizard displays:

    createCluster1

  4. Enter a cluster name, then click Add.

    The following panel displays:

    createCluster2

  5. Enter an appropriately qualified name followed by a port number and then click OK. (The server name and the way you qualify it should match what the server is listening on. Specify the name as echoed on the server console.) For example:

      agserver.myco.com:50001
    

    Be sure the first server you add is the one containing the SilverMaster. All subsequent servers you add must be configured to use the same SilverMaster.

    If your port(s) are set to 80, you don't need to specify a port number. However, if you have defined an administration port, be sure to specify that port number. If the application server is not your primary Web server, you must change the port to a number above 5000. For instructions on changing ports, see Specifying general server properties.

  6. Click Add again and enter the server name for as many servers as you intend to add to the cluster. Each server is listed in the New Cluster form as you add it to the cluster.

  7. Click Next to set up your Cache Manager.

    The following panel displays:

    createCluster3

  8. Enter the host name of the Cache Manager. The default RMI port number for the Cache Manager is 54891. When initially creating the cluster, you should specify the default port, but you can later change the port if necessary.

    For more information    For information about changing the default ports, see Changing the clustering components' properties.

  9. If you plan to use the application server's Load Manager, select the Use Novell exteNd Load Manager components check box and go to the next step.

    If you do not plan to use the Load Manager at this time, click Finish and go to Restarting the clustered servers.

  10. Enter the host name of the Load Manager. The default RMI port is 54891. When initially creating the cluster, you should specify the default port, but you can later change the port if necessary.

    createCluster4

    For more information    For information about changing the default ports, see Changing the clustering components' properties.

  11. Click Edit Dispatcher ports to add the Dispatcher.

    The following panel displays:

    createCluster5

  12. Enter the host name for the Dispatcher.

  13. Specify port settings for any or all of the ports in each protocol type you want the Dispatcher to listen on.

    The Dispatcher listens on all configured port types: HTTP, RSA, and DSA for any of the following unique server ports that you have already configured and enabled:

    You can disable HTTP port(s) and use HTTPS or RMI client communications. For more information, see Turning off HTTP communications.

    For more information    For information about default port settings for each security protocol, see Port types.

    The following table describes the port settings that appear in the panel. When initially creating the cluster, you should specify the default ports for each. You can change the ports later if necessary.

    Item

    Description

    RMI Port

    The port for Dispatcher communications with the Load Manager. Used by the Dispatcher, Cache Manager, and Load Manager.

    The default is 54891.

    HTTP Settings:

    Runtime Port

    Admin Port

    The HTTP port(s) for unencrypted communications with clients used by the Dispatcher. You can configure up to three HTTP ports.

    By default, the cluster runtime and administration ports use the same default port number: 54892.

    For more information    See Turning off HTTP communications.

    RSA Settings:

    Runtime Port

    Admin Port

    The RSA port(s) for encrypted communications (using HTTPS) used by the Dispatcher.

    By default, the Dispatcher uses the same default port number (54893) for all RSA runtime and administration ports in the cluster.

    DSA Settings:

    Runtime Port

    Admin Port

    The DSA port(s) for encrypted communications (using HTTPS) used by the Dispatcher.

    By default, the Dispatcher uses the same default port number (54894) for all DSA runtime and administration ports in the cluster.

    For more information    For information about changing the default ports, see Changing the clustering components' properties.

  14. Click OK. You return to the New Cluster panel.

  15. Click Finish.

 
Top of section

Restarting the clustered servers

After creating the cluster, you must restart each server. If you are running the Load Manager, you must also restart the Load Manager and Dispatcher.

Procedure To restart a server:

  1. Select the server in the left panel in the SMC.

  2. Click Restart (server).

    For more information    For more information about restarting servers, see Restarting the application server.

Procedure To restart the Load Manager and the Dispatcher:

 
Top of page

Administering a server cluster

After creating a cluster, the SMC displays options specific to a clustered environment.

 
Top of section

About properties in a clustered environment

In a clustered environment, there are three types of properties:

Property type

Description

Server local properties

Properties that are specific to an individual server and stored in the server's httpd.props file (and not the SilverMaster). These are properties that are needed by a server in order to start, so they are stored externally and are available at server start.

For more information    For a listing of these properties and information on setting them, see Appendix A, "The httpd.props File".

Server stored properties

Properties that are specific to an individual server and stored in the SilverMaster database (in the AgProperties table).

For a listing of these properties, select a server in a cluster in the SMC and look at the properties listed in the panels. The listed properties include the server stored properties as well as the server local properties that are configurable in the SMC. All server stored properties are configurable in the SMC.

Cluster shared properties

Properties shared by all servers in the cluster. These properties are stored in the SilverMaster database (in the AgProperties table).

These are cluster-level properties: all servers in the cluster share the same values for the cluster shared properties. Most of the security properties are cluster shared properties.

For a listing of these properties, select a cluster in the SMC and look at the properties listed in the panels. All cluster shared properties are configurable in the SMC.

How properties are set when a cluster is created or dissolved

When a cluster is created, any server in the cluster retains its server local and server stored properties from when it was originally configured as a standalone server. You can choose to retain these settings or change them at the server level.

For more information    For more information, see Setting server-level properties in a cluster.

However, a server included in a cluster does not retain the values for properties that are defined as cluster shared properties. Because individual servers in the cluster may not have the same cluster shared property values as they did when they were standalone servers, you must reconfigure the cluster shared properties at the cluster level.

Accordingly, when you create a new cluster, all the cluster shared values are set to the default values. You can keep these settings or change them at the cluster level. Once you change a cluster-level property, the new value is applied to all the servers in the cluster. When a cluster is dissolved, all servers in the cluster become standalone servers.

For more information    For more information, see Setting cluster-level properties next.

 
Top of section

Setting cluster-level properties

As mentioned above, when you are working in a clustered environment, some properties exist at the cluster level and some exist at the server level. If you select the cluster at the left-hand side of the SMC, you see the cluster-level properties. Most cluster properties are the same as those set for standalone servers. The following table provides cross-references to the documentation for the cluster-level properties.

Configuration properties

The cluster-level configuration properties are grouped in several SMC panels:

Panel

Description

General

RMI/ORB and SSL for remote object properties for the cluster.

For more information    For more information, see Specifying ORB settings.

Advanced

Performance, Cache Manager, and Load Manager properties:

Managers

Cache Manager, Load Manager, and Dispatcher properties. These are the properties you specified when you created the cluster. You can edit these properties after creating a cluster.

For more information    For information about these properties, see Creating the cluster.

For more information    For information about changing these properties after you have created the cluster, see Changing the clustering components' properties.

Servers

Lets you add servers to and remove servers from the existing cluster and change a server's load weight.

Security properties

The cluster-level security properties are grouped in the following SMC panels:

Panel

Description

General

Specify general security settings for the cluster.

For more information    For more information, see Setting Up Security.

Advanced

Specify client certificate levels and trusted clients list for the cluster.

For more information    For more information, see Setting Up Security.

Permissions

Read cluster configuration, modify cluster configuration, and set permissions for the cluster.

For more information    For more information, see Setting Up Security.

Users & Groups

Manage Silver Security and certificate users and groups for the cluster.

For more information    For more information, see Setting Up Users and Groups.

Certificates

View certificates that have been installed on the server and recognized Certificate Authorities (CAs).

For more information    For more information, see Setting Up Security.

Security Providers

Configure external security providers, including Windows directory services, LDAP, NIS+, and certificate issuers.

For more information    For more information, see Setting Up Security.

Monitor properties

The cluster-level monitor properties are a subset of the properties for standalone servers.

For more information    For more information about the monitor properties, see Monitoring server activity.

 
Top of section

Setting server-level properties in a cluster

When a standalone server is added to a cluster, many of its server-level properties become cluster-level properties.

If you select a server in a cluster at the left-hand side of the SMC, you see the properties for a server in a cluster. Most properties for servers in a cluster are the same as those set for standalone servers.

Configuration properties

This section provides cross-references to the documentation for the properties of servers in clusters. The configuration properties of a server in a cluster are grouped in the following SMC panels.

Panel

Description

General

General settings for the server.

For more information    For more information about the general properties, see Running the Server.

Advanced

Debug, Performance, Cache, Transactions, Cache Manager, and Load Manager properties.

Pools

Connector and JDBC connection pools.

For more information    For more information, see Configuring connection pools.

Connections

Client connection properties.

For more information    For more information, see Managing client connections.

Databases

Information about the deployment databases in the cluster (databases known to the cluster's SilverMaster). You can modify the minimum and maximum number of database connections for each server in the cluster.

For more information    For more information, see Configuring deployment databases.

Security properties

The accelerator settings for a server in a cluster are administered at the server level.

For more information    For more information about accelerator settings, see Using Cryptographic Hardware Integration.

Monitor properties

The monitor properties in a cluster are the same as the properties for standalone servers.

For more information    For more information about the monitor properties, see Monitoring server activity.

 
Top of page

Specifying a server's relative load weight

You can specify the relative processing weight for each server in a cluster. The Load Manager uses that information to generate a distribution map that determines the processing load for each server at runtime.

For more information    For a description of how weighting works, see Distribution mapping.

Procedure To specify a server's relative load weight:

  1. Select the cluster in the SMC.

  2. Select the Configuration icon from the toolbar, then select Servers.

  3. Select a server from the list and specify an integer in the Server Load Weight field.

  4. Click Update.

  5. Select the other servers and specify appropriate relative values.

  6. To activate the new server weight settings, click the Restart (server) button for the servers.

 
Top of page

Managing component failover

The SMC provides access to properties that control how the Cache Manager and Load Manager respond in the event of a system failure. Normally you do not need to edit these properties.

The Cache Manager and Load Manager properties exist at both the cluster and server levels. You can set the properties at the cluster level, which sets the values for each of the servers in the cluster. You can then override the values for any of the servers in the cluster. But note that if you later change any of the properties at the cluster level, it will override settings you made at the server level.

 
Top of section

Cache Manager properties

The Cache Manager properties determine how the Cache Manager will respond when its connection with a server fails.

Procedure To set Cache Manager properties:

  1. Start the SMC.

  2. Select the cluster to set properties at the cluster level, or select a server within a cluster to set properties at the server level.

  3. Select the Configuration icon from the toolbar.

  4. Select Advanced.

  5. Select the Cache Manager tab:

    cacheManagerTab

  6. Reset any of the properties:

    Property

    Description

    Start sleep interval

    The number of seconds the Cache Manager will delay before starting a series of attempts to reconnect with the server.

    Reconnect sleep interval

    The number of seconds before a new series of reconnection attempts.

    Start try count

    The number of times to start a series of reconnection attempts before generating an error.

    Reconnect try count

    The number of times to attempt to reconnect in a series.

  7. Click Update

  8. To activate the new properties, click the Restart (server) button.

 
Top of section

Load Manager properties

The Load Manager properties determine how the Load Manager will respond if its communication with a server fails.

Procedure To set Load Manager properties:

  1. Start the SMC.

  2. Select the cluster to set properties at the cluster level, or select a server within a cluster to set properties at the server level.

  3. Select the Configuration icon from the toolbar.

  4. Select Advanced.

  5. Select the Load Manager tab:

    loadManagerTab

  6. Reset any of the properties:

    Property

    Description

    Connect try interval

    The number of seconds to delay after each retry series

    Connect sleep interval

    The number of seconds to delay after each connection retry in a series

    Connect try count

    The number of times the Load Manager should begin a series of connection attempts with the server

    Connect sleep count

    The number of connection retries in a series

  7. Click Update.

  8. To activate the new properties, click the Restart (server) button.

 
Top of page

Dissolving a cluster

You can dissolve a cluster, which does the following:

Procedure To dissolve a cluster:

  1. Click Dissolve (cluster) in the SMC toolbar.

  2. Click OK.

 
Top of page

Changing the clustering components' properties

You can change which hosts are running the clustering components: Load Manager, Dispatcher, and Cache Manager. You can also change which ports the clustering components will use.

 
Top of section

Changing hosts

After creating a cluster, you may decide to run the clustering components on different hosts.

Procedure To change the hosts:

  1. In the SMC, select the cluster.

  2. Select the Configuration icon from the toolbar.

  3. Select Managers.

  4. Update the hosts as needed for the clustering components.

  5. Click Update.

  6. Stop and restart each server and each clustering component in the cluster.

 
Top of section

Changing ports

By default, all clustering components use port 54891 for their RMI port. In addition, the Dispatcher uses ports 54892, 54893, and 54894 for its HTTP, RSA, and DSA ports respectively. Normally, you don't change these port values.

But if you need to, you can change ports for the Cache Manager, Load Manager, and Dispatcher after you create the cluster.

NOTE:   All clustering components must use the same RMI port.

Procedure To change Cache Manager, Load Manager, and Dispatcher ports:

  1. In the SMC, select the cluster.

  2. Select the Configuration icon from the toolbar.

  3. Select Managers.

  4. Update the port specifications.

  5. Click Update.

  6. Stop and restart each server and each clustering component in the cluster.

    If you changed the port for the Cache Manager, you must start it with the following command line:

      SilverCacheMgr -p portNumber
    

Changing the administration port of a server in a cluster   If the server is in a cluster, and you need to change the administration port, you must:

  1. Dissolve the cluster.

  2. Change the administration port.

  3. Rebuild the cluster.

 
Top of page

Installing certificates in a cluster

For a cluster to listen and serve on the HTTPS port, you must install a server certificate in each server in the cluster. If you are using the application server's software Dispatcher (SilverDispatcher), you also need to install a certificate for it.

For more information    For more information about certificates and HTTPS/SSL, see Using certificates.

 
Top of section

About the server certificates

If you are using the application server's software Dispatcher for the cluster, each application server must have a server certificate with the DNS name matching the server's host name.

If you are using a third-party hardware dispatcher (such as Cisco LocalDirector) that does URL masking—that is, masks all URLs such that the browser hitting any of the servers in the cluster sees the dispatcher's host name—then every application server must have a server certificate with the DNS name matching the dispatcher's host name.

For example, say you have a cluster with:

If you are using the application server's Dispatcher, you need to create four server certificates: one for the Dispatcher's machine (with the DNS name www.myhost.com) and one for each of the servers (with DNS names server1.myhost.com, server2.myhost.com, and server3.myhost.com).

If you are using a third-party URL-masking dispatcher, you need to create only one server certificate (with the DNS name www.myhost.com) and upload it to each of the servers.

 
Top of section

How to do it

The following procedures describe what to do.

Procedure To generate server certificates:

Procedure To install certificates if you are using the software Dispatcher:

  1. Use the SMC to install the certificates on the server.

    For more information    For more information, see Creating and installing server certificates using the SMC.

  2. After the certificate has been installed, restart the server.

    The server is now listening on its HTTPS port (default: 443 for RSA and DSA certificates).

  3. Repeat Step 1 and Step 2 for each server in the cluster.

  4. To install the certificate on the Dispatcher, start the Dispatcher using the -c startup option. This puts the Dispatcher in the mode in which it can upload a certificate.

    For more information    For more information, see Starting the clustering components.

  5. Invoke AgDigitalIDStep2 to install the certificate on the machine containing the Dispatcher.

    For more information    For more information, see Using AgDigitalIDStep2.

  6. When prompted, specify the machine containing the application server's Dispatcher and specify the HTTP port that the Dispatcher is listening on (default: 54892).

  7. After the certificate has been installed, stop the Dispatcher and then restart it as normal (without the -c startup option).

    The Dispatcher is now listening on its HTTPS port (default: 54893 for RSA certificates and 54894 for DSA certificates).

Procedure To install certificates if you are using a third-party dispatcher:

  1. Invoke AgDigitalIDStep2 to install on a server the certificate that references the dispatcher's DNS name.

    For more information    For more information, see Using AgDigitalIDStep2.

  2. When prompted, specify the server and the HTTP port that the server is listening on (default: 83 in NetWare, 80 in NT, 8080 in UNIX).

  3. After installing the certificate, stop the server.

  4. Add the following line to the server's httpd.props file (in the server's \Resources directory):

      http-server.com.sssw.srv.https.cert.hostname=DispatcherName
    

    where DispatcherName is the DNS name of the dispatcher.

    For more information    For more information about httpd.props, see Appendix A, "The httpd.props File".

  5. Restart the server.

    The server is now listening on its HTTPS port (default: 443 for RSA and DSA certificates).

  6. Repeat the preceding steps for each server in the cluster.



Copyright © 2004 Novell, Inc. All rights reserved. Copyright © 1997, 1998, 1999, 2000, 2001, 2002, 2003 SilverStream Software, LLC. All rights reserved.  more ...