Overview
F5 Global Traffic Management(GTM) is a dns based network traffic management and dispatching/routing infrastructure to support the solution distributed to the multiple data centers worldwide. The main goals of this infrastructure are the traffic routing based on the users' location to the closest available data center and to set up disaster ready/high availability infrastructure.
This document describe how the scenario for solutions works with the local/regional loadbalancing setup.
Content
F5 Global Traffic Management can be utilized when a solution is distributed to the multiple data centers and it needs to route the regional users to the closest location available in order to have a better user experience. It also provides disaster ready / high availability infrastructure by implementing the fail over set up between the data center and persistency of the location in order to avoid users hoping to different locations and loose sessions.
How does it work ?
- F5 GTM act as authoritative name server and answer client DNS-Requests with appropriate IP-address
- F5 GTM regularly check health status of site through the local/regional loadbalancer
- The local/regional loadbalancer will balance the traffic among the web servers behind the loadbalancer.
- F5 GTM exchange information about site status
Features of F5 GTM
- Full blown DNS based geographic Loadbalancing Platform
- Acts according GSLB as NS for Zones
- Ideally combined with local loadbalancing
- Application layer healthcheck possible (e.g. <site url>/healthcheck/test.htm)
- Proximity Table with estimated continental accuracy ~ 95 % Proximity table used to determine the best location for the client comes with F5.
- Fail back loadbalancing mechanisms (round robin, least connections etc)
- Stickiness with global persistence table
- Global sync group, i.e. sync of configuration over global infrastructure
Limitations
- Total Outage of cluster/box will lead to dns timeout
- Failover/proxy hopping can lead to unwanted effects in regards to session handling
- User can access multiple sites simultaneously
- Users flap back and lose their current session
- DNS caching also affects other users
- A ~100 % Solution can only be provided with an application layer intelligence
Solution: Persistence Table combined with Session Cookie
- Client requests Name resolution
- Client Mapping is stored in F5 GTM Persistence Table for define timeout
- Client connects to Site
- The local/regional loadbalancer inserts session cookie
- Mislead requests are redirected to appropriate site by the loadbalancer
When users access the site, the users will go through following step to reach to the site
- Users make a request to a URL e.g. global.facebook.com
- DNS request for global.facebook.com is made. F5 GTM will respond the virtual IP of the loca/regional loadbalancer based on the proximity check.
- Mapping of the client dns will be stored in the persistent table of F5 GTM for the defined period.
- Users request will go to the returned local/regional loadbalancer.
- The loadbalancer will issue a session cookie which contains the location information. (i.e. the datacenter the users reach to)
- The loadbalancer dispatch the traffic to a web server behind it.
- Subsequent request will first check the persistent table on F5 GTM if a dns request is made. If exists, the cached virtual IP of the local/regional loadbalancer will be returned.
- Any mislead traffic to different datacenter other than the original datacenter will be re-directed as the loadbalancer can read and determine from the session cookie if the user came to the original datacenter.
No comments:
Post a Comment