Applies To:

Show Versions Show Versions

Archived Manual Chapter: 3-DNS Administrator Guide v3.0: Additional Load Balancing Options
Manual Chapter
Table of Contents   |   << Previous Chapter   |   Next Chapter >>

This article has been archived, and is no longer maintained.



7

Additional Load Balancing Options



Configuring load balancing using specialized modes

The 3-DNS Controller offers many options for load balancing DNS queries to virtual servers. The specialized modes described in this chapter help you refine the 3-DNS Controller's load balancing capabilities. This chapter describes the following specialized load balancing modes:

  • Quality of Service
  • Global Availability
  • E-commerce

You can use these performance-based load balancing modes within in a pool, or you can use them among pools. For example, you can use the Topology mode to load balance among your pools, but you can use the QOS mode within the pools. These specialized mode help you refine the 3-DNS Controller's load balancing capabilities.

In addition to the information in this chapter, Chapter 5, Load Balancing, in the 3-DNS Controller Reference Guide, contains extensive details on all of the load balancing options for the 3-DNS Controller.

Setting up Quality of Service (QOS) mode

The Quality of Service (QOS) mode is a user-definable mode that includes a configurable combination of the Round Trip Time (RTT), Completion Rate, Packet Rate, Topology, Hops, VS Capacity, and Kilobytes/Second (KBPS) modes. The QOS mode is based on an equation that takes each of these performance factors into account. When the 3-DNS Controller selects a virtual server, it chooses the server with the best overall score.

The Quality of Service mode has default settings that make it easy to use: simply specify QOS as your preferred load balancing mode. There is no need to configure it, but if you want to change the settings, you can customize the equation to put more or less weight on each individual factor. The following topics explain how to use and adjust the various settings.

Understanding QOS coefficients

Table 7.1 lists each QOS coefficient, its scale, a likely upper limit for each, and whether a higher or lower value is more efficient.

QOS coefficients: Ranges and limits
Coefficient How measured Example
upper limit
Higher or lower?
Packet rate Packets per second 700 Lower
Round trip time Microseconds 2,000,000 Lower
Completion rate Percentage of successfully transferred packets (0-100%) 100% Higher
Topology Score that defines network proximity by comparing server and LDNS IP addresses (0-232) 100 Higher
Hops Number of intermediate systems transitions (hops) 64 Lower
VS capacity Number of nodes up 20 Higher
KBPS


If you change the default QOS coefficients, keep the following issues in mind.

  • Scale
    The raw metrics for each coefficient are not on the same scale. For example, completion rate is measured in percentages, while the packet rate is measured in packets per second.
  • Normalization
    The 3-DNS Controller normalizes the raw metrics to values in the range of 0 to10. As the QOS value is calculated, a high measurement for completion rate is good, because a high percentage of completed connections are being made, but a high value for packet rate is not desirable because the packet rate load balancing mode attempts to find a virtual server that is not overly taxed at the moment.
  • Emphasis
    You can adjust coefficients to emphasize one normalized metric over another. For example, by changing the coefficients to the values shown in Figure 7.1 , you are putting the most emphasis on completion rate.

Figure 7.1 QOS coefficients emphasizing completion rate

 globals {    
qos_coeff_rtt 20
qos_coeff_completion_rate 100
qos_coeff_packet_rate 50
qos_coeff_topology 0
qos_coeff_hops 0
qos_coeff_vs_capacity 0
}

In the preceding example, if the completion rates for two virtual servers are close, the virtual server with the best packet rate is chosen. If both completion rates and packet rates are close, the round trip time (RTT) breaks the tie. In this example, the metrics for Topology, Hops, and VS Capacity modes are not used in determining how to distribute connections.

Customizing the QOS equation

You can customize the QOS equation globally, meaning that the equation applies to all wide IPs that use the QOS mode. You can also customize individual wide IPs, in which case the global QOS equation settings are overwritten.

To modify global QOS coefficients using the Configuration utility

  1. In the navigation pane, click System.
    The System - General screen opens.
  2. On the toolbar, click Load Balancing.
    The System - Load Balancing screen opens.
  3. Define the global QOS coefficients in the Round Trip Time, Completion Rate, Hops, BIG-IP Packet Rate, Topology, VS Capacity, and KBPS boxes.
  4. Click Update.

To modify QOS coefficients for a specific wide IP using the Configuration utility

  1. In the navigation pane, click Wide IPs.
  2. In the Wide IP column, click a wide IP name.
    The Modify Wide IP screen opens.
  3. On the toolbar, click Modify Pool.
    The Modify Wide IP Pools screen opens.
  4. In the Pool Name column, click the name of a pool.
    The Modify Load Balancing screen opens.
  5. Define the wide IP's QOS coefficients in the Round Trip Time, Completion Rate, Hops, Packet Rate, Topology, VS Capacity, and KBPS boxes.
  6. Click Update.

To assign global QOS coefficients using the command line utility

  1. At the command prompt, type 3dnsmaint to open the 3-DNS Maintenance menu.
  2. On the 3-DNS Maintenance menu, select Edit 3-DNS Configuration to open the wideip.conf file.
  3. Locate or add the globals statement. The globals statement should be at the top of the file.
  4. Refer to the example syntax shown in Figure 7.2 to define a global QOS equation.

Figure 7.2 Sample global QOS equation

 globals {    
qos_coeff_rtt 20
qos_coeff_completion_rate 5
qos_coeff_packet_rate 3
qos_coeff_topology 0
qos_coeff_hops 0
qos_coeff_vs_capacity 0
qos_coeff_kbps 0
}

To assign QOS coefficients for a specific wide IP using the command line utility

  1. At the command prompt, type 3dnsmaint to open the 3-DNS Maintenance menu.
  2. On the 3-DNS Maintenance menu, select Edit 3-DNS Configuration to open the wideip.conf file.
  3. Locate the wideip statement you want to edit.
  4. Refer to the example syntax shown in Figure 7.3 to define a wide IP's QOS equation.

Figure 7.3 displays a wide IP definition that overrides the global QOS equation settings shown in Figure 7.2 .

Figure 7.3 QOS coefficient settings that override the global QOS settings

 wideip {    
address 192.168.101.50
service "http"
name "www.wip.domain.com"
ttl 60 // increase the domain default ttl
qos_coeff {
rtt 21
hops 0
completion_rate 7
packet_rate 5
topology 1
vs_capacity 0
kbps 0
}
pool {
name "Pool_1"
ratio 2 // applies to pool_lbmode == ratio
preferred qos
alternate ratio
address 192.168.101.50 ratio 2
address 192.168.102.50 ratio 1
address 192.168.103.50 ratio 1
}
pool {
name "Pool_2"
ratio 1
preferred rr
address 192.168.102.60 ratio 2
address 192.168.103.60 ratio 1
}
}

Using the Dynamic Ratio option

When the Dynamic Ratio option is turned on, the 3-DNS Controller treats QOS scores as ratios, and it uses each server in proportion to the ratio determined by the QOS calculation. When the Dynamic Ratio option is turned off (the default), the 3-DNS Controller uses only the server with the highest QOS score for load balancing, (in which case it is a winner takes all situation) until the metrics information is refreshed.

To turn on the Dynamic Ratio option using the Configuration utility

  1. In the navigation pane, click Wide IPs.
  2. In the Wide IP column, click a wide IP name.
    The Modify Wide IP screen opens.
  3. On the toolbar, click Modify Pool.
    The Modify Wide IP Pools screen opens.
  4. In the Pool Name column, click the name of a pool.
    The Modify Load Balancing screen opens.
  5. Check Use Dynamic Ratio.
  6. Click Update.

To manually turn on the Dynamic Ratio option

  1. At the command prompt, type 3dnsmaint to open the 3-DNS Maintenance menu.
  2. On the 3-DNS Maintenance menu, select Edit 3-DNS Configuration to open the wideip.conf file.
  3. Locate the wideip statement and the pool definition you want to edit.
  4. Add the syntax (shown in bold in Figure 7.4 ) to the pool definition.

Figure 7.4 Enabling dynamic ratio in a pool configuration

   pool {    
name <"pool_name">
[ ratio <pool_ratio> ]
dynamic_ratio yes
[ rr_ldns < yes | no > ]
[ rr_ldns_limit <number> ]
[ preferred < completion_rate | ga | hops | kbps | leastconn |
packet_rate | qos | random | ratio | return_to_dns | rr |
rtt | static_persist | topology | vs_capacity | null > ]
[ alternate < ga | kbps | null | random | ratio | return_to_dns |
rr | static_persist | topology | vs_capacity > ]
[ fallback < completion_rate | ga | hops | kbps | leastconn |
packet_rate | qos | random | ratio | return_to_dns | rr |
rtt | static_persist | topology | vs_capacity | null > ]
address <vs_addr>[:<port>] [ratio <weight>]
}
}

Setting up Global Availability mode

The Global Availability mode repeatedly selects the first available virtual server in a wide IP definition to respond to DNS queries. If that virtual server becomes unavailable, subsequent connections go to the next listed virtual server in the wide IP definition.

The 3-DNS Controller always starts with the first virtual server in the list. Over time, the first server in the list receives the most connections, and the last server in the list receives the fewest connections. Figure 7.5 shows the 3-DNS Controller using the global availability load balancing mode.

Figure 7.5 Global Availability mode

To implement the Global Availability load balancing mode using the Configuration utility

  1. In the navigation pane, click Wide IPs.
  2. In the Wide IP column, click a wide IP name.
    The Modify Wide IP screen opens.
  3. On the toolbar, click Modify Pool.
    The Modify Wide IP Pools screen opens.
  4. In the Pool Name column, click the name of a pool.
    The Modify Load Balancing screen opens.
  5. Select Global Availability as the Preferred, Alternate, or Fallback load balancing mode.
  6. Click Update.
  7. A popup screen appears, indicating that with the Global Availability load balancing mode you must order the virtual servers. Click OK.
    The Modify Virtual Servers screen opens.
  8. In the Order column, specify the order in which you want to list the virtual servers for Global Availability.
  9. Click Update.

To implement the global availability load balancing mode using the command line utility

  1. At the command prompt, type 3dnsmaint to open the 3-DNS Maintenance menu.
  2. On the 3-DNS Maintenance menu, select Edit 3-DNS Configuration to open the wideip.conf file.
  3. Locate the wideip statement you want to edit.
  4. Define global availability as the preferred, alternate, or fallback load balancing mode.
  5. List the virtual servers in descending order of preference. See Figure 7.6 for details.

A Global Availability configuration example

With the global availability load balancing mode, you can configure one data center as your primary service and have several alternate services on standby. In the wideip statement, list the virtual servers in descending order of preference. The first available virtual server is chosen for each resolution request.

Figure 7.6 shows a sample wideip definition where global availability is the preferred load balancing mode.

Figure 7.6 Configuring a standby data center using Global Availability

 // Global availability    
wideip {
address 192.168.101.60
port 80 // http
name "cgi.wip.domain.com"
pool {
name "mypool"
preferred ga
address 192.168.101.60
address 192.168.102.60
address 192.168.103.60
}
}

The first listed virtual server (192.168.101.60 in this example) receives all resolution requests unless it becomes unavailable. If the first listed virtual server does become unavailable, then the 3-DNS Controller sends resolution requests to the second listed virtual server, and so on.

Setting up load balancing for services that require multiple ports

Some sites require that you use multiple ports or services to access them, for example an e-commerce site. For these cases, you can configure a wide IP so that connections are not sent to a given address unless all specified ports or services are available.

To configure multiple ports for a wide IP using the Configuration utility

  1. In the navigation pane, click Wide IPs.
  2. In the Wide IP column, click a wide IP name.
    The Modify Wide IP screen opens.
  3. On the toolbar, click Port List.
    The Wide IP Port List screen opens.
  4. Type a port number in the box or select a service from the list, then click the right arrow button.
  5. Repeat step 4 for each port or service you need to add.
  6. Click Update.

To manually configure multiple ports for a wide IP

  1. At the command prompt, type 3dnsmaint to open the 3-DNS Maintenance menu.
  2. On the 3-DNS Maintenance menu, select Edit 3-DNS Configuration to open the wideip.conf file.
  3. Locate the wideip statement you want to edit.
  4. Add the port_list line as indicated in bold in Figure 7.7 .

    Figure 7.7 Enabling multiple ports with the port_list option

     wideip {    
    address <ip_addr>
    port <port_number> | <"service name">
    name <"domain_name">
    [ alias <"alias_name"> ]
    [ ttl <number> ]
    [ port_list <port_number> <port_number> ... ]
    [ qos_coeff {
    rtt <n>
    completion_rate <n>
    packet_rate <n>
    topology <n>
    hops <n>
    vs_capacity <n>
    kbps <n>
    } ]
    [ pool_lbmode <rr | ratio | ga | random | topology> ]
    [ pool definitions ...]

An example configuration for e-commerce services

In this example, you are setting up a site for selling a product on the Internet. This site contains a non-secure area that contains the product catalog, and a secure area for placing orders. You can configure a wide IP so that clients are sent to a virtual server only when both the secure and non-secure areas are available.

The key entry for this configuration is port_list. The port_list entry specifies that requests can be sent to virtual servers in this pool only if ports 80 (non-secure area) and 443 (secure area) are available.

Figure 7.8 Syntax for e-commerce services

 wideip {    
address 192.168.101.70
port 80 // http
port_list 80 443 // e-commerce
name "ssl.wip.domain.com"
pool_lbmode rr
pool {
name "bigip_pool"
ratio 2
preferred qos
alternate ratio
address 192.168.101.70 ratio 7
address 192.168.102.60 ratio 2
}
pool {
name "host_pool"
ratio 1
preferred ratio
address 192.168.104.50 ratio 2
address 192.168.105.60 ratio 1
}
}

For every virtual server address in the pool, a virtual server definition must exist for each port in the port list. For the syntax example shown in Figure 7.8 , the BIG-IP Controllers and host machines must have the following virtual servers defined:

192.168.101.70:80

192.168.101.70:443

192.168.102.60:80

192.168.102.60:443

192.168.104.50:80

192.168.104.50:443

192.168.105.60:80

192.168.105.60:443

Ensuring availability for e-commerce, FTP, and other services that use multiple ports

Before the 3-DNS Controller selects a virtual server to receive a connection, it verifies that the virtual server is up and available. Certain types of network traffic, such as FTP traffic or e-commerce traffic, require that more than one port be available in order for the client's requests to be properly handled. For example, FTP servers use both ports 20 and 21, while e-commerce sites typically require that both ports 80 and 443 are available to handle HTTP and SSL traffic.

When you set up a load balancing configuration, you can define a port list for a wide IP. When the 3-DNS Controller receives a query, all of the ports in the port list must be available for each virtual server in the wide IP. If a virtual server does not have all ports in the port list available, the 3-DNS Controller marks it as unavailable for load balancing.

To add a port list for a wide IP using the Configuration utility

  1. In the navigation pane, click Wide IPs.
    The Wide IPs List screen opens.
  2. Click the name of the wide IP to which you want to add a port list.
    The Modify Wide IP screen opens.
  3. Click Port List on the toolbar.
    The Wide IP Port List screen opens.
  4. Add the ports to the port list for the wide IP, and click Update. For more information about this screen, click Help on the toolbar.
Table of Contents   |   << Previous Chapter   |   Next Chapter >>

Was this resource helpful in solving your issue?




NOTE: Please do not provide personal information.



Incorrect answer. Please try again: Please enter the words to the right: Please enter the numbers you hear:

Additional Comments (optional)