25.2.4 System configuration examples of standby-less system switchover (effects distributed)
(1) System configuration example
Figure 25-25 shows a system configuration example of standby-less system switchover (effects distributed). When an error occurs in the regular unit, processing intended for the back-end servers in the primary system where the error occurred is divided in units of back-end servers, assumed by multiple running server machines, and executed.
Figure 25-25 System configuration example of standby-less system switchover (effects distributed)
![[Figure]](figure/zu250815.gif)
- Explanation
- When an error occurs in Unit 1, BES1 executes its processing in Unit 2 as a guest BES, and BES2 executes its processing in Unit 3 as a guest BES.
- If an error occurs in Unit 2 while Unit 1 is still in error status, BES1, BES2, BES3, and BES4 all execute their processing in Unit 3 as guest BESs.
(2) Determining the switching destination for each server
When you use the standby-less system switchover (effects distributed) facility, HiRDB takes the following issues into consideration in determining the switching destinations for the individual servers:
- Balancing among the units the number of running guest BESs
- Balancing among the units the number of servers that share each global buffer
When standby-less system switchover (effects distributed) is used, HiRDB uses the following procedure to determine switching destinations:
- Procedure
- Determines the switching-destination unit for the server that has the highest priority among all servers. The following are the determination criteria:
Balancing the number of servers to be switched from one unit to other units
Balancing among the units at the switching destination the number of servers that will share a global buffer
- From i = 1 to [number-of-units-in-HA-group - 2], steps 3 through 9 are repeated.
- Selects a server with priority ranking of i + 1 whose switching destination has not been determined.
- If there is an applicable server, the process proceeds to step 5. If there is no applicable server, i = i + 1 is set and the process returns to step 3.
- Assumes that switching destinations 1 through i must be determined for the selected servers, and that the unit to which these servers belong is the erroneous unit.
- Units other than the erroneous unit are selected as switching destination candidates.
- From the servers belonging to the erroneous unit, all servers that have switching destination candidates as defined switching destinations are extracted, and it is assumed that guest BESs for the server in question are allocated to the switching-destination unit with the highest priority.
- From the servers belonging to the erroneous unit, all servers that do not have switching destination candidates as defined switching destinations are extracted, and the i +1-th switching-destination unit is determined for each server. The following are the determination criteria:
The unit with the smallest number of guest BESs is selected.
Units in which fewer guest BESs share a global buffer with the server are selected.
- Returns to step 3.
(a) Configuration with four units
The standby-less system switchover (effects distributed) facility is applied to the following configuration consisting of four units:
![[Figure]](figure/zu256302.gif)
In this case, a global buffer is shared in each of the following groups:
- Group A: BES1A, BES2A, BES3A, and BES4A
- Group B: BES1B, BES2B, BES3B, and BES4B
- Group C: BES1C, BES2C, BES3C, and BES4C
- Determining the switching-destination unit with the highest priority
An example is shown that determines the switching-destination unit with the highest priority for BES3B. A switching destination is determined so that it does not coincide with servers that share the same global buffer (BES1B and BES2B) or BES3A. Specifically, unt1 is selected because the switching destination of BES1B (unt3), the switching destination of BES2B (unt4), and the switching destination of BES3A (unt4) cannot be selected.
Server | Host BES | Highest priority | Second priority | Third priority |
---|
BES1A | unt1 | unt2 | Allocated | Allocated |
BES1B | unt3 | Allocated | Allocated |
BES1C | unt4 | Allocated | Allocated |
BES2A | unt2 | unt3 | Allocated | Allocated |
BES2B | unt4 | Allocated | Allocated |
BES2C | unt1 | Allocated | Allocated |
BES3A | unt3 | unt4 | Allocated | Allocated |
BES3B | unt1 | Allocated | Allocated |
BES3C | Allocated | Allocated | Allocated |
BES4A | unt4 | Allocated | Allocated | Allocated |
BES4B | Allocated | Allocated | Allocated |
BES4C | Allocated | Allocated | Allocated |
- Determining the switching-destination unit with the second or subsequent priority
An example is shown that determines the switching-destination unit with the second priority for BES2B.
First, unt4, which is a defined switching destination of BES2B, and unt2, to which BES2C belongs, are assumed to be erroneous units (step 5), and unt1 and unt3 are selected as switching-destination candidates (step 6). Next, from the servers belonging to the erroneous units (unt2 and unt4), servers (BES2A, BES2C, BES4A, and BES4C) that have the switching destination candidates as defined switching destinations are extracted, and it is assumed that guest servers are allocated as shown below (step 7).
BES2A: unt3; BES2C: unt1; BES4A: unt1; and BES4C: unt3
Next, servers (BES2B and BES4B) that do not contain the switching destination candidates as defined switching destinations are extracted, and the switching-destination unit with the second priority is determined. In this case, the number of guest BESs is the same for unt1 and unt3, and BES2B and BES4B share a global buffer, and therefore, BES2B is switched to unt1 and BES4B is switched to unt3.
Server | Host BES | Highest priority | Second priority | Third priority |
---|
BES1A | unt1 Switching-destination candidate unit | unt2 | unt4 | Allocated |
BES1B | unt3 | unt2 | Allocated |
BES1C | unt4 | unt2 | Allocated |
BES2A | unt2 Erroneous unit | unt3 | unt1 | Allocated |
BES2B | unt4 | unt1 | Allocated |
BES2C | unt1 | Allocated | Allocated |
BES3A | unt3 Switching-destination candidate unit | unt4 | Allocated | Allocated |
BES3B | unt1 | Allocated | Allocated |
BES3C | unt2 | Allocated | Allocated |
BES4A | unt4 Erroneous unit | unt1 | Allocated | Allocated |
BES4B | unt2 | Allocated | Allocated |
BES4C | unt3 | Allocated | Allocated |
Table 25-11 shows an example of switching destination definition in a 4-unit configuration.
Table 25-11 Switching destination definition example in a 4-unit configuration
Server | Host BES | Highest priority | Second priority | Third priority |
---|
BES1A | unt1 | unt2 | unt4 | unt3 |
BES1B | unt3 | unt2 | unt4 |
BES1C | unt4 | unt2 | unt3 |
BES2A | unt2 | unt3 | unt1 | unt4 |
BES2B | unt4 | unt1 | unt3 |
BES2C | unt1 | unt3 | unt4 |
BES3A | unt3 | unt4 | unt2 | unt1 |
BES3B | unt1 | unt4 | unt2 |
BES3C | unt2 | unt4 | unt1 |
BES4A | unt4 | unt1 | unt3 | unt2 |
BES4B | unt2 | unt3 | unt1 |
BES4C | unt3 | unt1 | unt2 |
(3) Configuration with five units
The standby-less system switchover (effects distributed) facility is applied to the following configuration consisting of five units:
![[Figure]](figure/zu256303.gif)
In this case, a global buffer is shared in each of the following groups:
- Group A: BES1A, BES2A, BES3A, BES4A, and BES5A
- Group B: BES1B, BES2B, BES3B, BES4B, and BES5B
- Group C: BES1C, BES2C, BES3C, BES4C, and BES5C
- Group D: BES1D, BES2D, BES3D, BES4D, and BES5D
Table 25-12 shows an example of switching destination definition in a 5-unit configuration.
Table 25-12 Switching destination definition example in a 5-unit configuration
Server | Host BES | Highest priority | Second priority | Third priority | Fourth priority |
---|
BES1A | unt1 | unt2 | unt5 | unt3 | unt4 |
BES1B | unt3 | unt4 | unt2 | unt5 |
BES1C | unt4 | unt3 | unt5 | unt2 |
BES1D | unt5 | unt2 | unt4 | unt3 |
BES2A | unt2 | unt3 | unt1 | unt4 | unt5 |
BES2B | unt4 | unt5 | unt1 | unt3 |
BES2C | unt5 | unt4 | unt3 | unt1 |
BES2D | unt1 | unt3 | unt5 | unt4 |
BES3A | unt3 | unt4 | unt2 | unt1 | unt5 |
BES3B | unt5 | unt1 | unt2 | unt4 |
BES3C | unt1 | unt5 | unt4 | unt2 |
BES3D | unt2 | unt4 | unt5 | unt1 |
BES4A | unt4 | unt5 | unt3 | unt1 | unt2 |
BES4B | unt1 | unt2 | unt3 | unt5 |
BES4C | unt2 | unt1 | unt5 | unt3 |
BES4D | unt3 | unt5 | unt2 | unt1 |
BES5A | unt5 | unt1 | unt4 | unt2 | unt3 |
BES5B | unt2 | unt3 | unt1 | unt4 |
BES5C | unt3 | unt2 | unt4 | unt1 |
BES5D | unt4 | unt1 | unt3 | unt2 |