ibm-information-center/dist/eclipse/plugins/i5OS.ic.cl_5.4.0.1/crtcrg.htm

910 lines
40 KiB
HTML
Raw Normal View History

2024-04-02 14:02:31 +00:00
<!doctype html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head><META http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Create Cluster Resource Group (CRTCRG)</title>
<link rel="stylesheet" type="text/css" href="../rzahg/ic.css">
</head>
<body bgcolor="white">
<script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
<a name="CRTCRG.Top_Of_Page"></a>
<h2>Create Cluster Resource Group (CRTCRG)</h2>
<table width="100%">
<tr>
<td valign="top" align="left"><b>Where allowed to run: </b>All environments (*ALL)<br>
<b>Threadsafe: </b>No
</td>
<td valign="top" align="right">
<a href="#CRTCRG.PARAMETERS.TABLE">Parameters</a><br>
<a href="#CRTCRG.COMMAND.EXAMPLES">Examples</a><br>
<a href="#CRTCRG.ERROR.MESSAGES">Error messages</a></td>
</tr>
</table>
<div> <a name="CRTCRG"></a>
<p>The Create Cluster Resource Group (CRTCRG) command creates a cluster resource group object. The cluster resource group serves as the control object for a collection of resilient resources. It identifies a recovery domain, which is a set of nodes in the cluster that will play a role in the recovery. Additional characteristics for the cluster resource group, such as the exit program that will be called to perform resource specific processing. The cluster resource group exit program will be called with an action code of Initialize after each group has been created on each node in the recovery domain, if an exit program is specified for the cluster resource group. Successful completion of this command results in a new job started in the QSYSWRK subsystem. This job has the same name as the name of the cluster resource group being created.
</p>
<p>To change attributes of the cluster resource group use the Change Cluster Resource Group (CHGCRG) command.
</p>
<p>This command will do the following:
</p>
<ul>
<li>Create the cluster resource group object on all nodes in the recovery domain. The cluster resource group may be accessed by a cluster resource group command running on any node in the cluster.
</li>
<li>Provide users a single system image of the cluster resource group object. That is, any changes made to the cluster resource group will be made on all nodes in the recovery domain.
</li>
<li>Call the cluster resource group exit program with an action code of Initialize after the cluster resource group has been created on each node in the recovery domain, if an exit program is specified for the cluster resource group. The cluster resource group status will be set to Initialize Pending. If the exit program fails, the cluster resource group object is deleted from all nodes in the recovery domain.
</li>
<li>If the exit program is successful, the cluster resource group status is set to Inactive. To change the cluster resource group status to Active, use the Start Cluster Resource Group (STRCRG) command.
</li>
<li>After the exit program is called, this command verifies the queue (CRGMSGUSRQ parameter), used by the Distribute Information (QcstDistributeInformation) API, exists if one was specified. The distributed information user queue must be created with pointer capable messages disabled. This means that pointers are not allowed within the message content.
</li>
<li>After the exit program is called, this command verifies the failover message queue and library on all recovery domain nodes if one was specified.
</li>
</ul>
<p><b>Restrictions:</b>
</p>
<ol>
<li>You must have input/output system configuration (*IOSYSCFG) special authority to run this command.
</li>
<li>This command cannot be called from a cluster resource group exit program.
</li>
<li>The cluster resource group name cannot begin with QCST.
</li>
<li>Cluster Resource Services must be active on the node processing the request.
</li>
<li>All nodes in the recovery domain must be in the cluster with a status of Active.
</li>
<li>The cluster resource group exit program must exist on all nodes in the recovery domain if an exit program is specified. It must have the same name and be in the same library on each node.
</li>
<li>Each node can be specified only once in the recovery domain.
</li>
<li>The cluster resource group name cannot be used by an existing cluster resource group on any node in the cluster.
</li>
<li>For application cluster resource groups, the following restrictions apply to the specified takeover IP address:
<ol>
<li>If Cluster Resource Services configures the takeover IP address, all nodes in the recovery domain must be in the same subnet (network address) and the subnet defined on all nodes in the recovery domain.
</li>
<li>The takeover IP address must be unique. If Cluster Resource Services is responsible for configuring the takeover IP address, it will be added to each node in the recovery domain.
</li>
<li>The takeover IP address must not be active on any node in the recovery domain.
</li>
</ol>
</li>
<li>For device cluster resource groups:
<ol>
<li>Only auxiliary storage pool devices are supported.
</li>
<li>All nodes in the recovery domain must belong to the same device domain.
</li>
<li>The configuration objects, such as device descriptions, for the devices specified for the cluster resource group must exist on all nodes in the recovery domain and the resource name specified in a configuration object must be the same on all nodes in the recovery domain.
</li>
<li>If a site name is specified, then a data port IP address must be specified. The reverse applies too, if a data port IP address is specified, then a site name must be specified.
</li>
<li>If a data base is specified in a configuration object, it must be the same on all nodes in the recovery domain.
</li>
<li>The server takeover IP address must be unique. It can only be associated with a primary auxiliary storage pool.
</li>
<li>The same configuration object cannot be specified for more than one cluster resource group.
</li>
<li>Devices attached to the same input/output processor (IOP) or high-speed link input/output (I/O) bridge can be specified for only one cluster resource group.
</li>
<li>If devices attached to different IOPs or high-speed link I/O bridges are grouped such as for an auxiliary storage pool, all devices for the affected IOPs or high-speed link I/O bridges must be specified in the same cluster resource group.
</li>
<li>The IOP or high-speed link I/O bridge controlling the devices specified in a cluster resource group must be accessible by all nodes in the cluster resource group's recovery domain. This is verified if sufficient hardware configuration has been performed so that all nodes are aware of the new hardware. If hardware configuration is incomplete, this is verified when the Start Cluster Resource Group (STRCRG) command is called.
</li>
<li>If configuration objects are specified and the primary node does not currently own the devices, this command fails with an error message.
</li>
<li>A cluster resource group may be created with no device entries. Device entries must be added using the Add Cluster Resource Group Device Entry (ADDCRGDEVE) command before the cluster resource group can be started.
</li>
<li>If the cluster resource group contains any members of an auxiliary storage pool group, it must contain <b>all</b> members before the cluster resource group can be started. All members do not have to be specifed when the cluster resource group is created. Additional members can be added with the Add Cluster Resource Group Device Entry (ADDCRGDEVE) Command. If the auxiliary storage pool group exists and clustering can determine the members of the group, a warning message is sent if any members were not specified.
</li>
<li>If the configuration objects specified are for remote independent auxiliary storage pool mirroring, each node in the recovery domain may have a site name and up to 4 data port IP addresses. There can be at most 2 different site names amongst the nodes. If a site name is specified, at least one data port IP address must be specified too. The reverse is also true. If one or more data port IP address is specified, a site name must be specified too.
</li>
<li>If CPFBB5F message is received, make sure the cluster version is 4 and not 3 when specifying the site name field.
</li>
</ol>
</li>
</ol>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCRG.Top_Of_Page">Top</a></td></tr>
</table>
<hr size="2" width="100%">
<div>
<h3><a name="CRTCRG.PARAMETERS.TABLE">Parameters</a></h3>
<table border="1" cellpadding="4" cellspacing="0">
<!-- col1="10" col2="15" col3="30" col4="10" -->
<tr>
<th bgcolor="aqua" valign="bottom" align="left">Keyword</th>
<th bgcolor="aqua" valign="bottom" align="left">Description</th>
<th bgcolor="aqua" valign="bottom" align="left">Choices</th>
<th bgcolor="aqua" valign="bottom" align="left">Notes</th>
</tr>
<tr>
<td valign="top"><a href="#CRTCRG.CLUSTER"><b>CLUSTER</b></a></td>
<td valign="top">Cluster</td>
<td valign="top"><i>Name</i></td>
<td valign="top">Required, Positional 1</td>
</tr>
<tr>
<td valign="top"><a href="#CRTCRG.CRG"><b>CRG</b></a></td>
<td valign="top">Cluster resource group</td>
<td valign="top"><i>Name</i></td>
<td valign="top">Required, Positional 2</td>
</tr>
<tr>
<td valign="top"><a href="#CRTCRG.CRGTYPE"><b>CRGTYPE</b></a></td>
<td valign="top">Cluster resource group type</td>
<td valign="top">*DATA, *APP, *DEV, *PEER</td>
<td valign="top">Required, Positional 3</td>
</tr>
<tr>
<td valign="top" rowspan="3"><a href="#CRTCRG.EXITPGM"><b>EXITPGM</b></a></td>
<td valign="top">CRG exit program</td>
<td valign="top">Single values: *NONE<br>Other values: <i>Qualified object name</i></td>
<td valign="top" rowspan="3">Required, Positional 4</td>
</tr>
<tr>
<td valign="top">Qualifier 1: CRG exit program</td>
<td valign="top"><i>Name</i></td>
</tr><tr>
<td valign="top">Qualifier 2: Library</td>
<td valign="top"><i>Name</i></td>
</tr><tr>
<td valign="top"><a href="#CRTCRG.USRPRF"><b>USRPRF</b></a></td>
<td valign="top">User profile</td>
<td valign="top"><i>Simple name</i>, *NONE</td>
<td valign="top">Required, Positional 5</td>
</tr>
<tr>
<td valign="top" rowspan="6"><a href="#CRTCRG.RCYDMN"><b>RCYDMN</b></a></td>
<td valign="top">Recovery domain node list</td>
<td valign="top">Values (up to 128 repetitions): <i>Element list</i></td>
<td valign="top" rowspan="6">Required, Positional 6</td>
</tr>
<tr>
<td valign="top">Element 1: Node identifier</td>
<td valign="top">
<i>Name</i></td>
</tr>
<tr>
<td valign="top">Element 2: Node role</td>
<td valign="top">
<b><u>*CRGTYPE</u></b>, *PRIMARY, *BACKUP, *REPLICATE, *PEER</td>
</tr>
<tr>
<td valign="top">Element 3: Backup sequence number</td>
<td valign="top">
<i>Integer</i>, <b><u>*LAST</u></b></td>
</tr>
<tr>
<td valign="top">Element 4: Site name</td>
<td valign="top">
<i>Name</i>, <b><u>*NONE</u></b></td>
</tr>
<tr>
<td valign="top">Element 5: Data port IP address</td>
<td valign="top">
Single values: <b><u>*NONE</u></b><br>Other values (up to 4 repetitions): <i>Character value</i></td>
</tr>
<tr>
<td valign="top"><a href="#CRTCRG.TKVINTNETA"><b>TKVINTNETA</b></a></td>
<td valign="top">Takeover IP address</td>
<td valign="top"><i>Character value</i></td>
<td valign="top">Optional, Positional 7</td>
</tr>
<tr>
<td valign="top"><a href="#CRTCRG.EXITPGMFMT"><b>EXITPGMFMT</b></a></td>
<td valign="top">Exit program format name</td>
<td valign="top"><b><u>EXTP0100</u></b>, EXTP0200</td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top"><a href="#CRTCRG.EXITPGMDTA"><b>EXITPGMDTA</b></a></td>
<td valign="top">Exit program data</td>
<td valign="top"><i>Character value</i>, <b><u>*NONE</u></b></td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top" rowspan="3"><a href="#CRTCRG.CRGMSGUSRQ"><b>CRGMSGUSRQ</b></a></td>
<td valign="top">Distribute info user queue</td>
<td valign="top">Single values: <b><u>*NONE</u></b><br>Other values: <i>Qualified object name</i></td>
<td valign="top" rowspan="3">Optional</td>
</tr>
<tr>
<td valign="top">Qualifier 1: Distribute info user queue</td>
<td valign="top"><i>Name</i></td>
</tr><tr>
<td valign="top">Qualifier 2: Library</td>
<td valign="top"><i>Name</i></td>
</tr><tr>
<td valign="top" rowspan="3"><a href="#CRTCRG.CFGINTNETA"><b>CFGINTNETA</b></a></td>
<td valign="top">Configure takeover IP address</td>
<td valign="top">Single values: <b><u>*CRS</u></b><br>Other values: <i>Element list</i></td>
<td valign="top" rowspan="3">Optional</td>
</tr>
<tr>
<td valign="top">Element 1: Responsibilities</td>
<td valign="top">
<b><u>*USR</u></b></td>
</tr>
<tr>
<td valign="top">Element 2: Allow active IP address</td>
<td valign="top">
<b><u>*NO</u></b>, *YES</td>
</tr>
<tr>
<td valign="top"><a href="#CRTCRG.JOB"><b>JOB</b></a></td>
<td valign="top">Job</td>
<td valign="top"><i>Name</i>, <b><u>*JOBD</u></b></td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top"><a href="#CRTCRG.ALWRESTART"><b>ALWRESTART</b></a></td>
<td valign="top">Allow application restarts</td>
<td valign="top"><b><u>*NO</u></b>, *YES</td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top"><a href="#CRTCRG.NBRRESTART"><b>NBRRESTART</b></a></td>
<td valign="top">Number of application restarts</td>
<td valign="top">0-3, <b><u>*NONE</u></b></td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top" rowspan="5"><a href="#CRTCRG.CFGOBJ"><b>CFGOBJ</b></a></td>
<td valign="top">Configuration object list</td>
<td valign="top">Values (up to 256 repetitions): <i>Element list</i></td>
<td valign="top" rowspan="5">Optional</td>
</tr>
<tr>
<td valign="top">Element 1: Configuration object</td>
<td valign="top">
<i>Name</i>, <b><u>*NONE</u></b></td>
</tr>
<tr>
<td valign="top">Element 2: Configuration object type</td>
<td valign="top">
<b><u>*DEVD</u></b></td>
</tr>
<tr>
<td valign="top">Element 3: Configuration object online</td>
<td valign="top">
<b><u>*OFFLINE</u></b>, *ONLINE, *PRIMARY</td>
</tr>
<tr>
<td valign="top">Element 4: Server takeover IP address</td>
<td valign="top">
<i>Character value</i>, <b><u>*NONE</u></b></td>
</tr>
<tr>
<td valign="top"><a href="#CRTCRG.TEXT"><b>TEXT</b></a></td>
<td valign="top">Text 'description'</td>
<td valign="top"><i>Character value</i>, <b><u>*BLANK</u></b></td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top" rowspan="3"><a href="#CRTCRG.FLVMSGQ"><b>FLVMSGQ</b></a></td>
<td valign="top">Failover message queue</td>
<td valign="top">Single values: <b><u>*NONE</u></b><br>Other values: <i>Qualified object name</i></td>
<td valign="top" rowspan="3">Optional</td>
</tr>
<tr>
<td valign="top">Qualifier 1: Failover message queue</td>
<td valign="top"><i>Name</i></td>
</tr><tr>
<td valign="top">Qualifier 2: Library</td>
<td valign="top"><i>Name</i></td>
</tr><tr>
<td valign="top"><a href="#CRTCRG.FLVWAITTIM"><b>FLVWAITTIM</b></a></td>
<td valign="top">Failover wait time</td>
<td valign="top"><i>Integer</i>, <b><u>*NOWAIT</u></b>, *NOMAX</td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top"><a href="#CRTCRG.FLVDFTACN"><b>FLVDFTACN</b></a></td>
<td valign="top">Failover default action</td>
<td valign="top"><b><u>*PROCEED</u></b>, *CANCEL</td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top"><a href="#CRTCRG.APPID"><b>APPID</b></a></td>
<td valign="top">Application identifier</td>
<td valign="top"><i>Character value</i>, <b><u>*NONE</u></b></td>
<td valign="top">Optional</td>
</tr>
</table>
<table width="100%">
<tr><td align="right"><a href="#CRTCRG.Top_Of_Page">Top</a></td></tr>
</table>
</div>
<div> <a name="CRTCRG.CLUSTER"></a>
<h3>Cluster (CLUSTER)</h3>
<p>Specifies the cluster containing the cluster resource group which will be created.
</p>
<p>This is a required parameter.
</p>
<dl>
<dt><b><i>name</i></b></dt>
<dd>Specify the name of the cluster.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCRG.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCRG.CRG"></a>
<h3>Cluster resource group (CRG)</h3>
<p>Specifies the cluster resource group to be created.
</p>
<p>This is a required parameter.
</p>
<dl>
<dt><b><i>name</i></b></dt>
<dd>Specify the name of the cluster resource group.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCRG.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCRG.CRGTYPE"></a>
<h3>Cluster resource group type (CRGTYPE)</h3>
<p>Specifies the type of the cluster resource group to be created.
</p>
<p>This is a required parameter.
</p>
<dl>
<dt><b>*DATA</b></dt>
<dd>The cluster resource group is a data cluster resource group.
</dd>
<dt><b>*APP</b></dt>
<dd>The cluster resource group is an application cluster resource group.
</dd>
<dt><b>*DEV</b></dt>
<dd>The cluster resouce group is a device cluster resource group.
</dd>
<dt><b>*PEER</b></dt>
<dd>The cluster resouce group is a peer cluster resource group.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCRG.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCRG.EXITPGM"></a>
<h3>CRG exit program (EXITPGM)</h3>
<p>Specifies the exit program that is used to handle action codes that are passed to it due to operations on the cluster resource group. The exit program cannot be in an independent auxiliary storage pool. The action codes are described in the Cluster Resource Group Exit Program section in the API manual.
</p>
<p>This is a required parameter.
</p>
<p><b>Single values</b>
</p>
<dl>
<dt><b>*NONE</b></dt>
<dd>The cluster resource group does not have an exit program. This is valid only for a device cluster resource group.
</dd>
</dl>
<p><b>Qualifier 1: CRG exit program</b>
</p>
<dl>
<dt><b><i>name</i></b></dt>
<dd>Specify the name of the exit program.
</dd>
</dl>
<p><b>Qualifier 2: Library</b>
</p>
<dl>
<dt><b><i>name</i></b></dt>
<dd>Specify the name of the library where the exit program exists. QTEMP is not a valid library name.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCRG.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCRG.USRPRF"></a>
<h3>User profile (USRPRF)</h3>
<p>Specifies the user profile under which the exit program should be run. The user profile must exist on all nodes in the recovery domain.
</p>
<p>The value for this parameter must be *NONE if no exit program is specified.
</p>
<p>The following user profiles are not valid:
</p>
<ul>
<li>QDBSHR
</li>
<li>QDOC
</li>
<li>QDTFOWN
</li>
<li>QRJE
</li>
<li>QLPAUTO
</li>
<li>QLPINSTALL
</li>
<li>QSECOFR
</li>
<li>QSPL
</li>
<li>QSYS
</li>
<li>QTSTRQS
</li>
</ul>
<p>This is a required parameter.
</p>
<dl>
<dt><b>*NONE</b></dt>
<dd>There is no exit program so no user profile is needed.
</dd>
<dt><b><i>simple-name</i></b></dt>
<dd>Specify the name of the user profile to use for running the exit program.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCRG.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCRG.RCYDMN"></a>
<h3>Recovery domain node list (RCYDMN)</h3>
<p>Specifies the list of nodes that compose the recovery domain. A role must be defined for each node in the recovery domain. Nodes in the recovery domain must be unique.
</p>
<p>You can specify up to 128 nodes for the recovery domain.
</p>
<p>This is a required parameter.
</p>
<p><b>Element 1: Node identifier</b>
</p>
<p>Specify an active cluster node that will participate in the recovery of resilient resources represented by this cluster resource group.
</p>
<dl>
<dt><b><i>name</i></b></dt>
<dd>Specify the name for the system that uniquely identifies a node.
</dd>
</dl>
<p><b>Element 2: Node role</b>
</p>
<p>Specify the role of the node in the recovery domain of the cluster resource group. For primary-backup model cluster resource groups a node can have one of three roles: primary, backup, or replicate. Only one node can be designated as the primary. For peer model cluster resource groups a node can have one of two roles: peer or replicate. Any number of nodes can be designated as a peer or replicate.
</p>
<dl>
<dt><b><u>*CRGTYPE</u></b></dt>
<dd>The node role will be set based on the type of the cluster resource group. If the type of cluster resource group is *PEER the default for the node role will be *PEER. For any other type of cluster resource group the default will be *BACKUP.
</dd>
<dt><b>*PRIMARY</b></dt>
<dd>The node will be set as the primary node. One node in the recovery domain must have the role of *PRIMARY. This node can become an active access point for the cluster resources.
</dd>
<dt><b>*BACKUP</b></dt>
<dd>The node will be set as a backup node. The node can take over as the access point for the cluster resources.
</dd>
<dt><b>*REPLICATE</b></dt>
<dd>The new node will be added as a replicate. Replicate nodes are not ordered and cannot become an access point unless its role is changed to the proper value for the cluster resource group type.
</dd>
<dt><b>*PEER</b></dt>
<dd>The new node will be added as a peer. Peer nodes are not ordered. This node can become an active access point for the cluster resources.
</dd>
</dl>
<p><b>Element 3: Backup sequence number</b>
</p>
<p>Specifies the backup order for a node with a role of *BACKUP. At the completion of the request the nodes with backup roles will be sequentially renumbered from the first backup to the last. The first backup will always be 1.
</p>
<dl>
<dt><b><u>*LAST</u></b></dt>
<dd>The node will be added as the last backup in the recovery domain. If *LAST is specified for more than one node, then the first node specified with *LAST will be the last backup node, second node specified will be the second to the last backup node, etc..
</dd>
<dt><b><i>integer</i></b></dt>
<dd>Specify the backup sequence number.
</dd>
</dl>
<p><b>Element 4: Site name</b>
</p>
<p>Specifies the site name of the recovery domain node. This is valid in a version 4 cluster and only for a device cluster resource group, specifically for geographic mirroring. A site contains a subset of recovery domain nodes in the same physical location. All nodes at a site have access to the same copy of the auxiliary storage pool. Only nodes with a site name need to have access to the devices.
</p>
<dl>
<dt><b>*NONE</b></dt>
<dd>The recovery domain node does not have a site name.
</dd>
<dt><b><i>name</i></b></dt>
<dd>Specify the site name for a recovery domain node.
</dd>
</dl>
<p><b>Element 5: Data port IP address</b>
</p>
<p>Specify the data port IP address for the recovery domain node. This is valid only in a cluster of version 4 or higher, for a device cluster resource group, specifically for geographic mirroring. The data port IP address is used to to send updates from a source node that owns the production copy of auxiliary storage pool to a target node that owns the mirror copy of the auxiliary storage pool. The user is responsible for configuring and starting/ending the data port IP address. The data port IP addess must already exist on the specified node. This must be represented in dotted decimal format.
</p>
<p><b>Single values</b>
</p>
<dl>
<dt><b><u>*NONE</u></b></dt>
<dd>The recovery domain node does not have a data port IP address.
</dd>
</dl>
<p><b>Other values (up to 4 repetitions)</b>
</p>
<dl>
<dt><b><i>character-value</i></b></dt>
<dd>Specify the data port IP address for the recovery domain node.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCRG.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCRG.TKVINTNETA"></a>
<h3>Takeover IP address (TKVINTNETA)</h3>
<p>Specifies the internet interface address that is to be associated with an application. This is the takeover IP address that will be switched between systems. The field must be represented in dotted decimal format.
</p>
<p>
<b>Note: </b>This parameter must be specified if *APP is specified for the <b>Cluster resource group type (CRGTYPE)</b> parameter.
</p>
<dl>
<dt><b><i>character-value</i></b></dt>
<dd>Specify the takeover IP address for the application cluster resource group.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCRG.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCRG.EXITPGMFMT"></a>
<h3>Exit program format name (EXITPGMFMT)</h3>
<p>Specifies the format which should be used for the information passed to the user when a CRG exit program is called.
</p>
<dl>
<dt><b><u>EXTP0100</u></b></dt>
<dd>Exit program information defined in EXTP0100 format will be passed to user.
</dd>
<dt><b>EXTP0200</b></dt>
<dd>Exit program information defined in EXTP0200 format will be passed to user. Additional information such as site name and data port IP address on each node are passed to the exit program. This format is not allowed for a peer cluster resource group.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCRG.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCRG.EXITPGMDTA"></a>
<h3>Exit program data (EXITPGMDTA)</h3>
<p>Specifies up to 256 bytes of data that is passed to the cluster resource group exit program when it is called. This parameter may contain any scalar data except pointers. For example, it can be used to provide state information. This data will be stored with the specified cluster resource group and copied to all nodes in the recovery domain. Pointers in this area will not resolve correctly on all nodes and should not be placed in the data.
</p>
<dl>
<dt><b><u>*NONE</u></b></dt>
<dd>There is no exit program data.
</dd>
<dt><b><i>character</i></b></dt>
<dd>Specify up to 256 bytes of data to be passed to the cluster resource group exit program.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCRG.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCRG.CRGMSGUSRQ"></a>
<h3>Distribute info user queue (CRGMSGUSRQ)</h3>
<p>Specifies the user queue to receive distributed information from the Distribute Information (QcstDistributeInformation) API. If the user would like to distribute cluster-wide information through this cluster resource group using the Distribute Information (QcstDistributeInformation) API, then this parameter must be set to a value other than *NONE. If this field is set, the specified user queue must exist on all nodes in the recovery domain after the exit program completes. The only way to change the value of this field once the cluster resource group has been created is to delete and recreate the cluster resource group.
</p>
<p><b>Single values</b>
</p>
<dl>
<dt><b><u>*NONE</u></b></dt>
<dd>The QcstDistributeInformation (QcstDistributeInformation) API will not be used to distribute information through this cluster resource group.
</dd>
</dl>
<p><b>Qualifier 1: Distribute info user queue</b>
</p>
<dl>
<dt><b><i>name</i></b></dt>
<dd>Specify the name of the user queue to receive the distributed information.
</dd>
</dl>
<p><b>Qualifier 2: Library</b>
</p>
<dl>
<dt><b><i>name</i></b></dt>
<dd>Specify the name of the library that contains the user queue to receive the distributed information. The library name cannot be QTEMP.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCRG.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCRG.CFGINTNETA"></a>
<h3>Configure takeover IP address (CFGINTNETA)</h3>
<p>Specifies who is responsible for configuring (adding and removing) the takeover IP address. This does not affect the starting and ending of the takeover IP address, Cluster Resource Services will perform this function.
</p>
<p><b>Single values</b>
</p>
<dl>
<dt><b><u>*CRS</u></b></dt>
<dd>Cluster Resource Services is responsible for configuring the takeover IP address. The takeover IP address must not exist on any of the nodes in the recovery domain prior to creating cluster resource group. The takeover IP address will be removed when the cluster resource group is deleted.
</dd>
</dl>
<p><b>Element 1: Responsibilities</b>
</p>
<dl>
<dt><b><u>*USR</u></b></dt>
<dd>User is responsible for configuring the takeover IP address. The takeover IP address must be added on all nodes in the recovery domain except replicates prior to starting the cluster resource group. For details on configuring a takeover IP address for an application cluster resource group that has recovery domain nodes in different subnets, go to Configuring under the Clustering topic in the iSeries Information Center. You can access the Information Center from the iSeries Information Center CD-ROM or see the iSeries Information Center at http://www.ibm.com/eserver/iseries/infocenter.
</dd>
</dl>
<p><b>Element 2: Allow active IP address</b>
</p>
<p>Specifies whether or not a takeover IP address can be active when starting an application cluster resource group.
</p>
<dl>
<dt><b><u>*NO</u></b></dt>
<dd>Do not allow the takeover IP address to already be active when starting the CRG.
</dd>
<dt><b>*YES</b></dt>
<dd>Allow the takeover IP address to already be active when starting the CRG.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCRG.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCRG.JOB"></a>
<h3>Job (JOB)</h3>
<p>Specifies the name given the batch job that is submitted by the cluster resource group. This job will call the cluster resource group exit program with the action code generated by the command being used. If this field is blank, the job name will be the value in the job description found in the specified user profile to run the exit program.
</p>
<dl>
<dt><b><u>*JOBD</u></b></dt>
<dd>The job name in the job description for the specified user profile will be used.
</dd>
<dt><b><i>name</i></b></dt>
<dd>Specify the name to be given to the batch job submitted for running the exit program.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCRG.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCRG.ALWRESTART"></a>
<h3>Allow application restarts (ALWRESTART)</h3>
<p>Specifies whether or not to restart an application if the cluster resource group exit program fails.
</p>
<dl>
<dt><b><u>*NO</u></b></dt>
<dd>Do not attempt to restart the application. The cluster resource group exit program is called with an action code of Failover.
</dd>
<dt><b>*YES</b></dt>
<dd>Attempt to restart the application on the same node. The cluster resource group exit program will be called with an action code of Restart. If the application cannot be restarted in the specified maximum number of attempts, the cluster resource group exit program will be called with an action code of Failover.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCRG.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCRG.NBRRESTART"></a>
<h3>Number of application restarts (NBRRESTART)</h3>
<p>Specifies the number of times a cluster resource group exit program can be called on a same node before failure occurs. Maximum number of restarts is 3. If the cluster resource group is currently active, any change does not take affect until failover occurs or the cluster resource group exit program job ends.
</p>
<dl>
<dt><b><u>*NONE</u></b></dt>
<dd>There should be no restart attempts before a failover is started.
</dd>
<dt><b><i>0-3</i></b></dt>
<dd>Specify the number of times that restart will be attempted before doing a failover.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCRG.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCRG.CFGOBJ"></a>
<h3>Configuration object list (CFGOBJ)</h3>
<p>Specifies detailed information about the resilient devices to be added to the cluster resource group.
</p>
<p>You can specify up to 256 devices for this parameter.
</p>
<p><b>Element 1: Configuration object</b>
</p>
<p>The name of the auxiliary storage pool device description object which can be switched between the nodes in the recovery domain. An auxiliary storage pool device description can be specified in only one cluster resource group.
</p>
<dl>
<dt><b><u>*NONE</u></b></dt>
<dd>There are no configuration objects defined for this cluster resource group.
</dd>
<dt><b><i>name</i></b></dt>
<dd>Specify the name of the configuration object.
</dd>
</dl>
<p><b>Element 2: Configuration object type</b>
</p>
<p>Specifies the type of configuration object specified with configuration object name.
</p>
<dl>
<dt><b><u>*DEVD</u></b></dt>
<dd>Configuration objects of type device description.
</dd>
</dl>
<p><b>Element 3: Configuration object online</b>
</p>
<p>Specifies what configuration action to take when the cluster resource group is switched over or failed over to a backup node. The configuration object can be varied on and the server takeover IP address can be started or leave the configuration object varied off and the server takeover IP address inactive when a device ownership is moved to another node. This attribute does <b>not</b> vary the device on or off when the cluster resource group is started or ended.
</p>
<dl>
<dt><b><u>*OFFLINE</u></b></dt>
<dd>Do not vary the configuration object on and do not start the server takeover IP address.
</dd>
<dt><b>*ONLINE</b></dt>
<dd>Vary the configuration object on and start the server takeover IP address.
</dd>
<dt><b>*PRIMARY</b></dt>
<dd>This is a secondary ASP. Vary on processing is determined by the corresponding primary ASP for this ASP group.
</dd>
</dl>
<p><b>Element 4: Server takeover IP address</b>
</p>
<p>Specifies a takeover IP address for servers associated with the relational database name in the device description for an auxiliary storage pool. This element is optional and can only be specified for a primary auxiliary storage pool. If specified, the addresss must be presented in dotted decimal format. The specified address must exist on all nodes in the recovery domain if the cluster resource group is active. If not specified, or for a secondary or UDFS auxiliary storage pool, the element must be set to *NONE.
</p>
<dl>
<dt><b><u>*NONE</u></b></dt>
<dd>There is no server takeover IP address associated with the relational database name in the device description for an auxiliary storage pool.
</dd>
<dt><b><i>character-value</i></b></dt>
<dd>Specify the takeover IP address for servers associated with the relational database name.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCRG.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCRG.TEXT"></a>
<h3>Text 'description' (TEXT)</h3>
<p>Specifies the text used to briefly describe the cluster resource group object.
</p>
<dl>
<dt><b><u>*BLANK</u></b></dt>
<dd>There is no text describing this cluster resource group.
</dd>
<dt><b><i>character-value </i></b></dt>
<dd>Specify up to 50 characters of text to describe the cluster resource group object.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCRG.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCRG.FLVMSGQ"></a>
<h3>Failover message queue (FLVMSGQ)</h3>
<p>Specifies the message queue to receive messages (CPABB01) dealing with failover. If the user would like to receive notice before a failover occurs, then this parameter must be set to a value other than *NONE. If this field is set, the specified message queue must exist on all nodes in the recovery domain after the exit program completes. The message queue cannot be in an independent auxiliary storage pool.
</p>
<p><b>Single values</b>
</p>
<dl>
<dt><b><u>*NONE</u></b></dt>
<dd>No messages will be sent when a failover occurs for this cluster resource group.
</dd>
</dl>
<p><b>Qualifier 1: Failover message queue</b>
</p>
<dl>
<dt><b><i>name</i></b></dt>
<dd>Specify the name of the failover message queue.
</dd>
</dl>
<p><b>Qualifier 2: Library</b>
</p>
<dl>
<dt><b><i>name</i></b></dt>
<dd>Specify the name of the library that contains the message queue to receive the failover message. The library name cannot be *CURLIB, QTEMP, or *LIBL.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCRG.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCRG.FLVWAITTIM"></a>
<h3>Failover wait time (FLVWAITTIM)</h3>
<p>Specifies the number of minutes to wait for a reply to the failover message that was enqueued on the failover message queue.
</p>
<dl>
<dt><b><u>*NOWAIT</u></b></dt>
<dd>Failover proceeds without user intervention. Behaves the same as V5R1M0 and prior releases.
</dd>
<dt><b>*NOMAX</b></dt>
<dd>Wait forever until a response is given to the failover inquiry message.
</dd>
<dt><b><i>integer</i></b></dt>
<dd>Specify the number of minutes to wait for a response to the failover inquiry message. If no response is received in the specified number of minutes, the failover default action field will be looked at to decide how to proceed.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCRG.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCRG.FLVDFTACN"></a>
<h3>Failover default action (FLVDFTACN )</h3>
<p>Specifies the default action to be taken if a response to the failover message is not received in the failover wait time limit.
</p>
<dl>
<dt><b><u>*PROCEED</u></b></dt>
<dd>Proceed with failover.
</dd>
<dt><b>*CANCEL</b></dt>
<dd>Do not attempt failover.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCRG.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCRG.APPID"></a>
<h3>Application identifier (APPID )</h3>
<p>Specifies the application identifier. This identifies the purpose of the cluster resource group.
</p>
<dl>
<dt><b><u>*NONE</u></b></dt>
<dd>No application identifier.
</dd>
<dt><b><i>name</i></b></dt>
<dd>Specify the name of the application that supplied the peer cluster resource group. The name can be up to 20 characters. The recommended format is 'vendor-id.name' where vendor-id is an identifier for the vendor creating the cluster resource group and name is the application name. For example, QIBM.ExamplePeer, indicates it is supplied by IBM for the ExamplePeer application. It is not recommended to use QIBM unless the cluster resource group is supplied by IBM.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCRG.Top_Of_Page">Top</a></td></tr>
</table>
<hr size="2" width="100%">
<div><h3><a name="CRTCRG.COMMAND.EXAMPLES">Examples</a> </h3>
<p><b>Example 1: Creating a CRG with a Two-Node Recovery Domain</b>
</p>
<p>
<pre>
CRTCRG CLUSTER(MYCLUSTER) CRG(MYCRG) CRGTYPE(*DEV)
EXITPGM(TEST/EXITPGM) USRPRF(USER1)
RCYDMN((NODE01 *PRIMARY) (NODE02 *BACKUP *LAST))
CFGOBJL(*NONE) TEXT('IASP for Application 17')
</pre>
</p>
<p>This command creates a device cluster resource group called MYCRG in the cluster called MYCLUSTER. The recovery domain consists of two nodes. NODE01 is the primary and NODE02 is the only backup. The list of configuration objects is not specified on this command; the Add CRG Device Entry (ADDCRGDEVE) command can be used to add this information.
</p>
<p><b>Example 2: Creating a CRG with a Single-Node Recovery Domain</b>
</p>
<p>
<pre>
CRTCRG CLUSTER(MYCLUSTER) CRG(MYCRG) CRGTYPE(*DEV)
EXITPGM(TEST/EXITPGM) USRPRF(USER1)
RCYDMN((NODE01 *PRIMARY *LAST MYSITE ('1.1.1.1'
'2.2.2.2')))
EXITPGMFMT(EXTP0200)
TEXT('IASP for Application 17')
</pre>
</p>
<p>This command creates a device cluster resource group called MYCRG in the cluster called MYCLUSTER. The recovery domain consists of one node, NODE01. The recovery domain sets NODE01 as the primary node in site MYSITE, with 2 data port IP addresses, 1.1.1.1 and 2.2.2.2.
</p>
<p><b>Example 3: Creating a Peer CRG with a Two-Node Recovery Domain</b>
</p>
<p>
<pre>
CRTCRG CLUSTER(MYCLUSTER) CRG(MYPEER) CRGTYPE(*PEER)
EXITPGM(TEST/EXITPGM) USRPRF(USER1)
RCYDMN((NODE01 *PEER) (NODE02 *PEER))
APPID(CompanyName.ExPeer)
TEXT('Peer for ExamplePeer Application')
</pre>
</p>
<p>This command creates a peer cluster resource group called MYPEER in the cluster called MYCLUSTER. The recovery domain consists of two nodes, NODE01 and NODE02. This cluster resource group is for an IBM shipped application called ExamplePeer.
</p>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCRG.Top_Of_Page">Top</a></td></tr>
</table>
<hr size="2" width="100%">
<div><h3><a name="CRTCRG.ERROR.MESSAGES">Error messages</a> </h3>
<p><b><u>*ESCAPE Messages</u></b>
</p>
<dl>
<dt><b>CPF1999</b></dt>
<dd>Errors occurred on command.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCRG.Top_Of_Page">Top</a></td></tr>
</table>
</body>
</html>