Sun Java System Message Queue 4.3 Administration Guide

Cluster Configuration Properties

Table 16–11 lists the configuration properties related to broker clusters.

Table 16–11 Broker Properties for Cluster Configuration

Property 

Type 

Default Value 

Description 

imq.cluster.url [Must have the same value for all brokers in a cluster] , [Can be used with imqcmd update bkr command]

String 

None 

URL of cluster configuration file, if any

Examples:

    http://webserver/imq/cluster.properties


    (for a file on a Web server)


     
    

    file:/net/mfsserver/imq/cluster.properties


    (for a file on a shared drive)


imq.cluster.ha

Boolean 

false

Is broker part of a high-availability cluster?  

imq.cluster.brokerlist, [Conventional clusters only]

String 

None 

List of broker addresses belonging to cluster 

The list consists of one or more addresses, separated by commas. Each address specifies the host name and Port Mapper port number of a broker in the cluster, in the form hostName:portNumber.

Example:

    host1:3000,host2:8000,ctrlhost



Note –

If set, this property is ignored (and a warning logged) for high-availability clusters; all brokers configured to use the cluster’s shared persistent store are automatically recognized as members of the cluster.


imq.cluster.hostname [Can be specified independently for each broker in a cluster]

String 

None 

Host name or IP address for cluster connection service

If specified, overrides imq.hostname (see Table 16–1) for the cluster connection service. This might be necessary, for instance, if the broker’s host computer has more than one interface card installed.

imq.cluster.port

Integer 

0

Port number for cluster connection service

A value of 0 specifies that the port number should be allocated dynamically by the Port Mapper. You might need to set a different value, for instance, to specify a static port number for connecting to the broker through a firewall.

imq.cluster.transport

String 

tcp

Network transport protocol for cluster connection service

For secure, encrypted message delivery between brokers, set this property to ssl.

imq.cluster.masterbroker,

String 

None 

Host name and Port Mapper port number of host on which cluster’s master broker (if any) is running 

The value has the form hostName:portNumber, where hostName is the host name of the master broker’s host and portNumber is its Port Mapper port number.

Example:

    ctrlhost:7676



Note –

enhanced clusters cannot have a master broker. If this property is set for a broker belonging to an enhanced cluster, the broker will log a warning message and ignore the property.


imq.cluster.clusterid [enhanced clusters only] ,

String 

None 

Cluster identifier

Must be a unique alphanumeric string of no more than n–13 characters, where n is the maximum table name length allowed by the database. No two running clusters may have the same cluster identifier.

This string is appended to the names of all database tables in the cluster’s shared persistent store.  


Note –

For brokers belonging to a high-availability cluster, this property is used in database table names in place of imq.brokerid (see Table 16–1).


imq.cluster.heartbeat.hostname

String 

None 

Host name or IP address for heartbeat service

If specified, overrides imq.hostname (see Table 16–1) for the heartbeat service.

imq.cluster.heartbeat.port

Integer 

7676

Port number for heartbeat service 

A value of 0 specifies that the port number should be allocated dynamically by the Port Mapper.

imq.cluster.heartbeat.interval

Integer 

Interval between heartbeats, in seconds 

imq.cluster.heartbeat.threshold

Integer 

Number of missed heartbeat intervals after which to invoke monitor service 

imq.cluster.monitor.interval

Integer 

30 

Interval, in seconds, at which to update monitor time stamp 


Note –

Larger values for this property will reduce the frequency of database access and thus improve overall system performance, but at the cost of slower detection and takeover in the event of broker failure.


imq.cluster.monitor.threshold

Integer 

Number of missed monitor intervals after which to initiate broker takeover