Chapter 2. Configuration Examples

To migrate from a 1.2 system to a 2.1.x system, you must examine your ha.conf file in order to determine how to define the equivalent parameters in the 2.1.x cluster database.

The following sections show upgrade examples for the following tasks:


Note: The examples in this paper use the cmgr command in prompting mode (-p) and reflect the FailSafe 2.1.5 release. For details about cmgr, see the IRIS FailSafe Version 2 Administrator's Guide.


Defining a Node

The following example shows node definition in the 1.2 ha.conf file. Parameters that you must use when configuring a 2.1. x system are indicated in bold:

Node node1
{
interface node1-fxd
{
name = rns0
ip-address = 54.3.252.6
netmask = 255.255.255.0
broadcast-addr = 54.3.252.6
}
heartbeat
{
hb-private-ipname = 192.0.2.3
hb-public-ipname = 54.3.252.6
hb-probe-time = 6
hb-timeout = 6
hb-lost-count = 4
}
reset-tty = /dev/ttyd2

sys-ctlr-type = MSC
}

In this configuration example, you will use the following values when you define the same node in 2.1.x:

  • Node name: node1

  • Primary network interface: node1

  • Type of system controller: msc

  • System control device name: /dev/ttyd2

  • Control networks: 192.0.2.3, 54.3.252.6

Use the following cmgr command to use these values to define a node in 2.1.x.


Note: There are additional parameters you must specify when you define this node.


cmgr> define node node1
Enter commands, you may enter "done" or "cancel" at any time to exit

Hostname[optional]? node1
Is this a FailSafe node <true|false> ? true
Is this a CXFS node <true|false> ? false
Operating System <IRIX|Linux32|Linux64|AIX|HPUX|Solaris|Windows> ? Irix
Node Function <server_admin|client_admin> ? server_admin
Node ID[optional] ? 
Partition ID[optional] ? (0)
Reset type <powerCycle> ? (powerCycle)
Do you wish to define system controller info[y/n]:y
Sysctrl Type <msc|mmsc|l2|l1>? (msc) 
Sysctrl Password [optional]? ( )
Sysctrl Status <enabled|disabled>? enabled
Sysctrl Owner? node2
Sysctrl Device? /dev/ttyd2
Sysctrl Owner Type <tty> [tty]? 
Number of Network interfaces [1]? 2
NIC 1 - IP Address? 192.0.2.3
NIC 1 - Heartbeat HB (use network for heartbeats) <true|false>? true
NIC 1 - (use network for control messages) <true|false>? true
NIC 1 - Priority <1,2,...>? 1
NIC 2 - IP Address? 192.0.2.4
NIC 2 - Heartbeat HB (use network for heartbeats) <true|false>? true
NIC 2 - (use network for control messages) <true|false>? true
NIC 2 - Priority <1,2,...>? 2

For information on setting monitoring values in 2.1. x, see “Setting HA Parameters”.

Defining the Cluster

Although 1.2 does not require the definition of clusters, you specify a parameter in the ha.conf file that 2.1.x uses in its cluster definition: the e-mail address to use to notify the system administrator when problems occur in the cluster.

The ha.conf file includes the following:

system configuration
{
mail-dest-addr = root@localhost
...
}

When you define a cluster in 2.1.x, you can use this as the e-mail address for problem notification.

There are other things you must provide in addition to this parameter when you define a 2.1.x cluster, such as the e-mail program to use for this notification and, of course, the nodes to include in the cluster.

Use the following cmgr command to define a cluster:

cmgr> define cluster apache-cluster
Enter commands, you may enter "done" or "cancel" at any time to exit

Is this a FailSafe cluster <true|false> ? true
Is this a CXFS cluster <true|false> ? false
Cluster Notify Cmd [optional] ? 
Cluster Notify Address [optional] ?
Cluster HA mode <normal|experimental> [optional] ? 

No nodes in cluster apache-cluster
Add nodes to or remove nodes from cluster clustername
Enter "done" when completed or "cancel" to abort
clustername ? add node node1
clustername ? add node node2
...
clustername ? done
Successfully defined cluster apache-cluster

Setting HA Parameters

The following example shows the sections of a 1.2 ha.conf file that are used to set monitoring and timeout values. Parameters that you must use when configuring a 2.1.x system are indicated in bold.

system-configuration
{
      pwrfail = true
      ...
}


Node node1
{
...
heartbeat
{
       hb-private-ipname = 192.0.2.3
       hb-public-ipname = 54.3.252.6
       hb-probe-time = 6
       hb-timeout = 6
       hb-lost-count = 4
}
...
}

As this ha.conf node-definition shows, in 1.2 you defined hb-probe-time, hb-timeout, and hb-lost-count parameters to set the values that determined how often to send monitoring messages and the length of time without a response that would indicate a failure. The 2.1. x release uses a different method for monitoring the nodes in a cluster than 1.2 uses, sending out continuous messages to the other nodes in a cluster and, in turn, maintaining continuous monitoring of the messages the other nodes are sending.

Because of the different monitoring methods between the two systems, there is no one-to-one correspondence between the values you set in the 1.2 ha.conf file and the timeout and heartbeat intervals you set in 2.1.x when you set FailSafe HA parameters. However, if you wish to maintain approximately the same time interval before which your system determines that failure has occurred, you can use the following formula to determine the value to which you should set your node timeout interval:

node_timeout = (probetime + timeout) * lostcount

This formula should account for the same total node-to-node communication time.

All 2.1.x timeouts are in milliseconds, and can be changed when 2.1.x is running. Timeouts can be specified for the cluster for a specific node in the cluster.

There is no long-timeout value in 2.1.x. The long-timeout value equivalent is set with the resource type start and stop timeouts. The resource type start, monitor, and stop timeouts can be changed using the GUI or cmgr.

Use the following cmgr command to modify the HA parameters for node1 in 2.1.x:


Note: Node-specific cluster database information is not replicated to other nodes in the cluster. Therefore, you must change node-specific information when running cmgr on that node. You must execute cmgr -p on node1 in the following example.


cmgr> modify ha_parameters on node node1 in cluster apache-cluster
Enter commands, when finished enter either "done" or "cancel"

Node Timeout (60000) ? 24000
Heartbeat Period (1000)? 6000
Node wait time (12000)? 
Tie Breaker Node? 
Run Powerfail (true)?
Successfully modified ha_parameters

Defining an XLV Volume Resource

The following example shows a volume definition in the 1.2 ha.conf file. Parameters that you must use when configuring the same volume as a volume resource in a 2.1.x system are indicated in bold:

volume apache-vol
{
   server-node = node1
   backup-node = node2
   devname = apache-vol
   devname-owner = root
   devname-group = sys
   devname-mode = 600
}

In this configuration example, you will use the following values when you define the same volume in 2.1.x:

  • Volume name: apache-vol

  • User name of device file owner: root

  • Group name of device file: sys

  • Device file permissions: 600

To create an XLV volume resource, use the following cmgr command and the default values for each argument:

cmgr> define resource apache-vol of resource_type volume in cluster apache-cluster
Enter commands, when finished enter either "done" or "cancel"

devname-group [optional] ? (sys)
devname-owner [optional] ? (root)
devname-mode [optional] ? (600)

No resource type dependencies

Add dependencies to or remove from resource apache-vol:
Enter "done" when completed or "cancel" to abort

apache-vol ? done

Defining an XFS Filesystem Resource

The following example shows an XFS filesystem definition in the 1.2 ha.conf file. Parameters that you must use when configuring the same filesystem as a filesystem resource in a 2.1.x system are indicated in bold:

filesystem apache-fs
{
   mount-point = /apache-fs
   mount-info
{
   fs-type = xfs
   volume-name = apache-vol
   mode = rw, noauto
}
}

In this configuration example, you will use the following values when you define the same filesystem in 2.1.x:

  • Resource name (mount point): /apache-vol

  • XLV volume: apache-vol

  • Mount options: rw, noauto

To create a filesystem resource, use the following cmgr command:

cmgr> define resource /apache-fs of resource_type filesystem in cluster apache-cluster
Enter commands, you may enter "done" or "cancel" at any time to exit

volume-name [optional] ? apache-vol
mount-options [optional] ? (rw) rw,noauto
kill-nfsds-before-umount [optional] ? (true) 
monitoring-level [optional] ? (2)

Resource type dependencies to add or remove:
Resource dependency type - 1: volume

Add dependencies to or remove from resource /lori-fs:
Enter "done" when completed or "cancel" to abort

/apache-fs ? done
Successfully defined resource /apache-fs

Defining an IP Address Resource

The following example shows an IP address definition in the 1.2 ha.conf file. Parameters that you must use when configuring the same IP address as a highly available resource in a 2.1. x system are indicated in bold:

interface-pair FDDI_1
{
   primary-interface = node-fxd
   secondary-interface = node2-fxd
   re-mac = false
   netmask = 0xffffff00
   broadcast-addr = 54.3.252.255

   ip-aliases = ( 54.3.252.7 )
}

In this configuration example, you will use the following values when you define the same IP Address in 2.1. x:

  • Resource name: 54.3.252.7

  • Broadcast address: 54.3.252.255

  • Network mask: 0xffffff00

To create an IP address resource, use the following cmgr commands:

cmgr> define resource 54.3.252.7 of resource_type IP_address in cluster apache-cluster
Enter commands, you may enter "done" or "cancel" at any time to exit

NetworkMask [optional] ? 0xffffff00
interfaces [optional] ? rns0
BroadcastAddress [optional] ? 54.3.252.255
No resource type dependencies

Add dependencies to or remove from resource 54.3.252.7:
Enter "done" when completed or "cancel" to abort

54.3.252.7 ? done
Successfully defined resource 54.3.252.7