Adobe Connect User Community


Send this page





Bookmark and Share

Home >  Learning Center >  Tutorials >  Clustering Connect Pro Servers with Microsoft Network Load Balancing

Clustering Connect Pro Servers with Microsoft Network Load Balancing

Frank S. DeRienzo, MBA, Adobe Systems

April 2009

Expertise Level: Administrator

  
1 Votes

Many software-based server load-balancing and failover options have prematurely reached the end of the product life cycle. The market prediction that effectively swept software-based options off the enterprise landscape was that the price of superior hardware-based solutions would decrease enough to make the software options superfluous. The problem with this prediction is obvious to anyone who has tried to cluster a small pool of application servers on a tight budget: the price of the hardware options that are worth having have not dropped enough to fill the niche occupied by software clustering applications.

Although the hardware-based options are more robust, the niche for software options remains even though options have diminished. The key player left in this field of diminishing options is Microsoft Network Load Balancing (NLB); it is built into the Microsoft Windows Server 2003 TCP/IP stack as a standard option. If configured properly, NLB can be used to cluster a pool of Connect Pro servers and provide a means of IP-based failover. This article describes how to use NLB to cluster a pair of Connect Pro servers running Connect Pro Meeting with a full suite of options.

To complete this tutorial you will need to install the following software and files:
  • Adobe Acrobat Connect Professional server deployed on premise
  • Microsoft Windows Server 2003

Prerequisite knowledge

You need basic networking skills, familiarity with the Windows Server 2003 IP stack and NLB as well as with DNS name resolution.

Note:
This article is intended as a supplement to the NLB documentation provided by Microsoft; it is not exhaustive and does not serve as a replacement for NLB documentation. For details on NLB, see the Windows Server 2003 Network Load Balancing (NLB) Technical Library. This article is also a supplement to the Connect Pro Admin Guide, and as such does not provide all the information needed to fully install and configure Connect Pro servers.

Table of contents

Setting up DNS name resolution
Configuring the IP stack on each server to support NLB with Connect
Clustering Connect Enterprise Server with NLB


Setting up DNS name resolution

As with any major web server deployment, it is best to begin in a lab environment where you can become familiar with the configuration. The place to start is on your lab DNS server, where you will map out the name resolution and reserve IP addresses for the cluster. In this article, you will configure a two-server cluster with a remote SQL database server.

You will need a fully qualified domain name (FQDN) as an administrative address for each of the Connect Pro servers (see Table 1); if you do not have a DNS server in your test lab, you may use host files.


Table 1. FQDNs for Adobe Connect Enterprise Server

IP Address Hostname

10.10.10.1

criseyde.enterprisecluster.com

10.10.10.4

troilus.enterprisecluster.com

 

You will need an FQDN for each Connect Pro Server running on each server platform; since you will need one for each server, the name connectappc will be used on the server with the administrative name Criseyde and connectappt will be used on the server with the administrative name Troilus, as shown in Table 2.

Table 2. NLB Host Application Names

IP Address Hostname

10.10.10.2

connectappc.enterprisecluster.com

10.10.10.5

connectappt.enterprisecluster.com

 

For each Adobe Acrobat Connect Professional server, you will need a separate IP address and FQDN; you should not use the same IP address for Adobe Connect Pro Server (origin) and the Adobe Acrobat Connect Pro Meeting server (external name) when employing NLB for reasons that I will explain later when I show you how to configure the IP stack on each server. The external name connectprofc will be used on the server with the administrative name Criseyde and connectproft will be used on the server with the administrative name Troilus (see Table 3).

Table 3. Meeting Names

IP Address Hostname

10.10.10.3

connectprofc.enterprisecluster.com

10.10.10.6

connectproft.enterprisecluster.com

 

You will need a FQDN for a shared NLB address that will serve as the primary name used to gain access to the Connect Pro cluster; the name corresponding to this virtual IP address (VIP) appears in the URL line of meetings and presentations that are hosted on the Connect Pro cluster, as shown in Table 4.

Table 4. NLB Shared VIP Name

IP Address Hostname

10.10.10.7

connect.enterprisecluster.com

If your proof of concept lab includes a SQL server, and at least one client to test connectivity, the DNS server will look like Figure 1.

Figure 1

Figure 1. DNS server

 

Configuring the IP stack on each server to support NLB with Connect Pro

Each server must have at least two network interface cards (NICs). If your infrastructure requires that your administrative FQDNs be hosted on a separate subnet, then each server will need three NICs. For simplicity, I will use the two-NIC configuration in this example.

The first NIC on each server hosts the administrative IP address and the Adobe Acrobat Connect Professional server IP address. The second NIC on each server hosts the Adobe Connect Enterprise Server IP address and the shared NLB VIP address (see Figure 2).


Figure 2
Figure 2. NIC Configuration


Do not enable NLB on the first NIC; leave the check box for NLB in Local Area Connection Properties deselected on the first NIC on each server (see Figure 3). For this example, keep the Connect Pro server IP address on a NIC separate from the NIC on which we will run NLB.


Figure 3

Figure 3. NIC 1 properties


Note: If the NLB option does not appear in Local Area Connection Properties on each NIC, you will need to install NLB through the Add or Remove Programs > Windows Programs option in the server Control Panel.

Open Advanced TCP/IP Properties and bind 10.10.10.1 and 10.10.10.3 to the first NIC on the Connect Enterprise server with the administrative name Criseyde as depicted in Figure 2 earlier (see Figure 4).

Figure 4
Figure 4. NIC 1 Advanced TCP/IP settings

Similarly, on the first NIC on the second Connect Pro server with the administrative name Troilus, bind 10.10.10.4 and 10.10.10.6; as on Criseyde, do not enable NLB on this NIC, but make sure it is installed on the server and appears as an option.

At this point you have configured the first NIC on each server; next, follow these steps to get ready to configure NLB on to the second NIC:

  1. On the second NIC on Criseyde, bind the IP address 10.10.10.2 corresponding to connectappc.enterprisecluster.com.
  2. On the second NIC on Troilus, bind the IP address 10.10.10.5 corresponding to connectappt.enterprisecluster.com.
  3. Save the settings.

Before you configure NLB, test the current configuration of the IP stack by opening a command prompt and testing the names with the Packet Internet Groper (ping):

ping criseyde.enterprisecluster.com (reply should be 10.10.10.1)
ping troilus.enterprisecluster.com (reply should be 10.10.10.4)
ping connectappc.enterprisecluster.com (reply should be 10.10.10.2)
ping connectappt.enterprisecluster.com (reply should be 10.10.10.5)
ping connectprofc.enterprisecluster.com (reply should be 10.10.10.3)
ping connectproft.enterprisecluster.com (reply should be 10.10.10.6)

The nslookup should be a basic test whether ping works or not and it applies to the next set of commands:

nslookup criseyde.enterprisecluster.com (should resolve to 10.10.10.1)
nslookup troilus.enterprisecluster.com (should resolve to 10.10.10.4)
nslookup connectappc.enterprisecluster.com (should resolve to 10.10.10.2)
nslookup connectappt.enterprisecluster.com (should resolve to 10.10.10.5)
nslookup connectprofc.enterprisecluster.com (should resolve to 10.10.10.3)
nslookup connectproft.enterprisecluster.com (should resolve to 10.10.10.6)

Edit DNS as needed.

After you have confirmed that all the names correctly respond to ping, enable NLB on the second NIC on each server by selecting the check box beside the NLB option under Local Area Connection Properties (see Figure 5); this process may take a few minutes to complete.

Figure 5
Figure 5. NIC 2 properties

On Criseyde, open the NLB Properties dialog box and enter the IP address corresponding to the VIP in the shared IP address block, 10.10.10.7; in the Full Internet name text box, enter the FQDN of the outward-facing NLB VIP (nlbappvip.enterprisecluster.com) and choose the Multicast cluster operation mode (see Figure 6).


Figure 6
Figure 6. NIC 2 NLB properties

Next, click the Host Parameters tab and enter the IP address of the Adobe Connect Enterprise Server connectappc: 10.10.10.2 (see Figure 7), and then save your changes.

Figure 7
Figure 7. NIC 2 NLB host parameters

Next, go to Advanced TCP/IP Settings on the same NIC and bind 10.10.10.7, the shared VIP address,  to the NIC directly under the host IP address, 10.10.10.2 (see Figure 8). Save the changes.

Figure 8
Figure 8. NIC 2 advanced TCP/IP settings

On Troilus, open the NLB Properties dialog box and enter the IP address corresponding to the VIP in the shared IP address block: 10.10.10.7; in the Full Internet name text box, enter the FQDN of the outward-facing NLB VIP (connect.enterprisecluster.com) and choose the Multicast cluster operation mode (see Figure 9).

Figure 9
Figure 9. NIC 2 NLB properties

 

Next, click the Host Parameters tab and enter the IP address of the Connect Pro Server connectappt: 10.10.10.5 (see Figure 10). Check the Priority (unique host identifier): parameter. These must be different on each server giving priority to one of the servers over the other. You may toggle this to the number 2 on either server preferably the most powerful of the two should get a Priority designator of 1.

Figure 10
Figure 10. NIC 2 NLB host parameters

Save your changes, then go to Advanced TCP/IP Settings on the same NIC and bind 10.10.10.7 to the NIC directly under the host IP address, 10.10.10.5 (see Figure 11). Save the changes.

Figure 11
Figure 11. NIC 2 advanced TCP/IP settings

Note: To review the potential effects and behavior of NLB in multicast mode, see the article entitled, Adjusting Multicast Parameters. In some cases (if your servers are connected to a hub instead of directly to a switch) you may need to select the check box in NLB for IGMP Multicast. Discuss this with your network infrastructure administrator to make sure that you configure Multicast to limit port flooding and work in harmony with your switches and hubs.

Restart both NLB (soon to be Connect Pro) servers, and then test the NLB shared IP address with ping:

ping connect.enterprisecluster.com

If the ping command fails, review the NICs for correct configuration and test name resolution with the nslookup command; make sure your test client is pointed to the correct DNS server.

nslookup connect.enterprisecluster.com

You should also view and troubleshoot the NLB configuration with the NLB manager. To ensure that NLB is not using server affinity, select Start > All Programs > NLB Manager > Cluster > Connect to Existing.

Type in the IP address on of an NLB host: 10.10.10.3. When connected, go to the cluster level, right-click the little computer pair beside the host name and select Cluster Properties > Port Rules > Edit. Under Filtering Mode, verify that the Multiple Host option is selected and set affinity to None.

It is good practice to use the NLB manager, but in some cases you will find it necessary to directly configure NLB under the Local Area Connection Properties on the individual servers; anything that can be configured through the NLB manager can also be configured directly under Local Area Connection Properties on each server. It is quick and easy to review and troubleshoot NLB using the NLB manager GUI (see Figure 12).


Figure 12
Figure 12. NLB Cluster Manager view

The IP stack on each server is now configured with NLB to accommodate Connect; now you can integrate Connect with NLB.

 

Clustering Connect Enterprise Server with NLB

Make sure you have a Connect Pro Cluster license. This configuration will not work with a single server license. If you have not done so already, install Connect Pro on each server following the procedure in the Connect Pro Installation and Configuration Guide up to the point of installing the license and adding administrators.

Note: You may want to disable the NLB cluster temporarily by deselecting the NLB check box on the second NIC on each server before installing Connect Pro; then reselect NLB after the Connect Pro installation is complete. NLB will maintain its settings through this process.

Following this example, when configuring Connect Pro, you place the names shown in Figure 13 into the Host and External name text boxes under Network Settings on the Server Settings screen of Connect Pro.

Figure 13
Figure 13. Connect Pro Server settings

The Connect Host parameter is the name corresponding to the shared NLB address, connect.enterprisecluster.com. Through NLB, this shared address is hosted by 10.10.10.2 on Criseyde, which corresponds to the Adobe Connect Pro Server name connectappc.enterprisecluster.com, and by 10.10.10.5 on Troilus, which corresponds to the Connect Pro Server name connectappt.enterprisecluster.com.

Note also that you enter the names of each Connect Pro Meeting server as the external name: connectprofc.enterprisecluster.com corresponds to the administrative name Criseyde, and connectproft.enterprisecluster.com corresponds to the administrative name Troilus. When you configure these settings in Connect Pro on one of the servers, you will see the settings propagate and appear on the other server in the cluster.

Next, test your cluster:

  1. Log in to Connect Pro Central from the client, and upload content (a JPG file is fine) to the Content Library. (You will need author permission.) Make sure it can be viewed.
  2. Create a Connect Pro meeting room and upload content into the room; make sure it can be viewed.
  3. Pull content into the meeting room from the Content Library, and make sure it can be viewed.
  4. While in a meeting room, click the Help tab and holding down the shift key, scroll to and click About Connect Pro Meeting.
  5. Determine from the RTMP path whether you are on Troilus or Criseyde; the second named parameter presented in the string shows which platform is hosting the Meeting room, while the first server displayed shows the path to the Meeting room.
  6. Shut down the Connect Pro server that is hosting your Acrobat Connect Pro meeting (Troilus or Criseyde).

If your session indicator in the upper right corner of the meeting room goes from green to neutral and back to green, you have witnessed the failover of an Connect Pro meeting room. Seamless Connect Pro Meeting failover works with NLB if both Connect Pro servers are running when the meeting is initialized; when the server on which a meeting is hosted shuts down, the meeting will be reestablished on the remaining server in a matter of about 10 seconds. In the rare case that only one server is running when a meeting room is opened, a second server is brought online, and then the server hosting the meeting shuts down, the session will have to be reestablished manually.

You have successfully clustered Connect Pro with NLB. Figure 14 depicts how the lab environment might look if you followed the example closely.

Figure 14
Figure 14. The lab environment

View a demonstration of Connect Enterprise server failover in action >>

Resist the temptation to cluster the Connect Pro Meeting Server IP addresses. The Connect Pro Server takes care of the load balancing and failover of the Connect Pro Meeting servers; the purpose of NLB is to provide IP-level failover for the Adobe Connect Pro Server installations. By using NLB to make sure that a Connect Pro Enterprise Server is always available, you ensure that it can accomplish its task of managing failover and load balancing of the Connect Pro servers.

 

Where to go from here

Check out " Running OpenSSL with NLB-clustered Adobe Connect Pro Server." Also watch for future tutorials describing best practices for configuring Connect Pro Server pools behind hardware load-balancing devices. In the meantime, enjoy the savings commensurate with employing failover without investing in load-balancing hardware; with NLB, you are employing one of the last software-based load-balancing options widely available in the enterprise.

 

About the author

Before joining BrightTiger/Allaire/Macromedia/Adobe in June 1997, Frank S. DeRienzo had a distinguished military career with the U.S. Army Rangers and Special Forces. He is a graduate of Gordon College and holds an MBA from the University of Massachusetts. During his tenure with Adobe (and Macromedia before), he has focused on high availability and scalability through website clustering and web server integration with various hardware load-balancing and content-management platforms. Currently he is part of the Adobe Professional Services team, where his primary focus is on Adobe Connect Enterprise Server implementation and training.

 



Member Comments

Share your thoughts. Tell us what you think about this tutorial.

APRIL 22, 2010
I enjoyed very much this tutorial. It helped me a lot, however there is something that is not clear to me: I didn“t understand the real purpose of the "administrative IP address" (the "10.10.10.1" and "10.10.10.4" used in this tutorial). In which circunstance are they used?

Thanks a lot,

RPinto
roniedias@yahoo.com

RPinto

Log in to leave comments


<< Back to Tutorials main menu.