SDN Adaptive Load Balancing

1 Introduction

The KEMP LoadMaster contains adaptive load balancing technology which can be used with a Software Defined Networking (SDN) Controller. In traditional networks, there is no end-to-end visibility of network paths and applications are not always routed optimally. The LoadMaster, integrated with an SDN Controller solution, solves this problem by making the critical flow pattern data available.

The LoadMaster pulls the Layer 2/Layer 3 information from the switches in the network via the SDN Controller. The LoadMaster combines the Layer 2/3 information with the Layer 4/7 information to make more optimized traffic distribution decisions. The LoadMaster can be used to provide end-to-end visibility of network paths for optimal routing of applications across the server and switching infrastructure.

The KEMP SDN solution provides greater efficiency by enabling:

Application visibility to the network

Network data to be pulled by the Application Delivery Controller (ADC)

Adaptive load balancing

A Virtual Service which is using an adaptive scheduling method can be viewed as a control system. The intent is to dynamically distribute load over the Real Servers.

1.1 Document Purpose

The purpose of this document is to describe how to connect the LoadMaster to an SDN Controller and how to configure the Virtual Services to use SDN adaptive load balancing.

1.2 Intended Audience

This document is intended to be read by anyone who is interested in finding out how to configure the SDN adaptive settings in the KEMP LoadMaster.

2 SDN Adaptive Load Balancing

2.1 Prerequisites

Before using the SDN adaptive feature in the LoadMaster, the SDNAdaptiv and Python add-ons must be installed. To check if these add-ons are already installed, in the main menu of the LoadMaster Web User Interface (WUI) - go to System Configuration > System Administration > Update Software.

Prerequisites.png

Any installed add-ons will be listed in the Installed Addon Packages section.

If an installed add-on package cannot be started, the text will display in red and the hover text says the package could not be started. If this is the case, try rebooting the LoadMaster (System Configuration > System Administration > System Reboot > Reboot).

The latest versions of these add-ons are available on the KEMP Technologies website: http://kemptechnologies.com. To install the add-ons - download them from the website, go to the Update Software screen in the LoadMaster WUI, then upload and install the packages. Then, reboot the LoadMaster to activate the add-ons (System Configuration > System Administration > System Reboot > Reboot).

2.2 Configure the LoadMaster

First, connect the LoadMaster to the SDN Controller. Then, configure the Virtual Service(s) to use resource-based (SDN adaptive) scheduling. Refer to the sections below for step-by-step instructions on how to do this.

2.2.1 Connect the LoadMaster to the SDN Controller

To configure the SDN settings in the LoadMaster, follow the steps below:

1. In the main menu of the WUI, go to System Configuration > Miscellaneous Options > SDN Configuration.

2. Click Add New.

Connect the LoadMaster to.png

Keep the Cluster field set to the default value.

3. Enter the IPv4 address of the SDN Controller in the IPv4 text box.

4. Enter the Port of the SDN Controller Web Interface in the Port text box and click Add.

The default Port for the HP VAN Controller is 8443.

The default Port for the OpenDaylight SDN Controller is either 8181 or 8080.

5. Click Mod.

Connect the LoadMaster to_1.png

6. Select the relevant value in the HTTPS drop-down list.

This should be set to True for the HP VAN Controller.

This should be set to False for the OpenDaylight SDN Controller.

7. Enter the username to be used to access the SDN Controller in the User text box.

8. Click Set User.

9. Enter the password of the user to be used to access the SDN Controller in the Password text box.

10. Click Password.

11. Click Back.

Connect the LoadMaster to_2.png

The Name, Version and Credentials will be displayed if the LoadMaster has successfully connected to the SDN Controller. If the connection is not working, refer to the Debug Options section to find out about debug options that can be used to help troubleshoot the problem.

2.2.2 Configure the SDN Adaptive Parameters

The SDN adaptive parameters can be configured by going to Rules & Checking > Check Parameters in the LoadMaster WUI.

Configure the SDN Adaptive.png

The SDN Adaptive Parameters section contains the following fields:

Adaptive Interval (sec): When using SDN-adaptive scheduling, the SDN Controller is polled to retrieve the port statistics values for each Real Server. This field value specifies how often this occurs.

Average over <N-Avg> Load values: Use this value to dampen fluctuations in the system. This ensures that the adaptive value and weight of the Real Servers do not change too frequently which provides a more stable and consistent traffic flow. The default and recommended value for this field is 6.

UseMin. Control Variable Value (%): Anything below the value set here is considered idle traffic and it does not affect the adaptive value (which is displayed on the Real Servers Statistics screen), for example - in the screenshot above anything below 5% is considered idle.

Use relative Bandwidth: Use the maximum load observed on the link as the link bandwidth. KEMP recommends enabling this option. If this option is not selected then we use the real bandwidth.

Reset values: The Reset values check box will appear if the Use relative Bandwidth check box is enabled. Ticking Reset values will reset the maximum load values which have been observed.

Reset values to Default: Clicking this button will reset the SDN adaptive parameters to their default values.

2.2.3 Configure the Virtual Service(s)

To configure the Virtual Service(s) to use resource-based (SDN adaptive) scheduling, follow the steps below:

1. In the main menu of the LoadMaster WUI, select Virtual Services > View/Modify Services.

Configure the Virtual Service.png

2. Click Modify on the relevant Virtual Service.

3. Expand the Standard Options section.

Configure the Virtual Service_1.png

4. Select resource based (SDN adaptive) as the Scheduling Method.

The Virtual Service is now configured to use SDN adaptive scheduling.

2.2.4 View the OpenFlow Topology

The figure below illustrates a typical HP Van screen. This shows which switches are OpenFlow enabled and what Real Servers are connected to these switches.

This is important as it shows if the Real Servers on the LoadMaster are connected to OpenFlow switches.

View the OpenFlow Topology.png

To view the OpenFlow Topology, in the HP VAN SDN Controller WUI, go to General > OpenFlow Topology. The switch and Real Server details will be displayed there.

2.3 SDN Statistics

In order for all SDN statistics graphs to be displayed, the relevant Virtual Service(s) and Real Server(s) need to be added to the Historical Graphs view. To do this, follow the steps below in the LoadMaster WUI:

1. Go to Statistics > Historical Graphs.

SDN Statistics.png

2. Click the cog icon next to Virtual Services.

SDN Statistics_1.png

3. Select the relevant Virtual Services to enable the statistics graphs for.

4. Click the right arrow to enable them.

5. Click the close button.

6. Repeat the steps in the Real Servers section to add Real Servers, as needed.

After the Virtual Services and Real Servers have been added, go to SDN Statistics in the main menu of the LoadMaster WUI to view the SDN statistics.

SDN Statistics_2.png

Statistics will not be displayed unless the SDN Controller has been added and is communicating with the LoadMaster. If the Name, Version and Credentials are not displaying it means that the LoadMaster is not connected to the SDN Controller. This could mean that the configuration is not correct, or the SDN Controller is down.

Two types of statistics are displayed on this screen - network traffic and adaptive parameters:

Network traffic - this displays the number of bits and bytes transferred per second for each of the Real Servers. The maximum, average and minimum number of bits/bytes per second are shown.

Adaptive parameters - this displays details about the adaptive value (cntrl) and the weight.

2.3.1 Device Information

Device Information.png

Information about OpenFlow enabled switches on an SDN Controller can be viewed by clicking the device info button.

Further information can be seen by clicking the plus (+) button to expand each of the devices.

Device Information_1.png

The details provided on this screen are described in the table below.

Section

Name

Additional Information

 

 

Device Information

 

 

uid

The Unique Identifier (UID) for the device.

name

The name of the device.

type

The type of device.

vendor

The device vendor.

product

The type of product.

firmware

The firmware version of the device.

serial

The serial number of the device.

ip

The IP address of the device.

ifcount

The number of interfaces on the device.

 

status

The status of the device.

Port Information

id

The ID number of the port.

 

mac

The MAC address of the port.

2.3.2 Path Information

Path information can be viewed by clicking the path info button.

Path Information.png

 

The output is described in the table below.

Section

Name

Additional Information

path

dir

The direction of the path.

source

The source IP address.

dest

The destination IP address.

switch

idx

The index number of the switch along the path.

name

The name of the switch.

dpid

The Data Path ID (DPID) of the switch.

inport

 

idx

The switch port number of the inbound traffic.

name

The name of the inbound port.

byte

The number of bytes transferred on the port.

outport

idx

The switch port number of the outbound traffic.

 

name

The name of the outbound port.

 

byte

The number of bytes transferred on the port.

To view a graphical representation of the path, click the => or <= icon in the Dir column for the relevant path.

Path Information_1.png

This screen will display the LoadMaster, Real Server and any switches in between. The LoadMaster and Real Server are represented in brown. The LoadMaster is at the top and the Real Server is at the bottom.

The switches are represented in blue. The switch name will appear in the blue boxes if the SDN Controller picks it up.

The Data Path Identifier (DPID) of each switch on the network will be displayed on the right of the switches. The DPID is how the controller identifies the different switches.

The Media Access Control (MAC) address of the LoadMaster and Real Server will be displayed to the right of those devices. The IP address of the LoadMaster and Real Server will also be displayed on the left.

The colour of the paths are explained below:

Light green: Traffic is idle and the link is healthy.

Red: The path is congested with traffic.

Grey: The path between the LoadMaster and initial switch will always be shown as grey. All traffic leaves the LoadMaster so it will always be the most congested link.

So, in the example screenshot above - the path between the Path2 and Switch2 switches is healthy but the paths between Switch2 and Switch1 and the Real Server are congested.

The colour of the path may change as the path gets more or less congested. There is an array of red colours that can be displayed - the darker the red colour is, the more congestion is on the path.

2.3.3 Adaptive Values and Real Server Weights

To view the current adaptive values and Real Server weights, go to Statistics > Real Time Statistics > Real Servers in the main menu.

Adaptive Values and Real Server.png

The information which is gathered from the controller determines what the adaptive value is set to. As the adaptive value goes up, the weight of the Real Server goes down. If all adaptive values are the same, all weights will be the same. When the adaptive values are different the weights will change. The weight of the Real Servers determines where traffic is sent. The adaptive value ranges from the value set in the UseMin.Control Variable Value up to 100.

If a Real Server is configured in multiple Virtual Services, two numbers will be displayed for the weight - the first shows the average of the current weights over all Virtual Services that the Real Server is configured in. The second shows the number of Virtual Services that the Real Server is configured in. For example, a Weight of 972/2 means that the average weight of a Real Server which is configured in two Virtual Services is 972.

2.3.4 SDN Statistics mode

There are two modes that can be used to gather the SDN statistics.

SDN Statistics mode.png

The mode can be set by going to System Configuration > Logging Options > SDN Log Files > Debug Options and setting the SDNstats mode.

The modes are described below:

Mode 1: When set to mode 1, the statistics are taken from the switch port that is connected to the server and the statistics are relayed back to the LoadMaster.

Mode 2: When set to mode 2, the information is taken from all of the switch ports along the path.

2.4 SDN Log Files and Debug Options

2.4.1 View SDN Logs

To view the SDN logs, follow the steps below in the LoadMaster WUI:

1. In the main menu, go to System Configuration > Logging Options > SDN Log Files.

View SDN Logs.png

2. Click the expand/collapse selection (plus icon) button in the SDNstats Logs section.

3. Select the relevant log file to view.

The sdnstats.log file is the main, rolling log file. The .gz files are backups of logs for a particular day.

4. Click View.

A filter can be run on the log files by entering a word(s) or regular expression in the filter field and clicking the View button.

2.4.2 Clear Logs

To clear the SDN logs, follow the steps below in the LoadMaster WUI:

1. In the main menu, go to System Configuration > Logging Options > SDN Log Files.

Clear Logs.png

2. Click the expand/collapse selection (plus icon) button in the Clear Logs section.

3. Select the relevant log(s) to be cleared.

4. Click Clear to clear the logs.

A specific range of log files can be filtered by specifying a date range using the from and to fields. Specifying a date range will simply select the relevant log files that apply in the right-hand box. Individual log files can still be selected/deselected as needed on the right.

Important: If the sdnstats.log file is selected, all logs in that file will be cleared, regardless of what dates are selected in the date range fields.

2.4.3 Save Logs

To save the SDN logs, follow the steps below in the LoadMaster WUI:

1. In the main menu, go to System Configuration > Logging Options > SDN Log Files.

Save Logs.png

2. Click the expand/collapse selection (plus icon) button in the Save Logs section.

3. Select the relevant log(s) to be saved.

4. Click Save to save all logs.

A specific range of log files can be saved by selecting a date range using the from and to fields.

2.4.4 Debug Options

There are a few SDN adaptive-related debug options that can help with troubleshooting SDN issues. Details of each option are provided in the sections below.

2.4.4.1 Enable Debug Logging

If SDN adaptive-related problems are experienced, SDN Controller debug logging can be enabled. This can help to troubleshoot problems because, in addition to other data, the debug logs show the communication between the SDN Controller and the LoadMaster and if it has been successful or not. For more information, refer to the sections below.

Debug logging should only be enabled when troubleshooting because it will impact performance of the LoadMaster.

To enable debug logging, follow the steps below:

1. In the main menu, go to System Configuration > Logging Options > SDN Log Files.

Debug Options.png

2. Click Debug Options.

Debug Options_1.png

3. Click Enable Debug Log.

2.4.4.2 View the SDN Statistic Trace Logging

To view the SDN Controller debug logging, follow the steps below:

1. In the main menu, go to System Configuration > Logging Options > SDN Log Files.

Debug Options_2.png

2. Click the expand/collapse selection (plus icon) button in the SDNstats Traces section.

3. Select the relevant log file.

4. Click View.

5. A filter can be run on the log files by entering a word(s) or regular expression in the filter field and clicking the View button.

A filter can be run on the log files by entering a word(s) or regular expression in the filter field and clicking the View button.

Debug Options_3.png

The traces show probing results – this indicates if the LoadMaster can successfully communicate with the SDN controller.

2.4.4.3 Restart the SDN Service

When troubleshooting issues with SDN, the entire SDN service can be restarted. Restarting the connection will not affect any traffic connections - it restarts the daemon, resets the SDN adaptive values to the default of 5 and it re-establishes the connection between the LoadMaster and the SDN Controller.

This will restart the connection to all attached SDN Controllers.

To do this, follow the steps below in the LoadMaster WUI:

1. In the main menu, go to System Configuration > Logging Options > SDN Log Files.

Debug Options_4.png

2. Click Debug Options.

Debug Options_5.png

3. Click restart.

4. If successful, the Process ID will change to a new id.

5. The Process ID can be found by clicking the Debug button in System Configuration > Logging Options > System LogFiles and clicking the ps button.

2.5 Troubleshooting

Troubleshooting.png

In the above screenshot of the SDN Statistics screen, the Name, Version and Credentials are blank for the row with Cluster ID. If this is the case, it means that the LoadMaster is not communicating correctly with the SDN Controller. To try to resolve this, follow the steps below:

1. Ping the SDN Controller from the LoadMaster (System Configuration > Logging Options > System Log Files > Debug Options > Ping Host).

Troubleshooting_1.png

2. Recheck the IP address, port and credentials in the SDN Controller settings (System Configuration > Miscellaneous Options > SDN Configuration).

3. Restart the SDN daemon (System Configuration > Logging Options > SDN Log Files > Debug Options > Restart SDNstats service).

4. Enable SDN statistic debug logging (System Configuration > Logging Options > SDN Log Files > Debug Options > Enable SDNstats Debug Log). Then, view the SDN debug logs (System Configuration > Logging Options > SDN Log Files > SDNstats Traces). The logs will show what the LoadMaster passed to the SDN Controller.

 

References

Unless otherwise specified, the following documents can be found at http://kemptechnologies.com/documentation.

Web User Interface (WUI), Configuration Guide

Last Updated Date

This document was last updated on 12 October 2017.

Was this article helpful?

0 out of 0 found this helpful

Comments