Uploaded by Cristian Onate

GSLB CONFIGURATION FOR DISATER RECOVERY

GSLB CONFIGURATION FOR
DISASTER RECOVERY
GSLB Configuration for Disaster Recovery
TABLE OF
CONTENTS
GSLB DR SOLUTION ............................................................................................. 1
GSLB DR DESIGN.................................................................................................. 1
CONFIGURATION OVERVIEW ............................................................................. 2
CLI example .............................................................................................................................................................. 3
Primary and DR site configurations .................................................................................................................... 4
ADDITIONAL COMMANDS AND WORKFLOWS ................................................ 6
Verify Configuration: ............................................................................................................................................... 6
CLI example to Force traffic to the DR Site........................................................................................................ 6
aXAPI example......................................................................................................................................................... 7
Verify DNS functionality ......................................................................................................................................... 8
SUMMARY ............................................................................................................. 9
HELPFUL LINKS .................................................................................................... 9
ABOUT A10 NETWORKS .................................................................................................................................... 10
i
GSLB Configuration for Disaster Recovery
GSLB DR SOLUTION
A10 Networks Global Server Load Balancing (GSLB) technology provides site failure protection. The GSLB
controller monitors each active site in the GSLB domain to verify the health of each site. If it determines that
the active site is down (for reasons not limited to power, circuit, or server failures), the GSLB controller will
shift application traffic to an alternate site dynamically. The failover is transparent to users connecting to a
fully-qualified domain name (FQDN) that the A10 GSLB controllers service. A manual GSLB site failover can
also be performed using a simple procedure. For example, the operator can force traffic to an alternate site
when an active site requires maintenance.
GSLB DR DESIGN
Following is an Active - Standby design in GSLB server mode. Each site has a GSLB controller and the GSLB
controllers are authoritative for the DNS zone that has been delegated.
Figure 1: GSLB Disaster Recovery design
Below is a high-level overview of Figure 1: GSLB Disaster Recovery design:
o Users connecting to www.a10example.com:
- Queries the local DNS server and the recursive lookup process continues to the root DNS servers.
1
GSLB Configuration for Disaster Recovery
- The A10 GSLB controllers communicate using the GLSB protocol for health check monitors to verify site
availability.
- CNAME is used for delegation of the FQDN to the A10 GSLB controllers.
- The Primary or the DR GSLB controller responds to the users with the Primary site HTTP VIP address if
the Primary site is up.
o If the A10 GSLB controllers determine the Primary site is down:
- The A10 GSLB controller responds with the HTTP VIP address of the DR site.
- User traffic is directed to the DR site.
o When the GSLB Protocol determines the Primary site is up:
- User traffic is directed to the Primary site.
CONFIGURATION OVERVIEW
To configure the GSLB active and standby sites based on Figure 1: GSLB Disaster Recovery design:
o Enable the GSLB controller process for the GSLB protocol to exchange site health information.
- Command: ACOS(config)# <gslb protocol enable controller>
o If SLB is also combined with GSLB, enable the GSLB device.
- Command: ACOS(config)# <gslb protocol enable device>
o Enable the DNS VIP for a standalone DNS server, configure the port, and enable GSLB.
- Command: ACOS(config)# <slb virtual-server <name> <IP address>>
- Command: ACOS(config-slb vserver)# <port <number> < udp>
- Command: ACOS (config-slb vserver-vport)# <gslb-enable>
o Configure the Service IP address for each site. This is the SLB VIP address or remote host IP address the
DNS VIP will respond with, to direct traffic to the site. Define the port and protocol.
- Command: ACOS(config)# <gslb service-ip <name> <IP address>>
- Command: ACOS(config-service-ip:PRI-GSLB-HTTP)# <port <number> <udp or tcp>>
o Configure the GSLB controller for each site. Configure the site parameters and set the administrative
preference to prefer Primary site for all traffic. The default administrative preference value is 100. Set the
active site to a higher administrative value than the default value to prefer traffic over the DR site. Add the
GSLB service VIP address to each site configuration.
- Command: ACOS(config)# <gslb site <name>>
- Command: ACOS(config-gslb site:name)# <slb-dev <name> <IP address>>
2
GSLB Configuration for Disaster Recovery
- Command: ACOS(config-gslb site:name-slb dev:name)# <admin-preference <0-255>>
- Command: ACOS(config-gslb site:name-slb dev:name)# <vip-server <GSLB VIP name>>.
o Configure the GSLB policy to determine how GSLB traffic will be distributed to each site. Enable the DNS
attributes to respond with a single IP and be authoritative for the zone. Enable administrative-preference
and disable round robin based on the active-standby design. Order the metrics for the desired GSLB
behavior.
- Command: ACOS(config)# <gslb policy <name>>
- Command: ACOS(config-policy:name)# <dns selected-only 1>
- Command: ACOS(config-policy:name)# <dns server authoritative>
- Command: ACOS(config-policy:name)# <admin-preference>
- Command: ACOS(config-policy:name)# <no round-robin>
- Command: ACOS(config-policy:name)# <metric-order admin-preference health-check>
o Enable the zone information for DNS query response for the FQDN zone. Bind the GSLB policy to the zone
configuration. Enter the CNAME if it was used for zone delegation on the A10 GSLB controllers or enter the
zone. Define the service prefix for the FQDN and associated service port. Configure the DNS A Record for
each GSLB VIP address of each site which will return the HTTP VIP address with the DNS response.
- Command: ACOS(config)# <gslb zone <zone name>
- Command: ACOS(config-zone:zone-name)# <policy <name>>
- Command: ACOS(config-zone:zone-name)# <service <port number> <service prefix for zone>>
- Command: ACOS(config-zone:zone-name.-service...)# <dns-a-record <GSLB VIP name> <static>>
CLI EXAMPLE
The following are the steps to configure GSLB using the CLI referencing Figure 1: GSLB Disaster Recovery
design. The CNAME, gslb.a10example.com, is used for the zone, www.a10example.com.
Primary Site Configuration:
ACOS-PRI(config)# gslb protocol enable controller
ACOS-PRI(config)# gslb protocol enable device
ACOS-PRI(config)# slb virtual-server DNS-VIP 192.168.20.53
ACOS-PRI(config-slb vserver)# port 53 udp
ACOS-PRI(config-slb vserver-vport)# gslb-enable
ACOS-PRI(config)# gslb service-ip PRI-GSLB-HTTP 192.168.20.200
ACOS-PRI(config-service-ip:PRI-GSLB-HTTP)# port 80 tcp
ACOS-PRI(config)# gslb service-ip DR-GSLB-HTTP 192.168.40.200
ACOS-PRI(config-service-ip:DR-GSLB-HTTP)# port 80 tcp
ACOS-PRI(config)# gslb site Primary
3
GSLB Configuration for Disaster Recovery
ACOS-PRI(config-gslb site:Primary)# slb-dev PRI 192.168.20.125
ACOS-PRI(config-gslb site:Primary-slb dev:PRI)# admin-preference 200
ACOS-PRI(config-gslb site:Primary-slb dev:PRI)#vip-server PRI-GSLB-HTTP
ACOS-PRI(config)# gslb site DRsite
ACOS-PRI(config-gslb site:DRsite)# slb-dev DR 192.168.40.125
ACOS-PRI(config-gslb site:DRsite-slb dev:DR)# vip-server DR-GSLB-HTTP
ACOS-PRI(config)# gslb policy A10health
ACOS-PRI(config-policy:a10health)# dns selected-only-1
ACOS-PRI(config-policy:a10health)# dns server authoritative
ACOS-PRI(config-policy:a10health)# admin-preference
ACOS-PRI(config-policy:a10health)# no round-robin
ACOS-PRI(config-policy:a10health)# metric-order health-check admin-preference
ACOS-PRI(config)# gslb zone gslb.a10example.com
ACOS-PRI(config-zone:gslb.a10example.)# policy A10health
ACOS-PRI(config-zone:gslb.a10example.)# service 80 www
ACOS-PRI(config-zone:gslb.a10example.-service...)# dns-a-record PRI-GSLB-HTTP static
ACOS-PRI(config-zone:gslb.a10example.-service...)# dns-a-record DR-GSLB-HTTP static
PRIMARY AND DR SITE CONFIGURATIONS
The GSLB configuration for both sites referencing Figure 1: GSLB Disaster Recovery design is shown below:
4
GSLB Configuration for Disaster Recovery
Primary Site:
DR Site:
ACOS-PRI#show running-configuration
!Current configuration: 508 bytes
!Configuration last updated at 00:28:05 GMT Sat Mar 24 2018
!Configuration last saved at 23:48:37 GMT Fri Mar 23 2018
!64-bit Advanced Core OS (ACOS) version 4.1.4, build 307 (Feb12-2018,06:47)
!
hostname ACOS-PRI
!
interface management
ip address 172.31.31.31 255.255.255.0
enable
!
interface ethernet 1
enable
ip address 192.168.20.125 255.255.255.0
!
interface ethernet 2
!
ip route 0.0.0.0 /0 192.168.20.154
!
slb server RS1 192.168.2.243
port 80 tcp
!
slb service-group SG1 tcp
member RS1 80
!
slb virtual-server DNS-VIP 192.168.20.53
port 53 udp
gslb-enable
!
slb virtual-server VS1 192.168.20.200
port 80 http
source-nat auto
service-group SG1
!
gslb service-ip PRI-GSLB-HTTP 192.168.20.200
port 80 tcp
!
gslb service-ip DR-GSLB-HTTP 192.168.40.200
port 80 tcp
!
gslb site Primary
slb-dev PRI 192.168.20.125
admin-preference 200
vip-server PRI-GSLB-HTTP
!
gslb site DRsite
slb-dev DR 192.168.40.125
vip-server DR-GSLB-HTTP
!
gslb policy A10health
no geographic
admin-preference
no round-robin
metric-order health-check admin-preference
dns selected-only 1
dns server authoritative
!
gslb zone gslb.a10example.com
policy A10health
service 80 www
policy A10health
dns-a-record DR-GSLB-HTTP static
dns-a-record PRI-GSLB-HTTP static
!
gslb protocol enable controller
!
gslb protocol enable device
!
end
ACOS-DR#show running-configuration
!Current configuration: 362 bytes
!Configuration last updated at 00:46:37 GMT Sat Mar 24 2018
!Configuration last saved at 00:41:10 GMT Sat Mar 24 2018
!64-bit Advanced Core OS (ACOS) version 4.1.4, build 307 (Feb12-2018,06:47)
!
hostname ACOS-DR
!
interface management
ip address 172.31.31.32 255.255.255.0
!
interface ethernet 1
enable
ip address 192.168.40.125 255.255.255.0
!
interface ethernet 2
!
ip route 0.0.0.0 /0 192.168.40.154
!
slb server RS1 192.168.40.250
port 80 tcp
!
slb service-group SG1 tcp
member RS1 80
!
slb virtual-server DNS-VIP 192.168.40.53
port 53 udp
gslb-enable
!
slb virtual-server VS1 192.168.40.200
port 80 http
source-nat auto
service-group SG1
!
gslb service-ip DR-GSLB-HTTP 192.168.40.200
port 80 tcp
!
gslb service-ip PRI-GSLB-HTTP 192.168.20.200
port 80 tcp
!
gslb site DRsite
slb-dev DR 192.168.40.125
vip-server DR-GSLB-HTTP
!
gslb site Primary
slb-dev PRI 192.168.20.125
admin-preference 200
vip-server PRI-GSLB-HTTP
!
gslb policy A10health
no geographic
admin-preference
no round-robin
metric-order health-check admin-preference
dns selected-only 1
dns server authoritative
!
gslb zone gslb.a10example.com
policy A10health
service 80 www
policy A10health
dns-a-record DR-GSLB-HTTP static
dns-a-record PRI-GSLB-HTTP static
!
gslb protocol enable controller
!
gslb protocol enable device
!
!
end
5
GSLB Configuration for Disaster Recovery
ADDITIONAL COMMANDS AND
WORKFLOWS
VERIFY CONFIGURATION:
Verify the Primary site and the DR site are communicating and exchanging HTTP VIP health information
indicated by the state being UP.
ACOS-PRI# show gslb service-ip
P-Cnt = Count of Service Ports, Attrs = Attributes
V = Is Virtual Server, D = Disabled
P = GSLB Protocol,
L = Local Protocol
M = Manually Health Check, * = Dynamic
Service-IP
IP/Desc
Attrs State P-Cnt Hits
-------------------------------------------------------------------------------:PRI:PRI-GSLB-HTTP
192.168.20.200 VL
UP
1
0
:DR:DR-GSLB-HTTP
192.168.40.200 VP
UP
1
0
CLI EXAMPLE TO FORCE TRAFFIC TO THE DR SITE
Change the administrative preference values for the Primary site configured, on each GSLB controller:
Configure the Primary Site:
Change the administrative preference for the Primary site configured at the Primary data center. For
example, a value of 90 is lower than the value of the default configured at the DR site (default = 100):
ACOS-PRI(config)# gslb site Primary
ACOS-PRI(config-gslb site:Primary)# slb-dev PRI 192.168.20.125
ACOS-PRI(config-gslb site:Primary-slb dev:PRI)# admin-preference 90
6
GSLB Configuration for Disaster Recovery
Configure the DR Site:
Change the administrative preference for the Primary site configured at the DR data center. For example, a
value of 100 is lower than the value of the default configured at the DR site (default = 150):
ACOS-DR(config)# gslb site Primary
ACOS-DR(config-gslb site:Primary)# slb-dev PRI 192.168.20.125
ACOS-DR(config-gslb site:Primary-slb dev:PRI)# admin-preference 90
AXAPI EXAMPLE
The A10 aXAPI is used to efficiently shift traffic to the DR site with a single command. Below is an example
of an API call to alter the administrative preference value to force a lower priority at the Primary site. The
GSLB controllers update the priorities of each site and either controller responds to users with the DR site
HTTP VIP address.
Send API call to the Primary GSLB Controller management IP address:
root@ubuntu:~# curl -k POST https://192.168.2.125/axapi/v3/gslb/site/Primary/slb-dev/PRI \
-H "Content-type: application/json" \
-H "Authorization:A10 6110a8f3a6b04ce64e0ab281b7f0aa" \
-d '{
"slb-dev": {
"admin-preference":50
}
}'
Send API call to the DR GSLB Controller:
root@ubuntu:~# curl -k POST https://192.168.40.125/axapi/v3/gslb/site/Primary/slb-dev/PRI \
-H "Content-type: application/json" \
7
GSLB Configuration for Disaster Recovery
-H "Authorization:A10 6110a8f3a6b04ce64e0ab281b7f0aa" \
-d '{
"slb-dev": {
"admin-preference":50
}
}'
For additional information see the link referencing the aXAPI Guide at the end of this article in Helpful Links
section.
VERIFY DNS FUNCTIONALITY
Below is an example dig command to verify the A10 GSLB controllers are responding with the correct site IP.
The GSLB controller is responding with Primary site Web site address:
Before the API command to change the administrative preference:
[root@localhost ~]# dig www.gslb.a10example.com
; <<>> DiG 9.2.4 <<>> www.gslb.a10example.com
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 22893
;; flags: qr aa; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;www.gslb.a10example.com.
IN
A
;; ANSWER SECTION:
www.gslb.a10example.com. 10
IN
A
192.168.20.200
;; Query time: 16 msec
;; SERVER: 192.168.40.53#53(192.168.40.53)
;; WHEN: Fri Mar 23 18:48:43 2018
;; MSG SIZE rcvd: 80
After the API command to change the administrative preference for both GSLB controllers:
8
GSLB Configuration for Disaster Recovery
; <<>> DiG 9.2.4 <<>> www.gslb.a10example.com
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 1992
;; flags: qr aa; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;www.gslb.a10example.com.
IN
A
;; ANSWER SECTION:
www.gslb.a10example.com. 10
IN
A
192.168.40.200
;; Query time: 59 msec
;; SERVER: 192.168.40.53#53(192.168.40.53)
;; WHEN: Fri Mar 23 19:20:58 2018
;; MSG SIZE rcvd: 80
SUMMARY
A10 Networks GSLB ensures site reliability and effective deployment for Disaster Recovery. Traffic can be
distributed regionally or globally based on geographic location, bandwidth at remote sites, weighted
distribution, round-robin, or proximity of site to the local DNS query.
HELPFUL LINKS
For the complete guide to configuring GSLB on A10 Thunder, see the following link:
https://documentation.a10networks.com/GSLB
For the complete guide to configuring SLB and other ADC functions on A10 Thunder, see the following links:
Layer 4 TCP/UDP Load Balancing:
https://documentation.a10networks.com/L4_SLB
9
GSLB Configuration for Disaster Recovery
Layer 7 Application Load Balancing:
https://documentation.a10networks.com/L7_App_LB
For the complete guide to the aXAPI Guide to automate configuration on A10 Thunder, see the following links:
https://documentation.a10networks.com/axAPI
10
ABOUT A10 NETWORKS
A10 Networks (NYSE: ATEN) is a Secure Application Services™ company, providing a range of high-performance application
networking solutions that help organizations ensure that their data center applications and networks remain highly
available, accelerated and secure. Founded in 2004, A10 Networks is based in San Jose, Calif., and serves customers
globally with offices worldwide.
For more information, visit: a10networks.com or tweet @a10Networks
LEARN MORE
ABOUT A10 NETWORKS
CONTACT US
©2018 A10 Networks, Inc. All rights reserved. A10 Networks, the A10 Networks logo,
ACOS, A10 Thunder, A10 Lightning, A10 Harmony and SSL Insight are trademarks or
registered trademarks of A10 Networks, Inc. in the United States and other countries.
All other trademarks are property of their respective owners. A10 Networks assumes
no responsibility for any inaccuracies in this document. A10 Networks reserves the
right to change, modify, transfer, or otherwise revise this publication without notice.
For the full list of trademarks, visit: www.a10networks.com/a10-trademarks.
a10networks.com/contact
11