The following XML is from the file /opt/novell/zenworks/orch/bin/ha/cluster_zos_agent.xml. It can be used as an example of how to configure the Orchestration Agent within a SLES 11 SP2 HAE cluster. You must replace the $CONFIG_ZOS_AGENT_CLUSTER_IP string with a valid cluster IP address (this is what the zos_agent_ha_resource_group.sh script does).
The resource-stickiness setting of +INFINITY causes the Orchestration Agent to prefer the cluster node where it is currently running, unless a failover occurs (the agent does not continually migrate as the cluster attempts to balance the load).
For example, consider the following scenario:
An instance of the Orchestration Agent is running on host1
A VM (designated “vm1”) is running on host1
You provision another VM (designated as “vm2”) to host1.
The following events occur in this scenario:
The HAE cluster moves the Orchestration Agent instance from host1 to host2.
Moving the agent causes the provision job to cancel/fail and the agent to disconnect/log in again to the server.
In this same scenario, the reverse happens if the
action is run on vm2:An Orchestration Server job kills the agent instance on host2.
The HAE cluster moves the agent instance from host2 to host1.
The resource-stickiness setting solves this issue. However, it would also be sufficient to add a resource location constraint on the Orchestration Agent, which would cause it to prefer a desired node in the cluster with a score of +INFINITY.
<group id="novell-zosagent-group"> <primitive class="ocf" id="novell-zosagent-ip" provider="heartbeat" type="IPaddr"> <operations id="novell-zosagent-ip-operations"> <op id="novell-zosagent-ip-op-monitor-5s" interval="5s" name="monitor" timeout="20s"/> </operations> <instance_attributes id="novell-zosagent-ip-instance_attributes"> <nvpair id="novell-zosagent-instance_attributes-ip" name="ip" value="151.155.169.78"/> <nvpair id="novell-zosagent-instance_attributes-cidr_netmask" name="cidr_netmask" value="255.255.252.0"/> <nvpair id="novell-zosagent-instance_attributes-nic" name="nic" value="br0"/> </instance_attributes> </primitive> <primitive class="lsb" id="novell-zosagent" type="novell-zosagent"> <meta_attributes id="novell-zosagent-meta_attributes"> <nvpair id="novell-zosagent-meta_attributes-resource-stickiness" name="resource-stickiness" value="+INFINITY"/> </meta_attributes> <operations id="novell-zosagent-operations"> <op id="novell-zosagent-op-monitor-15" interval="15" name="monitor" start-delay="15" timeout="15"/> </operations> </primitive> <meta_attributes id="zos-agent-group-meta_attributes"> <nvpair id="zos-agent-group-meta_attributes-target-role" name="target-role" value="started"/> </meta_attributes> </group>