{"id":2862,"date":"2014-11-03T07:53:24","date_gmt":"2014-11-03T13:53:24","guid":{"rendered":"http:\/\/www.poweradmin.com\/blog\/?p=2862"},"modified":"2015-04-24T14:59:52","modified_gmt":"2015-04-24T19:59:52","slug":"configuring-network-load-balancing-in-windows-server","status":"publish","type":"post","link":"https:\/\/www.poweradmin.com\/blog\/configuring-network-load-balancing-in-windows-server\/","title":{"rendered":"Configuring Network Load Balancing in Windows Server"},"content":{"rendered":"<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-2879 size-full\" title=\"Network Load Balancing\" src=\"https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/network-load-balancing-tn1.png\" alt=\"Network Load Balancing\" width=\"200\" height=\"200\" srcset=\"https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/network-load-balancing-tn1.png 200w, https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/network-load-balancing-tn1-150x150.png 150w\" sizes=\"auto, (max-width: 200px) 100vw, 200px\">Services and applications that are affected by high load require technologies to address this issue. Network Load Balancing is a technology that allows system administrators to configure clusters that distribute traffic between several servers. Suppose you have a website that receives a large number of requests and cannot be handled by one server. In this case you would configure a NLB cluster to distribute traffic across multiple web servers and thus ensuring that the website can serve all requests.<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\">In this article I will show you how to configure <i>Network Load Balancing (NLB)<\/i> within your <a title=\"Server Monitoring Software\" href=\"https:\/\/www.poweradmin.com\/servermonitor\/video-library.aspx?VID=Okk8gbyVecY\">Windows Server infrastructure<\/a>. For this tutorial I will be using two virtual machines hosted in my VMWare testing environment. Without any delays let\u2019s open up the <i>Server Manager<\/i> console and install the <i>Network Load Balancing<\/i> feature. Note that this feature must be installed on both servers. Click on <i>Add roles and features<\/i> button and skip all pages until you reach the <i>Features<\/i> section. From the features list select <i>Network Load Balancing<\/i> and proceed with the installation. Note that Powershell support for NLB will also be installed:<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2864 size-full\" title=\"Network Load Balancing Installation\" src=\"https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/network-load-balancing-installation.png\" alt=\"Network Load Balancing Installation\" width=\"796\" height=\"562\" srcset=\"https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/network-load-balancing-installation.png 796w, https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/network-load-balancing-installation-300x211.png 300w\" sizes=\"auto, (max-width: 796px) 100vw, 796px\"><\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\">Once the install operation is completed, open the <i>Network Load Balancing Manager<\/i> console from <a title=\"20 Windows Tools Every SysAdmin Should Know\" href=\"https:\/\/www.poweradmin.com\/blog\/top-20-windows-tools-every-sysadmin-should-know\/\"><i>Administrative Tools<\/i><\/a>.<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\">Within the <i>NLB<\/i> <i>console<\/i>, click on <i>Cluster<\/i> from the upper menu and select <i>New<\/i>. Now enter the local server IP address and click on <i>Connect<\/i>. Select one of the available network interfaces that will be part of the NLB process and proceed with the following section. I\u2019ve added one of my two servers to the cluster, you will need to add the second machine afterwards.<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2865 size-full\" title=\"New NLB Cluster Parameters\" src=\"https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/new-nlb-cluster-parameters.png\" alt=\"New NLB Cluster Parameters\" width=\"483\" height=\"454\" srcset=\"https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/new-nlb-cluster-parameters.png 483w, https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/new-nlb-cluster-parameters-300x281.png 300w\" sizes=\"auto, (max-width: 483px) 100vw, 483px\"><\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\">In the following section we\u2019ll need to configure the priority of the specified server and the initial host state. Note that you can <a title=\"Smart Config adding IP Addresses in PA Server Monitor\" href=\"https:\/\/www.poweradmin.com\/\/help\/sm_5_6\/config_smart_configuration.aspx\">add multiple IP addresses<\/a> for one host. Continue the wizard by pressing the <i>Next<\/i> button. We\u2019ll need to assign an IP address for the load balancing cluster that is shared between all nodes. This IP address is not physically assigned to a network card and instead a virtual network adapter is created. Note that you can add multiple IPs for load balancing, but the first one will be considered the primary address. For testing purposes I will add a random IP address:<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2868 size-full\" title=\"NLB Cluster IP Addresses\" src=\"https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/nlb-cluster-ip-addresses.png\" alt=\"NLB Cluster IP Addresses\" width=\"482\" height=\"453\" srcset=\"https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/nlb-cluster-ip-addresses.png 482w, https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/nlb-cluster-ip-addresses-300x281.png 300w\" sizes=\"auto, (max-width: 482px) 100vw, 482px\"><\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\">The next section is used to configure cluster parameters. Enter the cluster full internet name (in my example <i>cluster1.ppscu.com<\/i>) and the cluster\u2019s operation mode. A NLB cluster must operate in one of the following modes:<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\"><i>Unicast<\/i> \u2013 the MAC address of the cluster virtual network adapter is shared with all cluster nodes. If your servers have only one network adapter then the MAC address of the VNA replaces the MAC address of the physical interface. By using only one network adapter on each server, communication will be made only with devices that are part of the same subnet as the given node. It\u2019s recommended that you use two network adapters for each node, one used for load balancing and the other one for server management.<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\"><i>Multicast<\/i> \u2013 the server will retain its original MAC and IP address while also using the MAC and IP address of the cluster\u2019s virtual network adapter. All devices from all subnets can communicate with the node, but multicasting is used for cluster communication.<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\"><i>IGMP Multicast<\/i> \u2013 uses the <i>IGMP<\/i> protocol (<i>Internet Group Management Protocol<\/i>) to increase network performance by using multicast clients registered to a IGMP multicast server.<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\">From the three available options, choose multicast and proceed with the next section:<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2869 size-full\" title=\"NLB IGMP Multicast\" src=\"https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/nlb-igmp-multicast.png\" alt=\"NLB IGMP Multicast\" width=\"482\" height=\"454\" srcset=\"https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/nlb-igmp-multicast.png 482w, https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/nlb-igmp-multicast-300x282.png 300w\" sizes=\"auto, (max-width: 482px) 100vw, 482px\"><\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\">From the port rules section we configure how traffic is managed on the NLB cluster. By specifying the designated port or port range you filter packets so that only desired traffic is received by the NLB cluster:<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2871 size-full\" title=\"NLB Specify Port or Port Range\" src=\"https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/nlb-specify-port-or-port-range.png\" alt=\"NLB Specify Port or Port Range\" width=\"483\" height=\"454\" srcset=\"https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/nlb-specify-port-or-port-range.png 483w, https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/nlb-specify-port-or-port-range-300x281.png 300w\" sizes=\"auto, (max-width: 483px) 100vw, 483px\"><\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\">Rules can be created on each of the cluster\u2019s IP address. By pressing the <i>Edit<\/i> button we configure the <i>port range<\/i>, <i>protocol<\/i> (<i>TCP<\/i> or <i>UDP<\/i>) and the <i>filtering mode<\/i>. There are three available filtering methods, as follows:<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\"><i>Multiple host<\/i> \u2013 used to configure all nodes within the NLB cluster to respond to requests. The node\u2019s affinity determines which of the cluster\u2019s servers handles the traffic. There are three options available here:<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\">\u00b7 <i>None<\/i> \u2013 traffic is distributed between all cluster nodes<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\">\u00b7 <i>Single<\/i> \u2013 uses all nodes to handle NLB traffic, but a node will receive all traffic for a specific request. This is used when stateful connections are used and is the default option. The timeout parameter is configured to discard connections once a connection passes a certain period of time.<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\">\u00b7 <i>Network<\/i> \u2013 redirects client requests to the closest available node. Just like netmask ordering, requests are sent to the appropriate node based on the subnet of the client.<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\"><i>Single host<\/i> \u2013 in this mode the traffic that matches a filtering rule will be handled by one node only.<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\"><i>Disable this port range<\/i> \u2013 this mode is used to block the traffic sent on the specified ports.<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2867 size-full\" title=\"NLB Add or Edit Port Rule\" src=\"https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/nlb-add-or-edit-port-rule.png\" alt=\"NLB Add or Edit Port Rule\" width=\"371\" height=\"460\" srcset=\"https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/nlb-add-or-edit-port-rule.png 371w, https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/nlb-add-or-edit-port-rule-241x300.png 241w\" sizes=\"auto, (max-width: 371px) 100vw, 371px\"><\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\">The newly created node will appear in the NLB Manager console. We will add the second server by <i>right clicking<\/i> the cluster and selecting <i>Add Host to Cluster:<\/i><\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2866 size-full\" title=\"NLB Add Host to Cluster\" src=\"https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/nlb-add-host-to-cluster.png\" alt=\"NLB Add Host to Cluster\" width=\"1074\" height=\"619\" srcset=\"https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/nlb-add-host-to-cluster.png 1074w, https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/nlb-add-host-to-cluster-300x172.png 300w, https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/nlb-add-host-to-cluster-1024x590.png 1024w\" sizes=\"auto, (max-width: 1074px) 100vw, 1074px\"><\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\">Now you will need to follow the same procedure as we did earlier for the first node. Once the wizard is completed, the second node will be added to the NLB cluster.<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2870 size-full\" title=\"NLB Manager Add Node to Cluster\" src=\"https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/nlb-manager-add-node-to-cluster.png\" alt=\"NLB Manager Add Node to Cluster\" width=\"1074\" height=\"621\" srcset=\"https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/nlb-manager-add-node-to-cluster.png 1074w, https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/nlb-manager-add-node-to-cluster-300x173.png 300w, https:\/\/www.poweradmin.com\/blog\/wp-content\/uploads\/2014\/11\/nlb-manager-add-node-to-cluster-1024x592.png 1024w\" sizes=\"auto, (max-width: 1074px) 100vw, 1074px\"><\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: 12pt;\">With this NLB cluster we can now distribute traffic destined for our applications between these two hosts. I\u2019ve used this type of configuration when balancing traffic between <a title=\"How to Monitor IIS\" href=\"https:\/\/www.poweradmin.com\/help\/sm_5_6\/howto_monitor_iis.aspx\">two IIS servers<\/a>. The port rules where handling only HTTP (port 80) and HTTPS (port 443) traffic. Most enterprises use dedicated network devices for load balancing such as Netscaler, Cisco Ace, etc, but it\u2019s good to remember that Windows Server Editions can support this feature as well. Hope this article will serve you well in understanding how this technology works and how to install and configure NLB clusters. For any questions don\u2019t hesitate to use our comments section and I will respond as soon as possible. Wish you a great day and stay tuned for the following articles.<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Services and applications that are affected by high load require technologies to address this issue. Network Load Balancing is a technology that allows system administrators to configure clusters that distribute traffic between several servers. Suppose you have a website that receives a large number of requests and cannot be handled by one server. In this [&hellip;]<\/p>\n","protected":false},"author":4,"featured_media":2879,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4,5,9,8],"tags":[],"class_list":["post-2862","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-general-it","category-how-to","category-technical","category-windows"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.poweradmin.com\/blog\/wp-json\/wp\/v2\/posts\/2862","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.poweradmin.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.poweradmin.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.poweradmin.com\/blog\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/www.poweradmin.com\/blog\/wp-json\/wp\/v2\/comments?post=2862"}],"version-history":[{"count":5,"href":"https:\/\/www.poweradmin.com\/blog\/wp-json\/wp\/v2\/posts\/2862\/revisions"}],"predecessor-version":[{"id":3452,"href":"https:\/\/www.poweradmin.com\/blog\/wp-json\/wp\/v2\/posts\/2862\/revisions\/3452"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.poweradmin.com\/blog\/wp-json\/wp\/v2\/media\/2879"}],"wp:attachment":[{"href":"https:\/\/www.poweradmin.com\/blog\/wp-json\/wp\/v2\/media?parent=2862"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.poweradmin.com\/blog\/wp-json\/wp\/v2\/categories?post=2862"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.poweradmin.com\/blog\/wp-json\/wp\/v2\/tags?post=2862"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}