Managing HP Serviceguard for Linux, Tenth Edition, September 2012

there are also many issues with this sort of design. This discussion will not go into details
other than to give a few examples.
The simplest method is to have two applications running in a master/slave relationship
where the slave is simply a hot standby application for the master. When the master
fails, the slave on the second system would still need to figure out what state the data
was in (i.e., data recovery would still take place). However, the time to fork the application
and do the initial startup is saved.
Another possibility is having two applications that are both active. An example might
be two application servers which feed a database. Half of the clients connect to one
application server and half of the clients connect to the second application server. If one
server fails, then all the clients connect to the remaining application server.
Design for Replicated Data Sites
Replicated data sites are a benefit for both fast failover and disaster recovery. With
replicated data, data disks are not shared between systems. There is no data recovery
that has to take place. This makes the recovery time faster. However, there may be
performance trade-offs associated with replicating data. There are a number of ways to
perform data replication, which should be fully investigated by the application designer.
Many of the standard database products provide for data replication transparent to the
client application. By designing your application to use a standard database, the end-user
can determine if data replication is desired.
Designing Applications to Run on Multiple Systems
If an application can be failed to a backup node, how will it work on that different
system?
The previous sections discussed methods to ensure that an application can be automatically
restarted. This section will discuss some ways to ensure the application can run on multiple
systems. Topics are as follows:
Avoid Node Specific Information
Assign Unique Names to Applications
Use Uname(2) With Care
Bind to a Fixed Port
Bind to a Relocatable IP Addresses
Give Each Application its Own Volume Group
Use Multiple Destinations for SNA Applications
Avoid File Locking
Avoid Node Specific Information
Typically, when a new system is installed, an IP address must be assigned to each active
network interface. This IP address is always associated with the node and is called a
stationary IP address.
Designing Applications to Run on Multiple Systems 311