5-3 Dependency Management
If you want to represent many H/W or S/W elements as resources, you need to define the order of operation for them.
For instance, the IP address does not mean anything without going through the physical network adapter phase.
Also, without running the DB engine service, you cannot run a DB connection client.The logical time order as discussed here is defined as a hierarchy relationship between a parent and a child in MCCS.The parent resource is above the child resource.
When you start a group in MCCS, it will start going online from the bottom to the top.
The parent resource can go online only after all the child resources go online. When you terminate a group, it will start going offline from the top to the bottom.
Table of Contents
[Figure] Online/Offline Sequence of Dependent Resources When Starting or Terminating a Group
Dependency Configuration
define this dependency among resources, configure this link in the ‘Resource Dependency’ view.
[Figure] Dependency relationship
In MCCS, you can configure the dependency relationship of resources by using a tree.
From the above screen, we can find out about the dependency relationship among resources.
The network address resource as a parent depends on the NIC resource as its child. The application resource as a parent depends on the network address resource as its child.
MCCS performs a failover on a group basis. Thus, all the resources within a group should be connected in this dependency relationship and they need to be put into a single group before we can provide meaningful service.
If we set two resources as a parent and an child, we can see it as two vertical levels. The max level can be checked in the 'MaxDependencyLevel' value in the group attribute menu.
Link
[Figure] Setting Link
The above screen shows how to set the link between the process resource (parent) and the network address resource (child).
The network address resource (child) depends on the process resource (parent).
Select the group relationship editor screen.
On the right palette screen, select 'Create Dependency'.
You can see that the mouse cursor shape is changed to support linking.
First, select the parent resource (process resource) and then select the child resource (network address resource) to finish link setting.
※ For linking process, first selected resource is parent resource and the one selected later is the child resource.
Dependency Removal
[Figure] Setting Unlink
When you remove the dependency relationship, press 'Select' in the palette.
Select a link to remove.
The selected link will have big points at the both ends of resource to indicate the selection made.
On the selected link, right click with your mouse button and select 'Dependency Removal' in the popup screen.
Dependency Attribute
You can review and edit a dependency attribute when you select a dependency among resources.
There are 'OnlineDependency' and 'OfflineDependency' in the dependency attribute.
This is applied when you bring online and take offline a resource within 'Restartlimit'. (For more details about Restartlimit, Please refer to "7. Resource" in this manual.)
Attribute | Description | Type | Default | Edit | Note |
|---|---|---|---|---|---|
OnlineDependency | This indicates that the child is also brought online or not when a resource online is initiated. | STRING | STRONG | O |
|
OfflineDependency | This indicates that the parent is also taken offline or not when a resource offline is initiated. | STRING | STRONG | O |
|
Basic Dependency Cases among resources
Following are the general cases of dependency.
Network Interface card(NIC) Resource, Network Address Resource
Before assigning an IP address to the network address resource, you need to first have a physical network card. Without a network card, you cannot assign an IP address. If you set the NIC resource as an child and the network address resource as a parent, it will check whether the network card is normal when the network address resources tries to go online.
Disk Resource, Network Address Resource, Application Resource (ex: DB)
Many applications record data in a disk or storage. Thus, applications must depend on disks in the dependency relationship.
If you use the DB, you need to designate the disk to record data in. Thus, for the DB, you must set the dependency relationship where the DB as a parent depends on the disk as a child.
If a client needs an IP address to access the DB, you must set the network address as an child and the DB as a parent. Based on this dependency relationship, when a group goes online in MCCS, first check the network address resource and confirm whether the disk are unlocked properly before running the DB.
Thus the DB should be set to depend on both the network address resource and the disk resource.
We can provide the following configurations based on the dependency relationships discussed so far.
[Figure] Dependency of database application