Designing High Availability Solutions with HP Serviceguard and HP Integrity Virtual Machines

24
Downtime experienced:
Tens of seconds for system freezetime during the migration (depending on VM guest activity)
Advantages:
Minimal application downtime during planned maintenance periods
Protection for the VM guest against unplanned VM host hardware/software failures or failure of the VM guest itself
Disadvantages:
Serviceguard does not protect the VM guest during the online migration process
With the variety of migration methods available, a recommended best practice for reducing overall application
downtime is to use Online VM Migration with Serviceguard and the hpvmsg_move command. Online VM Migration
provides minimal downtime for planned maintenance activities on VM hosts and static workload balancing between
VM hosts, while Serviceguard provides protection against unplanned hardware and software failures. Note that
Serviceguard does not provide protection during the actual migration process as it cannot monitor the VM during
that period.
Guest application monitoring
The primary function of Serviceguard is to monitor application and other system resources and to react to failures
when they occur. Within VMs as nodes configurations, the VMs themselves are Serviceguard cluster nodes and the
system resources and applications under their control can be monitored by Serviceguard just as in standard
non-Integrity VM cluster configurations. However, with VMs as packages configurations prior to Serviceguard
A.11.19, the VM instances are managed as Serviceguard packages and the status of the resources and applications
within the VM are not known to Serviceguard. Non-clustered applications previously running on standalone servers
can benefit from a level of protection against OS and host system hardware failures by restarting the VM in which
they are executing as a Serviceguard package on another VM host.
If a Serviceguard version earlier than A.11.19 is being used and some level of monitoring is required for applications
running in a VM as package configuration, custom application monitoring can be implemented. The following are
several methods that can be used:
Guest-based monitoringA program, or agent, is run within the VM and monitors the status of an application
running within the same VM. The monitoring method used by the agent would be dependent on the application being
monitored, and can range from verifying the existence of a specific process ID to checking application functionality or
performance. Another required function of the monitoring agent is to perform some type of recovery action when an
application failure is detected. Depending on the type of failure detected, recovery actions can range from attempting
to restart the application a specific number of times to halting the VM in which the application is running to trigger a
Serviceguard package failover action from the VM host node.
When creating a guest-based monitoring agent, there are several implementation options to consider as part of its
design. A monitoring agent can be:
A process to be run from an HP-UX inittab entry that would drive the monitoring and recovery functions for one
or more applications.
A script that is invoked at application startup, which monitors application health and controls recovery functions.
Implemented by developing user-customizable templates for application monitoring and recovery actions (for
example, restarting the application a specified number of times, halting the VM guest, etc.).
Possible recovery actions to be performed by a guest-based monitoring agent in the event of an application failure
include:
Restarting the application a number of times within the VM.
Halting the VM, thus triggering a Serviceguard failover of the VM to another VM host cluster member.
Guest-based monitoring of applications has the following advantages:
No modifications are required for the Serviceguard VM guest package running on the VM host.