In Google Cloud, TCP Internal Load Balancers are used to facilitate failover of the ASCS and ERS virtual IP’s. The frontend of each load balancer is assigned an ephemeral IP from the subnet that it operates in. In this example, we will be using the following IP addresses for load balancers corresponding to each virtual host:
ASCS10 | sps-ascs | ilb-sps-ascs | 10.20.0.10 |
ERS20 | sps-ers | ilb-sps-ers | 10.20.0.20 |
Following the steps provided in Google Cloud – Using an Internal Load Balancer and Responding to Load Balancer Health Checks, create and configure the following Google Cloud and LifeKeeper resources.
- Create two unmanaged instance groups: ig-sps-ascs-zone1, containing node-a, and ig-sps-ascs-zone2, containing node-b.
- Create two TCP Internal Load Balancers, ilb-sps-ascs and ilb-sps-ers, with the following properties. The icon indicates that the default option is chosen.
Backend configuration | |
---|---|
Region | <Deployment region> (e.g., us-east1) |
Network | lk-vpc |
Backends | ig-sps-ascs-zone1 ig-sps-ascs-zone2 |
Health Check | |
Name | hc-sps-ascs |
Protocol | TCP |
Port | 51098 (This must agree with the corresponding LifeKeeper LB Health Check resource created later) |
Proxy protocol | NONE |
Request | Leave empty |
Response | Leave empty |
Check interval | 5 seconds |
Timeout | 5 seconds |
Healthy threshold | 2 consecutive successes |
Unhealthy threshold | 2 consecutive failures |
Connection draining timeout | 15 seconds |
Frontend configuration | |
Name | fe-sps-ascs |
Subnetwork | lk-subnet |
Purpose | Non-shared |
IP address | Ephemeral (Custom) |
Custom ephemeral IP address | 10.20.0.10 |
Ports | All |
Global access | Disable |
Service label | Leave empty |
Backend configuration | |
---|---|
Region | <Deployment region> (e.g., us-west1) |
Network | lk-vpc |
Backends | ig-sps-ascs-zone1 ig-sps-ascs-zone2 |
Health Check | |
Name | hc-sps-ers |
Protocol | TCP |
Port | 52098 (This must agree with the corresponding LifeKeeper GenLB resource created later) |
Proxy protocol | NONE |
Request | Leave empty |
Response | Leave empty |
Check interval | 5 seconds |
Timeout | 5 seconds |
Healthy threshold | 2 consecutive successes |
Unhealthy threshold | 2 consecutive failures |
Connection draining timeout | 15 seconds |
Frontend configuration | |
Name | fe-sps-ers |
Subnetwork | lk-subnet |
Purpose | Non-shared |
IP address | Ephemeral (Custom) |
Custom ephemeral IP address | 10.20.0.20 |
Ports | All |
Global access | Disable |
Service label | Leave empty |
Once created, the Network services → Load balancing page in the Google Cloud Console will show the two load balancers.
- Follow the steps described in the Disable IP Forwarding section of Google Cloud – Using an Internal Load Balancer to allow node-a and node-b to communicate through the frontend IP addresses of the load balancers. Reboot node-a and node-b for the changes to take effect.
- Following the steps described in Creating an IP Resource, use the following parameters to create and extend two LifeKeeper IP resources (ip-sps-ascs and ip-sps-ers), each with net mask 255.255.255.255, to protect the ASCS and ERS virtual IP addresses on node-a and node-b. Notice that ip-sps-ascs is created on node-a and extended to node-b, while ip-sps-ers is created on node-b and extended to node-a. Also note that the resulting resources should not be extended to node-c, the witness node. The icon indicates that the default option is chosen.
Create Resource Wizard | |
---|---|
Switchback Type | intelligent |
Server | node-a |
IP Resource | 10.20.0.10 |
Netmask | 255.255.255.255 |
Network Interface | eth0 |
IP Resource Tag | ip-sps-ascs |
Pre-Extend Wizard | |
Target Server | node-b |
Switchback Type | intelligent |
Template Priority | 1 |
Target Priority | 10 |
Extend comm/ip Resource Hierarchy Wizard | |
IP Resource | 10.20.0.10 |
Netmask | 255.255.255.255 |
Network Interface | eth0 |
IP Resource Tag | ip-sps-ascs |
Create Resource Wizard | |
---|---|
Switchback Type | intelligent |
Server | node-b |
IP Resource | 10.20.0.20 |
Netmask | 255.255.255.255 |
Network Interface | eth0 |
IP Resource Tag | ip-sps-ers |
Pre-Extend Wizard | |
Target Server | node-a |
Switchback Type | intelligent |
Template Priority | 1 |
Target Priority | 10 |
Extend comm/ip Resource Hierarchy Wizard | |
IP Resource | 10.20.0.20 |
Netmask | 255.255.255.255 |
Network Interface | eth0 |
IP Resource Tag | ip-sps-ers |
Once the IP resources have been created successfully, the LifeKeeper GUI should resemble the following image.
- Following the steps in Responding to Load Balancer Health Checks, create two LifeKeeper LB Health Check resources, ilb-sps-ascs and ilb-sps-ers, with the following properties. Notice that ilb-sps-ascs is created on node-a and extended to node-b, while ilb-sps-ers is created on node-b and extended to node-a. The icon indicates that the default option is chosen.
Create Resource Wizard | |
---|---|
Switchback Type | intelligent |
Server | node-a |
Reply daemon Port | 51098 |
Reply daemon message | None (Empty) |
LB Health Check Resource Tag | ilb-sps-ascs |
Pre-Extend Wizard | |
Target Server | node-b |
Switchback Type | intelligent |
Template Priority | 1 |
Target Priority | 10 |
Extend LB Health Check Resource Hierarchy Wizard | |
LB Health Check Resource Tag | ilb-sps-ascs |
Create Resource Wizard | |
---|---|
Switchback Type | intelligent |
Server | node-b |
Reply daemon Port | 52098 |
Reply daemon message | None (Emply) |
LB Health Check Resource Tag | ilb-sps-ers |
Pre-Extend Wizard | |
Target Server | node-a |
Switchback Type | intelligent |
Template Priority | 1 |
Target Priority | 10 |
Extend LB Health Check Resource Hierarchy Wizard | |
LB Health Check Resource Tag | ilb-sps-ers |
The resources will appear in the LifeKeeper GUI resource pane once they have been created and extended successfully.
- Right-click the ilb-sps-ascs resource on node-a and click “Create Dependency…” Specify ip-sps-ascs as the Child Resource Tag and click Create Dependency.
- Right-click the ilb-sps-ers resource on node-b and click “Create Dependency…” Specify ip-sps-ers as the Child Resource Tag and click Create Dependency.
Once both dependencies have been created, the LifeKeeper GUI should resemble the following image.
- Add the following entries to /etc/hosts on node-a and node-b to allow resolution of each virtual hostname to the frontend IP address of the corresponding load balancer:
10.20.0.10 sps-ascs
10.20.0.20 sps-ers
- Test switchover and failover of the LB Health Check resources as described in the Test LB Health Check Resource Switchover and Failover section of Responding to Load Balancer Health Checks. Correct any issues found or tune the parameters of the load balancer health checks as required to achieve successful operation.
Post your comment on this topic.