1.3 Configuring the Orchestration Agent in a SLES 11 SP2 HAE Xen Cluster

After you have installed the Orchestration Agent on each node of the cluster, you need to configure those installations.

1.3.1 Configuring the Agent for the Cluster

  1. Make sure you are ready with the information that you are prompted for during the Orchestration Agent configuration procedure (GUI or text-based):

    Server Configuration Requirement

    Explanation and Action

    Configuration Type

    Your answer here determines whether this configuration takes place on a standard agent installation or in an HAE cluster, so specify h (for high availability).

    Cluster Hostname or IP Address

    Enter the IP address for use by the Orchestration Agent as it communicates with the Orchestration Server. As a result of the complete configuration process, this IP address is configured as a cluster resource in a cluster resource group and as a resource for the Orchestration Agent.

    You can use a hostname value instead of an IP address, provided that hostname resolution is set up correctly in your environment.

    The value that you specify here is used as the default value for two other configuration items: Agent Name and Cluster Bind Address.

    Agent Name

    This is the name the Orchestration Agent uses to present itself to the Orchestration Server. The agent is represented with this name in the Orchestration Console Explorer tree.

    The default for this field is the value you specified for Cluster hostname or IP address, but you can modify it to anything you choose (not recommended).

    Orchestration Server Hostname or IP Address

    This value is required.

    Always Implement the Orchestration Server Certificate and Key?

    The Agent relies on the Orchestration Server’s TLS certificate as verification that it is communicating with the correct Orchestration Server.

    Decide whether you want to always trust the server certificate after the agent initially downloads it from the server, or if you want to exercise the certificate and key every time the agent connects to the server.

    Agent Port

    Port 8100 is used for communication between the Orchestration Server and the Orchestration Agent. Specify another port number if 8100 is reserved for another use.

    Cluster Bind Address

    This is the IP address the agent should use when connecting to the Orchestration Server. A default value might be derived from the suppled Cluster hostname or IP address as follows:

    • If an IP address was specified, the value is used unchanged.

    • If a valid DNS hostname was specified (that is, the DNS name is resolveable to an IP address), the IP address associated with the DNS name is set as the default.

    • If an invalid DNS hostname was specified (that is, the DNS name is unresolveable to an IP address), the field remains empty and you need to enter the IP address manually.

    Path to Server Certificate

    Specify the path to the Orchestration Server certificate file. The default path is /root/zos_server_cert.pem.

    NOTE:This configuration parameter is considered an advanced setting for the Orchestration Agent in the GUI Configuration Wizard, but only if you set Provide Existing Orchestration Server Certificate to yes.

  2. On any node in the cluster, run the configuration utility:

    /opt/novell/zenworks/orch/bin/config

    or

    /opt/novell/zenworks/orch/bin/guiconfig

  3. Follow the prompts in the configuration utility.

  4. When you have specified all of the information that the configuration tool needs, press Enter to begin the configuration.

  5. Run the agent configuration utility on each node of the SLES 11 SP2 HAE cluster, repeating Step 1 through Step 4 above.

When you have completed all configurations on all cluster nodes, run the resource group configuration script on exactly one node of the cluster. The information in Section 1.3.2, Creating the Agent Cluster Resource Group provides the detail on what the script does and how to run it.

Preventing Corruption in Clustered Storage Repositories

Orchestrate has a well-known VM fact called resource.vm.reprovisionOnAgentOfflineEvent that defaults to False in order to prevent virtual machines from being reprovisioned when the agent is taken offline on the VM host. This fact can be set to True, but it must be understood that if the hosts use a shared cluster storage (such as an OCFS2 repository), setting this to True and then taking a VM host’s agent offline can cause the VM to become corrupt if the VM is not shut down on the first host it is running on.

In a two-host environment, shutting the agent down on Host1 while leaving the VMs running is the VM running on Host1 would continue to run while it is started on Host2, and both hosts would access the virtual disk files simultaneously without awareness of the other. Both would write data to the shared storage independently, and this would corrupt the virtual disk.

It is strongly recommended that if clustered storage repositories are used, this VM fact is left to the default setting of False in order to prevent this type of corruption.

1.3.2 Creating the Agent Cluster Resource Group

The resource group creation script, zos_agent_ha_resource_group.sh is located in /opt/novell/zenworks/orch/bin/ha with the other configuration tools. Run this script on only one node in the cluster to set up the agent cluster resource group.

The script

  • Creates a CIB definition for the clustered Orchestration Agent.

  • Creates a CIB definition for the agent’s clustered IP address.

  • Creates a cluster resource group for the Orchestration Agent and the agent’s clustered IP address.

  • Configures the resource stickiness to avoid unnecessary failbacks.

When you run the resource group script, it asks for three parameters:

  • IP ADDRESS of the cluster hostname used to configure the Orchestration Agent: Specify the value that you provided for the Cluster Hostname or IP Address when you configured the Orchestrate Agent on the cluster nodes. This must be an IP address, not a hostname.

  • NETMASK to be used with the specified IP ADDRESS: Specify the correct netmask for the cluster IP address you provided for the Cluster Hostname or IP Address when you configured the Orchestrate Agent on the cluster nodes.

  • INTERFACE to use when the IP ADDRESS is brought online (optional): Specify the network interface you want the cluster IP address to bind to.

The collected information is used to create a Cluster Information Base (CIB) XML template for configuring the Orchestration Agent and a cluster IP address in a resource group in the SLES 11 SP2 HAE cluster. The template is called cluster_zos_agent.xml and is located in the /opt/novell/zenworks/orch/bin/ha/ directory. A sample of this template is included in Section A.0, Sample Orchestration Agent CIB XML.

The resource script runs the following command to create the resource group:

/usr/sbin/cibadmin -o resources -C -x $XMLFILE

The cluster resource group is then brought online by the resource script. For more information about SLES HAE cluster tools, see “Configuring and Managing Cluster Resources (GUI)” or “Configuring and Managing Cluster Resources (Command Line)” in the SUSE Linux Enterprise High Availability Extension Administration Guide.

1.3.3 Removing the Orchestration Agent from a Clustered VM Host

When removing the agent from a clustered VM host, stopping the agent with managed VM resources deployed will cause the resources to fail and the cluster node to be fenced.

To prevent this from happening, use the Pacemaker GUI (crm_gui), the HA Web Konsole (Hawk), or the HA command-line tool (crm) to make the resource unmanaged. For information on how to accomplish this, see the SUSE Linux Enterprise High Availability Extension documentation.