Настройка nlb в windows server 2019

Network Load Balancing (NLB) is one of the supreme popular high availability and redundancy features assume in Windows Server 2019 based networks.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

High availability is one of the main key points to supply continued services. In lately, everyone wants the specified services on-demand. Organizations use different technologies and solutions to supply high availability and redundancy. Network Load Balancing (NLB) is one of the foremost popular high availability and redundancy features utilized in Windows Server 2019 based networks.

Setup Details.

SRV2019-DC

IP Address: 10.0.0.20

SRV2019-1

NLB
Node1

IP Address: 10.0.0.30

SRV2019-2

NLB
Node2

IP Address: 10.0.0.40

NLB IP Address 10.0.0.100

Installing the Network Load Balancing Feature on NLB nodes (SRV2019-1, SRV2019-2)

1- Install using power shell command or follow the below steps to enable NLB.

Install-windowsfeature NLB,RSAT-NLB

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

2- IIS Web Server

Install-WindowsFeature -name Web-Server -IncludeManagementTools

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

Network Load Balancing Server 2019

3- On SRV2019-1 Open server manager and then select Add roles and features.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

4- Then click Next

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

5- Click Next.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

6- Select SRV2019-1 from the server pool and then click Next.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

7- Check the WEB Server (IIS) roles box.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

8- Click Add feature.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

9- After selecting the Web Server (IIS) server role so click next.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

10- Check the Network Load Balancing box.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

11- Click Add features.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

12- After selecting the Network Load Balancing feature so click next.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

13- Click Next.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

14- Click Next.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

15- Click Install.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

Configuring Network Load Balancing in Windows Server 2019 After installing the Network Load Balancing feature on all the participating NLB nodes, the subsequent step is to configure Network Load Balancing. For this, you would like to perform the subsequent steps.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

Create a New Cluster

16- On the Server Manager console of the SRV2019-1 NLB node, click Tools and then choose Network Load Balancing Manager.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

17- Right-click Network Load Balancing Clustering and then choose New Cluster.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

18- On the New Cluster: Connect panel, type SRV2019-1.xpertstec.local (or IP Address) in the Host field then click Connect. Verify that the Interface name is listed then click next.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

19- On the New Cluster, set the priority (unique host identifier) value 1. This NLB node will reply to the clients’ queries, first, also ensure that the default status has set as Started and click next.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

20- Click the Add button to add a new Cluster IP address.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

Note: The Cluster IP address is that the new virtual IP address on which the host service, during this case, IIS will run.

21- Type Cluster IP Address such as 10.0.0.100 and click ok.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

22- Then click Next.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

23- Select a cluster operation mode, Unicast and then click next.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

24- So click Finish.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

25- Wait until the SRV2019-1 NLB node is added successfully. The Icon Color of the added NLB node should be green.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

Network Load Balancing add the host to a cluster

26- Right-click on Cluster name and then select Add Host to Cluster.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

27- Connect dialog box, type SRV2019-2, and then click Connect to add one more NLB node.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

Important: If you get the Host unreachable error while connecting SRV2019-2 as the NLB node, move on to SRV2019-2 and open the Network Load Balancing Manager console. Repeat the same steps as you used to add the DC1 NLB node.

28- On the Add Host to Cluster: Host Parameters dialog box, set the priority value as 2 and proceed to next.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

29- Click Finish.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

30- Finally, verify that the second NLB node SRV2019-1 is added successfully.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

Configuring Default Website to Test the
NLB Configuration

To test the NLB cluster, use an NLB-Aware application like the IIS service role with the Cluster IP address. Hence, we’ll use the Default Website on NLB node1 (SRV2019-1) and NLB node2 (SRV2019-2). the web site is going to be mapped with the cluster IP address “10.0.0.100”. To do so, first, you would like to perform the subsequent steps on SRV2019-1 (NLB node1).

31-Open
the Internet Information Services (IIS) Manager console.

Expand the Sites node, select and right-click the Default internet site.

Select Add the Virtual Directory

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

32- In the Alias box, type a name. In the Physical path box, type \SRV2019-1C$Intetpubwwwroot and click ok.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

We need to add the same shared directory on both the NLB nodes so the same content can be displayed when an NLB node from the configured NLB cluster is failed.

33- Double-click Directory Browsing.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

34- Click Enable.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

35- Right-click Default Web Site, select Manage Website and then select Restart.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

36- Close the web Information Services (IIS) Manager window.

Repeat the same steps to activate the Default Website on SRV2019-2 NLB node.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

Optionally, if you would like to access the web site through the hostname like www.xpertstec.local, add the www DNS host record with the ten .0.0.100 IP address.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

Verifying Network Load Balancing Configuration

To verify that your NLB Cluster is configured successfully and functioning properly, perform the subsequent steps.

37- Type 10.0.0.100 within the Internet Explorer and verify that you simply are ready to access the Default Webs

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

Close Internet Explorer. On the SRV2019-1 node.

38- open the Network Load Balancing Manager window, select and right-click SRV2019-1(Ethernet), select Control Host and then select Stop to stop this node temporarily.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

39- Switch back to SRV2019-DC and try again to open the Default Website. the Default Website should still be displayed. However, this time, the SRV2019-2 NLB node will serve the Website.

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

For more details click here

Network Load Balancing 2019, How to Configure Network Load Balancing In Windows Server 2019.

В этой статье мы рассмотрим, как обеспечить высокую доступность (отказоустойчивость) фермы из веб серверов IIS (Internet Information Services) на Windows Server с помощью Microsoft Application Request Routing (ARR) и Network Load Balancing (NLB).

Содержание:

  • Подготовка инфраструктуры для настройки высокой доступности сайтов IIS
  • Установка ARR и URL Rewrite на IIS в Windows Server
  • Настройка общей конфигурации IIS
  • Настройка NLB в Windows Server

Итак, наша конфигурация отказоустойчивой фермы IIS будет выглядеть следующим образом:

  • web.contoso.com
    (192.168.13.222) – DNS имя отказоустойчивого веб сервера, к которому должны обращаться клиенты. Это IP адрес будет доступен через кластер Microsoft NLB. В нашем случае NLB обеспечивать высокую доступность и балансировку нагрузки на веб сервера IIS;
  • web1.contoso.com
    (192.168.13.20) – первый сервер веб фермы IIS
  • web2.contoso.com
    (192.168.13.21) – второй сервер нода веб фермы IIS

Подготовка инфраструктуры для настройки высокой доступности сайтов IIS

Создайте в DNS запись для web.contoso.com и IP адреса. Можно создать DNS запись с помощью PowerShell:

Add-DnsServerResourceRecordA -Name web -IPv4Address 192.168.13.222 -ZoneName contoso.com

Установите роль IIS на обоих серверах в необходимой конфигурации, настройте ваш сайт/приложение. В нашем примере я использую IIS в минимальной конфигурации, достаточной для отдачи статической HTML страницы.

На обоих веб серверах я создал файл
c:intepubiis_ha.html
с простым HTML кодом. Для демонстрации высокой доступности и проверки переключений, HTML файл на каждом сервере содержит имя хоста, на котором он расположен (в продуктивной среде будет использоваться одинаковая конфигурация).

тестовый HTML файл для IIS сервера

Затем я создал SSL сертификат для имени web.contoso.com и импортировал его в IIS на обоих серверах (в целях тестирования я использую самоподписанный сертификат, созданный с помощью PowerShell).

Экспорт SSL сертификата в IIS

Данный сертификат привязан к сайтам на обоих серверах IIS на порту 443.

привязать сертфикат к сайту IIS

Установка ARR и URL Rewrite на IIS в Windows Server

Теперь нужно установить компонент ARR (Application Request Routing) на обоих серверах.

В продуктивных сценариях, когда вы обеспечиваете высокую доступность веб приложения IIS с помощью ARR и NLB, желательно создать для размещения этих служб отдельные сервера (с совмещением ролей ARR и NLB). Например, при настройке высокой доступности для веб-служб Exchange Server (Client Access Services: OWA, ActiveSync, Autodiscovery. и т.д.), не рекомендуется ставить дополнительные службы на сервера Exchange. Также NLB несовместима со службой Microsoft Failover Cluster (не запустятся на одном хосте).

Скачайте Microsoft Application Request Routing 3.0 (x64) и запустите установку
requestRouter_amd64.msi
на обоих серверах (https://www.microsoft.com/web/downloads/platform.aspx).

Установка Microsoft Application Request Routing для iis

Также скачайте и установите модуль IIS URL Rewrite 2.1. (https://www.iis.net/downloads/microsoft/url-rewrite).

Перезапустите консоль IIS. Теперь нужно создать ферму веб серверов IIS. Щелкните правой кнопкой по Server Farm и выберите Create Server Farm.

Задайте имя фермы
web.contoso.com
и добавьте в нее хосты
web1
и
web2
.

создать ферму веб серверов в IIS

IIS предложит автоматически создать правила URL Rewrite для вашей фермы. Согласитесь с этим.

IIS создает правила URL Rewrite

В настройках фермы IIS:

Теперь нужно создать правила перенаправления IIS. Перейдите в раздел URL Rewrite в IIS manager. Одно правило для фермы уже создано (
ARR_web.contoso.com_locadbalance_SS
L).

Добавьте новое условие (condition):

  • Condition input:
    {HTTP_HOST}
  • Matches the pattern
  • Pattern:
    web.contoso.com

настройка правил URL Rewrite в IIS

Настройка общей конфигурации IIS

Теперь нужно сделать общую конфигурацию IIS для двух серверов. Для этого создайте общую сетевую папку на любом другом сервере (не используйте для размещения этой SMB шары сервера вашей фермы, в целях высокой доступности рекомендуется разместить эту папку на отказоустойчивом файловом кластере или DFS). Создайте сервисную учетную запись в AD (в нашем примере это
contososhared_iis
) и предоставьте ей полные права на эту папку.

Можно создать сетевую папку и назначить права с помощью PowerShell:

New-SmbShare -Name IISshared -Path D:IISshared -FullAccess contosospb_admins -ChangeAccess contososhared_iis

На сервере, на котором вы настраивали ферму, перейдите в раздел IIS -> Shared Configuration. Выберите Export Configuration.

Укажите UNC путь к вашей сетевой папке и пароли для доступа шифрования (нужно использовать стойкий пароль). Нажмите Connect as и укажите учетные данные (contososhared_iis) для доступа к этой папке.

экспорт конфигурации в IIS

После того, как вы экспортировали вашу конфигурацию, нужно настроить оба сервера IIS на использовать общей конфигурации из сетевой папки.

Включите опцию Enable shared configuration, укажите UNC путь и учетные данные пользователя. Нажмите Apply. Если все прошло успешно, перезапустите IIS и аналогично настройте shared configuration на втором сервере.

использование общей конфигурации в IIS

Настройка NLB в Windows Server

Теперь нужно установить компонент NLB на обоих серверах и настроить кластер. Установите роли с помощью PowerShell:

Add-WindowsFeature nlb -IncludeManagementTools

установка роли Network Load Balancing Manager

Запустите консоль Network Load Balancing Manager (
nlbmgr.exe
) и создайте новый кластер для IP адреса 192.168.13.222.

Настройка NLB кластера в Windows Server

Выберите Multicast режим для кластера.

Добавьте правило для порта TCP/443. Выберите:

  • Filtering mode: Multiple host
  • Affinity: Single

перенаправить порт 443 в NLB

Добавьте второй сервер в NLB кластер.

запуск кластера NLB

Убедитесь, что у обоих хостов статус изменился Converged.

При использовании виртуальных машин, для корректной работы NLB вам нужно разрешить смену MAC адреса в ВМ. В Hyper-V нужно включить опцию Advanced Features -> Enable MAC address spoofing. В VMware vSphere включите опцию MAC Address Change на уровне виртуального коммутатора или группы портов.

Также проверьте, как обрабатывают смену MAC адреса ваши физические коммутаторы.

разрешить пожмену MAC адреса в виртуальной машине

Теперь можно проверить доступность сайта https://web.contoso.com/iis_ha.html с клиентов. Если вы все настроили правильно, эта страница должна быть доступна.

В моем случае все сразу не взлетело. При переходе на целевую веб страницу, пул DefaultAppPool в IIS стал останавливаться с ошибкой Event ID 2307 от IIS-W3SVC-WP

The worker process for application pool 'DefaultAppPool' encountered an error 'Cannot read configuration file ' trying to read configuration data from file '\?<EMPTY>', line number '0'. The data field contains the error code.

ошибкой Event ID 2307 от IIS-W3SVC-WP The worker process for application pool 'DefaultAppPool' encountered an error 'Cannot read configuration file

Для решения проблемы пришлось выполнить такие команды на обоих серверах:

net stop WAS /y
rmdir /s /q C:inetpubtempappPools
net start W3SVC

Также, отключите стандартное правило для IIS , что исправить ошибку:

HTTP Error 502.4 - Bad Gateway No appropriate server could be found to route the request.

В такой конфигурации веб сервис будет доступен для пользователей при недоступности любой из нод фермы IIS. В этом можно убедиться наглядно, потому что в зависимости от сервера, который обрабатывает вашу сессию вы будете получать свою веб страницу (мы в начале специально сделали разные файлы iis_ha.html).

отказоустойчивый веб сайт на IIS в Windows Server

Если отключить или приостановить один из целевых серверов, то ARR после выполнения Health Check (задержка 5 секунд) перенаправит вас на другой веб сервер.

Не забывайте, что для построения полностью отказоустойчивой конфигурации вам также нужно обеспечить реализацию HA для базы данных, которую используются ваши приложения на IIS. При использовании MS SQL Server можно использовать кластерную конфигурацию или группу высокой доступности SQL Always On.

Такая конфигурация обеспечит высокую доступность веб сервисов IIS, позволить автоматически перенаправить трафик в случае недоступности одного из серверов. Также благодаря NLB вы можете обеспечить распределение и балансировку нагрузки на сайты.

In this article, we will see the steps to the Network Load Balancing (NLB) feature in Windows Server 2019. We can use NLB to manage two or more servers as a single virtual cluster.

What is NLB (Network Load Balancing) in Windows Server 2019?

The Network Load Balancing (NLB) distributes traffic across several servers by using the TCP/IP networking protocol. By combining two or more computers that are running applications into a single virtual cluster, NLB provides reliability and performance for web servers and other mission-critical servers.

Windows Server 2019 NLB cluster can support up to 32 Servers in a single NLB cluster. The servers in an NLB cluster are called hosts, and each host runs a separate copy of the server applications.

NLB distributes incoming client requests across the hosts in the cluster. You can configure the load that is to be handled by each host.

Understanding Test lab:

For this, we will use the virtual test lab created in VirtualBox.

  • WS2K19-DC01: Domain Controller and DNS
  • WS2K19-SRV02: Member Server
  • WS2K19-SRV03: Member Server

Install the Network Load Balancing feature on Server 2019:

Note: We need to perform the following steps on both member servers that are going to participate in the NLB cluster.

1. On Member Server, open Server Manager. Click on Tools and select Add Role and Features.

1. Start Add Roles and Feature Installation Wizard

2. On the Before you begin page, click Next.

2. Click Next on Before you begin screen

3. Select Role-based or feature-based installation and click Next.

3. Select Role-based or Feature-based Installation

4. Select a server from the server pool on which you want to install the Network Load Balancing feature, click Next.

4. Select server from server pool to install NLB

5. On select server roles page, click Next.

5. Click Next on Select Server Roles page

6. On select features, select Network Local Balancing checkbox.

6. Select Network Load Balancing Feature checkbox

7. A new window will pop up, click on Add Features to include required features and management tools for Network Local Balancing work properly.

7. Click on Add Features to Add Features required by NLB

8. Make sure that NLB feature is selected. Click Next.

8. Make Sure NLB feature is selected

9. Click on the Install button to start the installation process.

9. Click on Install to start NLB feature Installation

10. Click on Close.

10. Click on Finish

Reminder: We need to perform the same steps to install the NLB feature on the WS2K19-SRV03 member server.

After installing the NLB feature, the next step is to create the NLB cluster using windows server 2019. To perform these steps, we need to open the Network Load Balancing Manager on one of the NLB nodes.

Configure NLB Cluster in Windows Server 2019:

11. On the Server Manager console of the WS2K19-SRV02 member server, click Tools and select Network Load Balancing Manager.

11. Open Network Local Balancing Manager

12. Select and right-click Network Load Balancing Clusters and then click New Cluster.

12. Select Add New NLB Cluster

13. Type the IP address or name of the second member server in the Host field and then click Connect. Verify that the Interface name is listed and then proceed to next.

13. Type IP or Name of NLB Node to Add

14. On the New Cluster: Host Parameters page, adjust the priority value as per requirement. Also, ensure that the default status has set as Started. When you are ready, click on Next.

14. Set NLB Priority and State

15. On the New Cluster: Cluster IP Addresses page, click Add to add a new Cluster IP address.

15. Click on Add to Add NLB Cluster IP

16. Specify a Cluster IP Address, and click OK.

16. Specify NLB Cluster IP Address

Note: This IP address is a new NLB Cluster virtual IP address on which the host service will run.

17. If required, you can add more than one IP address by performing the same steps. Click Next.

17. Click Next

18. Select an NLB cluster operation mode. You can also specify the FQDN name for the NLB cluster in the Full Internet name field. Click Next.

18. Select NLB Cluster Operation Mode

19. On the New Cluster: Port Rules page, select the existing port rule and click on edit.

19. Edit Default NLB Port Rule

20. Type port range. From 80  to 80 (As we only want port number 80 for IIS NLB cluster). Select Affinity mode to none. Click OK.

20. Add TCP port 80 to the Rule

21. Click on the Add button to a new rule for port number 443 using the same steps.

21. Add TCP port 443 to the Rule

22. Click on Finish.

22. Click Finish to complete Cluster Configuration

23. Wait until the WS2K19-SRV03 node is added successfully. The Icon Color of the added NLB node should be displaying green.

23. Verify NLB node Status

Add second NLB node to an Existing NLB cluster:

24. Right-click on the existing NLB cluster and select Add Host To Cluster.

24. Select Add Host to NLB Cluster

25. Type the WS2K19-SRV02 in the Host field and then click Connect. Verify that the Interface name is listed and then proceed to next.

25. Type IP or Name of NLB Node to Add

26. On the New Cluster: Host Parameters page, adjust the priority value as per requirement. Also, ensure that the default status has set as Started. When you are ready, click on Next.

26. Set NLB Priority and State

27. Click on Finish to complete the process of adding the second NLB node to an existing NLB cluster.

27. Click Finish to complete Cluster Configuration

28. Verify that the second NLB node is added successfully. The icon color should be displaying green.

28. Verify NLB node Status

Test the NLB Configuration with Default Web Site:

Already I have installed IIS service on both member servers to test the NLB cluster. We will access the default website using the NLB cluster IP address.

29. Open a web browser. Type the NLB cluster IP address in the address bar.

29. Access NLB Cluster Website

Verify that you can access the Default Website. You are accessing the WS2K19-SRV03 server due to NLB priority 1.

30. Delete web browsing history and again access the NLB cluster IP address using Internet Explorer.

30. Delete Web Browsing History

31. This time you are accessing the WS2K19-SRV02 server due to NLB load balancing.

31. Access NLB Cluster Website again

Used this type of configuration when balancing traffic between two IIS servers. The port rules were handling only HTTP (port 80) and HTTPS (port 443) traffic.

That’s it for this guide on How to Install and Configure the Network Load Balancing (NLB) feature in Windows Server 2019. Thank you for reading.

Watch Video on How to Install and Configure NLB in Windows Server 2019:

Post Views: 3,993

table of Contents

  • Network load balancing server configuration and management
    • theory
      • 1. Basic concepts of load balancing
        • 1.1, the definition of load balancing
          • (1) A Web service architecture without load balancing
          • (2) Web service architecture with load balancer
        • 1.2, the working principle of load balancing
        • 1.3 Three elements of load balancing
          • (1) Distribution strategy
          • (2) Session retention
          • (3) Server health check
      • 2. Windows Server Network Load Balancing (Network Load Balancing)
        • 2.1. Features
          • (1) High availability
          • (2) Scalability
          • (3) Manageability
        • 2.2. Requirements for deploying NLB service cluster
          • (1) Hardware requirements
          • (2) Software requirements
    • Installation and configuration
      • 3. Network topology and description

theory

1. Basic concepts of load balancing

1.1, the definition of load balancing

Load balancing, which «shares» network requests or other forms of load among different computers to optimize resource usage, maximize throughput, minimize response time, and avoid overload. Configuring server load balancing can avoid the situation where some servers in the cluster are over-stressed while others are idle. Load balancing can be divided into software load balancing and hardware load balancing.

Example:

(1) A Web service architecture without load balancing

problem: If a large number of users access the Web server at the same time, or suffer DOS/DDOS attacks, the server may be down. At this time, ordinary users will not be able to access normally, the service will be interrupted, and a lot of losses may be caused.

(2) Web service architecture with load balancer

After adding a load balancer to a server cluster, the load balancer can forward user requests to idle servers in the server cluster according to the load balancing algorithm. (Please refer to section 1.2 for details) The load balancer can be software or hardware.

1.2, the working principle of load balancing

The load balancer forwards the request by changing the destination address of the request. When the server returns the data packet, it changes the source address of the returned data packet to ensure that the destination of the client request and the returned packet are the same address.

Concrete example

A game operator applied for a public network IP 1.1.1.1. The player’s user login verification needs to connect to this address. The player’s request data packet will first pass through the firewall and reach the load balancer. The load balancerBuilt-in algorithmDecide which server the player will connect to for login verification. It is assumed that the load balancer assigns the player to Web server 1. Then the load balancer replaces the destination address in the user request packet with the IP address of the corresponding web server 1. The IP address of the web server may be an intranet IP address (such as 192.168.82.223), and the player’s request packet will reach the Web Verify on server 1.

The built-in algorithm determines which server in the server cluster can handle user requests. For example, there are three servers A, B, and C. The utilization rate of server A has reached 60%, the utilization rate of server B and server C are both 0%, and the built-in algorithm in the load balancer forwards user requests to In server B or server C, you need to check which server B or C has the higher priority.

When the verification is successful, Web server 1 will send a response packet back to the load balancer, and the load balancer will change the source address in the received packet from 192.168.82.223 to 1.1.1.1, and then send the response packet to Players.

This ensures that the user’s request destination address and the source address of the response data packet are the same address.

1.3 Three elements of load balancing

Including distribution strategy, session maintenance and server health check.

(1) Distribution strategy

Refers to the load balancing device, according to what strategy (ie algorithm) to distribute requests to different backend servers. The simplest algorithm is round robin, which distributes user requests to servers in turn.

(2) Session retention

In most applications, server Session control is involved. And these Sessions are usually not replicated between servers. That is, when user A logs in, the load balancer assigns it to server 1 for processing, then all future requests for user A will be forwarded to server 1 and not to other servers. If assigned to other servers, there is no record of A on other servers, which will cause the request to fail.

The simplest session retention strategy is the source address session retention.

(3) Server health check

It means that the load balancing device must detect whether the background server is working normally. If a server fails and cannot work normally, the load balancer will remove this server from the load balancing group. When the failed server recovers, reload the server into the load balancing group.

2. Windows Server Network Load Balancing (Network Load Balancing)

NLB enhances the availability and scalability of Internet server applications, such as the use of network load balancing services on the Web, FTP, firewall, proxy, virtual private network (VPN) and other mission-critical servers.

The network load balancing (NLB) feature is to distribute traffic among multiple servers by using the TCP/IP protocol. By combining two or more servers running applications into a virtual cluster, NLB provides reliability and performance for web servers and other mission-critical servers.

The servers in the NLB cluster are called hosts, and each host runs a separate copy of the same service. NLB will forward the client’s request to each host in the cluster. The system administrator can configure each host to handle client requests. You can also dynamically add hosts to the cluster to handle the increased load. NLB can also direct all traffic to a specified host, which is called the default host.

NLB allows all servers in the cluster to use the same set of IP addresses for addressing and maintains a unique set of dedicated IP addresses for each host. For load-balancing applications, when the host fails or goes offline, the load will be automatically redistributed among the normally working servers. When ready, the offline server can transparently rejoin the cluster and regain its share of the workload, which allows other computers in the cluster to handle less traffic.

2.1. Features

Windows Server’s network load balancing has three important features, including high availability, scalability, and manageability.

(1) High availability

The high availability system reliably provides acceptable service levels with minimal downtime. To provide high availability, NLB includes built-in functions that can automatically:

  • Detect failed or offline cluster hosts, and then recover.
  • When adding or removing hosts, balance the network load.
  • Recover and redistribute the workload within 10 seconds.
(2) Scalability

Scalability is a measure of the ability of a computer, service, or application to meet ever-increasing performance requirements. For NLB clusters, scalability is the ability to incrementally add one or more systems to an existing cluster when the overall load of the cluster exceeds its capacity. To support scalability, system administrators can perform the following operations on NLB:

  • Balance the load requests of various TCP/IP services in the NLB cluster.
  • Up to 32 servers are supported in a single cluster.
  • Balance multiple service load requests (from the same client or from multiple clients) among multiple hosts in the cluster.
  • As the load increases, add hosts to the NLB cluster without causing the cluster to fail.
  • When the load decreases, the host can be removed from the cluster.
  • Achieve high performance and low overhead through a complete pipeline implementation. Pipelining allows requests to be sent to the NLB cluster without waiting for responses to previous requests.
(3) Manageability

To support manageability, system administrators can perform the following operations on NLB:

  • By using the Network Load Balancing (NLB) Cmdlet or NLB Manager in Windows PowerShell, you can manage and configure multiple NLB clusters and cluster hosts on one server.
  • Use port management rules to specify load balancing behavior for a single IP port or a group of ports.
  • Define different port rules for each website. If the same set of load balancing servers are used for multiple applications or websites, the port rules are based on the target virtual IP address (using a virtual cluster).
  • When using the optional single host rule to direct all client requests to a single host. NLB routes client requests to specific hosts running specific applications.
  • Block network access to certain IP ports.
  • When running in multicast mode, please enable Internet Group Management Protocol (IGMP) support on the cluster host to control switch port flooding (incoming network packets are sent to all ports on the switch).
  • Use Windows PowerShell commands or scripts to remotely start, stop and control NLB operations.
  • Check the Windows event log to check for NLB events. NLB records all operations and cluster changes in the event log.

2.2. Requirements for deploying NLB service cluster

(1) Hardware requirements
  • All hosts in the cluster must be on the same subnet.
  • There is no limit to the number of network adapters on each host, and different hosts can have different numbers of adapters.
  • In each cluster, all network adapters must be multicast or unicast. NLB does not support a mixed environment of multicast and unicast in a single cluster.
  • If unicast mode is used, the network adapter used to handle client-to-cluster traffic must support changing its media access control (MAC) address.
(2) Software requirements
  • Only TCP/IP can be used on adapters with NLB enabled on each host. Do not add any other protocols (such as IPX) to this adapter.
  • The IP addresses of the servers in the cluster must be static.

NLB does not support Dynamic Host Configuration Protocol (DHCP). NLB will disable DHCP on every interface it configures.

Installation and configuration

3. Network topology and description

The three servers on the right form a server cluster, which uniformly provides web services to the outside world, and its web service aggregate IP address is 10.0.0.1. At the same time, each server is installed with Network Load Balancing (NLB) to form a cluster load balance. The internal IP addresses of the three servers are: NLB1: 192.168.82.208

NLB2:192.168.82.209

NLB3:192.168.82.210

On the left is the client computer PC2 with an IP address of 10.0.0.2. PC2 accesses the Web service provided by the server cluster NLB1-3 through 10.0.0.2.

В статье приводится краткий обзор
создания отказоустойчивого кластера Microsoft Windows (WFC) в ОС Windows Server
2019 или 2016. В результате вы получите двухузловой кластер с одним общим
диском и кластерный вычислительный ресурс (объект «компьютер» в Active
Directory).

Подготовка

Не имеет значения, какие машины вы
используете — физические или виртуальные, главное, чтобы технология подходила
для создания кластеров Windows. Перед тем, как начать, проверьте соответствие
необходимым требованиям:

Две машины Windows 2019 с установленными последними обновлениями. У них должно быть по крайней мере два сетевых интерфейса: один для производственного трафика и один для кластерного трафика. В моем примере у машин три сетевых интерфейса (один дополнительный для трафика iSCSI). Я предпочитаю статические IP-адреса, но также можно использовать DHCP.

Введите оба сервера в домен
Microsoft Active Directory и убедитесь, что они видят общий ресурс хранения,
доступный в Disk Management. Пока не переводите диск в режим «онлайн».

Далее необходимо добавить функциональность Failover clustering (Server Manager > Аdd roles and features).

Перезапустите сервер, если требуется. В качестве альтернативы можно использовать следующую команду PowerShell:

Install-WindowsFeature -Name Failover-Clustering –IncludeManagementTools

После успешной установки в меню
Start, в Windows
Administrative Tools
появится  Failover Cluster Manager .

После установки Failover-Clustering 
можно перевести общий диск в режим «онлайн» и отформатировать его на одном из
серверов. Не меняйте ничего на втором сервере. Там диск остается в режиме
offline.

Обновив Disk Management, вы увидите
что-то типа такого:

Server 1 Disk Management (disk status online)

Server 2 Disk Management (disk status offline)

Проверка готовности
отказоустойчивого кластера

Перед созданием кластера необходимо убедиться, что все настройки правильно сконфигурированы. Запустите Failover Cluster Manager из меню Start, прокрутите до раздела Management и кликните Validate Configuration.

Выберите для валидации оба сервера.

Выполните все тесты. Там же есть описание того, какие решения поддерживает Microsoft.

После успешного прохождения всех нужных тестов, можно создать кластер, установив флажок Create the cluster now using the validated nodes (создать кластер с помощью валидированных узлов), или это можно сделать позже. Если во время тестирования возникали ошибки или предупреждения, можно просмотреть подробный отчет, кликнув на View Report.

Создание отказоустойчивого
кластера

Если вы решите создать кластер,
кликнув на Create Cluster в Failover Cluster Manager,
потребуется снова выбрать узлы кластера. Если вы используете флажок Create
the cluster now using the validated nodes
 в мастере валидации
кластера, выбирать узлы не понадобится. Следующим шагом будет создание точки
доступа для администрирования кластера —  Access Point for
Administering the Cluster
. Это будет виртуальный объект, с которым позже
будут коммуницировать клиенты. Это объект «компьютер» в Active Directory.

В мастере нужно будет задать имя кластера — Cluster Name и сетевую конфигурацию.

На последнем шаге подтвердите выбранные настройки и подождите создания кластера.

По умолчанию мастер автоматически
добавит общий диск к кластеру. Если вы его еще не сконфигурировали, будет
возможность сделать это позже.

В результате вы увидите новый объект «компьютер» Active Directory под названием WFC2019.

Вы можете отправить запрос к новому компьютеру, чтобы убедиться в его доступности (если ICMP-запросы разрешены в брандмауере Windows).

В качестве альтернативы можно создать кластер с помощью PowerShell. Следующая команда автоматически добавит подходящее хранилище:

New-Cluster -Name WFC2019 -Node SRV2019-WFC1, SRV2019-WFC2 -StaticAddress 172.21.237.32

Результат можно будет увидеть в Failover Cluster Manager, в разделах Nodes и Storage > Disks.

Иллюстрация показывает, что в данный момент диск используется в качестве кворума. Поскольку мы хотим использовать этот диск для данных, нам необходимо сконфигурировать кворум вручную. Из контекстного меню кластера выберите More Actions > Configure Cluster Quorum Settings (конфигурирование настроек кворума).

Мы хотим выбрать диск-свидетель вручную.

В данный момент кластер использует диск, ранее сконфигурированный как диск-свидетель. Альтернативно можно использовать в качестве свидетеля общую папку или учетную запись хранилища Azure. В этом примере мы используем в качестве свидетеля общую папку. На веб-сайте Microsoft представлены пошаговые инструкции по использованию свидетеля в облаке. Я всегда рекомендую конфигурировать свидетель кворума для правильной работы. Так что, последняя опция для производственной среды не актуальна.

Просто укажите путь и завершите мастер установки.

После этого общий диск можно использовать для работы с данными.

Поздравляю, вы сконфигурировали отказоустойчивый кластер Microsoft с одним общим диском.

Следующие шаги и резервное
копирование

Одним из следующих шагов будет
добавление роли для кластера, но это выходит за рамки данной статьи. Когда
кластер будет содержать данные, пора будет подумать о его резервном копировании.
 Veeam Agent for Microsoft Windows может применяться для
резервного копирования отказоустойчивых кластеров Windows с общими дисками. Мы
также рекомендуем осуществлять резервное копирование «всей системы» кластера.
При этом выполняется резервное копирование операционных систем узлов кластера.
Это поможет ускорить восстановление отказавшего узла кластера, так как вам не
придется искать драйверы и прочее при восстановлении.

Руководство по созданию отказоустойчивых
кластеров для Windows Server 2019

Содержание

  1. Network Load Balancing
  2. Практическое применение
  3. Высокий уровень доступности
  4. Масштабируемость
  5. Управляемость
  6. Важные функции
  7. Требования к оборудованию
  8. Требования к программному обеспечению
  9. Сведения об установке
  10. Установка с диспетчер сервера
  11. Установка с Windows PowerShell
  12. Диспетчер балансировки сетевой нагрузки
  13. Дополнительные ресурсы
  14. Настройка сетевой инфраструктуры для поддержки режима работы NLB
  15. Сводка
  16. Unicast
  17. Настройка компьютеров с двойными НИКАми в режиме однонастройки
  18. Настройка виртуальных сред в режиме однонастройки
  19. Multicast
  20. Настройка виртуальных сред в многокастовом режиме
  21. Мультикаст IGMP
  22. Настройка режима работы NLB
  23. Глава 9. Избыточность в Windows Server 2019
  24. Балансировка сетевой нагрузки
  25. Не то же самое что карусельный DNS
  26. Какую роль может применять NLB?
  27. Виртуальные и выделенные адреса IP
  28. Режимы NLB
  29. Настройка и балансировка нагрузки веб- сайта
  30. Включение NLB
  31. Настройка NLB
  32. Настройка IIS и DNS

Network Load Balancing

Область применения: Windows Server 2022, Windows Server 2019, Windows Server 2016

Серверы в NLB-кластере называются узлами, и на каждом узле выполняется отдельная копия серверных приложений. Балансировка сетевой нагрузки позволяет распределять входящие клиентские запросы между узлами в кластере. При этом можно настроить нагрузку для каждого узла. Если нужно обработать дополнительную нагрузку, узлы можно добавлять к кластеру динамически. Кроме того, технология балансировки сетевой нагрузки может направлять весь трафик на один предназначенный для этого узел, называемый узлом по умолчанию.

Практическое применение

Высокий уровень доступности

Выявление в кластере самопроизвольно прекратившего работу или отключившегося от сети узла с последующим его восстановлением.

Балансировка нагрузки сети при добавлении и удалении узлов.

Восстановление и перераспределение рабочей нагрузки в течение 10 секунд.

Масштабируемость

Масштабируемость показывает, насколько можно расширить возможности компьютера, службы или приложения в соответствии с повышением требований к его производительности. Применительно к кластерам NLB масштабируемость — это возможность добавления одной или нескольких систем к существующему кластеру, когда общая нагрузка кластера превышает его текущую производительность. Поддержка масштабируемости реализуется в NLB следующим образом:

Балансировка запросов на загрузку в кластере балансировки сетевой нагрузки для отдельных / служб TCP IP.

Поддержка до 32 компьютеров в одном кластере.

Сбалансировать запросы на загрузку нескольких серверов ( с одного клиента или с нескольких клиентов на ) нескольких узлах в кластере.

Добавление узлов в NLB-кластер по мере увеличения нагрузки, не приводящее к сбоям в работе кластера.

Вывод узлов из состава кластера по мере уменьшения нагрузки.

Высокая производительность и уменьшение объема служебных данных за счет реализации полнофункционального конвейерного режима. Данный режим позволяет отправлять запросы NLB-кластеру, не ожидая ответа на предыдущий запрос.

Управляемость

Поддержка управляемости реализуется в NLB следующим образом:

Управляйте и настраивайте несколько кластеров балансировки сетевой нагрузки и узлов кластера с одного компьютера с помощью диспетчера NLB или командлетов балансировки сетевой нагрузки (NLB) в Windows PowerShell.

Используя правила управления портами, можно задавать режим балансировки для отдельного IP-порта или группы портов.

Имеется возможность блокировки доступа по сети к определенным IP-портам.

Запуск, остановка и управление действиями NLB могут производиться удаленно с использованием команд или сценариев Windows PowerShell.

События NLB можно просматривать в журнале событий Windows. В журнал событий записываются все действия NLB и изменения кластера.

Важные функции

NLB устанавливается в качестве стандартного компонента сетевого драйвера Windows Server. Его операции прозрачны для / сетевого стека TCP IP. На следующем рисунке показана связь между балансировкой сетевой нагрузки и другими компонентами программного обеспечения в типичной конфигурации.

nlb

Ниже приведены основные возможности балансировки сетевой нагрузки.

Не требует для запуска изменений аппаратной части.

Предоставляет средства балансировки сетевой нагрузки для управления несколькими кластерами и всеми узлами кластеров, а также их настройки с одного удаленного или локального компьютера.

При развертывании виртуальных машин в качестве виртуальных кластеров балансировка сетевой нагрузки не требует, чтобы серверы были подключены к нескольким виртуальным IP-адресам.

Средство балансировки сетевой нагрузки может быть привязано к нескольким сетевым адаптерам, что позволяет настроить несколько независимых кластеров на каждом узле. Поддержка нескольких сетевых адаптеров — это не то же самое, что виртуальные кластеры, в которых можно настраивать несколько кластеров на одном сетевом адаптере.

Не требует модификации серверных приложений, что обеспечивает их работу в любом кластере NLB.

Возможна настройка автоматического добавления узла в кластер при сбое в работе узла данного кластера с последующим возвращением с сеть. Добавленный узел может приступать к обработке новых клиентских обращений к серверу.

Обеспечивает возможность отключения компьютеров от сети для проведения профилактического обслуживания, не затрагивая операции кластера на других узлах.

Требования к оборудованию

Ниже приведены требования к оборудованию для запуска кластера балансировки сетевой нагрузки.

Все узлы кластера должны располагаться в одной подсети.

Количество сетевых адаптеров на каждом узле не ограничено, при этом различные узлы могут иметь разное число адаптеров.

Все сетевые адаптеры в одном кластере необходимо использовать либо в одноадресном, либо в многоадресном режиме. Балансировка сетевой нагрузки не поддерживает смешанную среду одноадресной и многоадресной рассылки внутри одного кластера.

Требования к программному обеспечению

Ниже приведены требования к программному обеспечению для запуска кластера балансировки сетевой нагрузки.

IP-адреса серверов в составе кластера должны быть статическими.

Сведения об установке

nlb можно установить с помощью диспетчер сервера или команд Windows PowerShell для балансировки сетевой нагрузки.

Дополнительно можно установить средства балансировки сетевой нагрузки для управления локальным или удаленным кластером NLB. к этим средствам относятся диспетчер балансировки сетевой нагрузки и команды Windows PowerShell NLB.

Установка с диспетчер сервера

Установка с Windows PowerShell

чтобы установить балансировку сетевой нагрузки с помощью Windows PowerShell, выполните следующую команду в Windows PowerShell запросе с повышенными привилегиями на компьютере, где требуется установить nlb.

После завершения установки перезагрузка компьютера не требуется.

Дополнительные сведения см. в разделе Install-WindowsFeature.

Диспетчер балансировки сетевой нагрузки

Чтобы открыть диспетчер балансировки сетевой нагрузки в диспетчере сервера, в меню Сервис выберите пункт Диспетчер балансировки сетевой нагрузки.

Дополнительные ресурсы

В следующей таблице приведены ссылки на дополнительные сведения о функции балансировки сетевой нагрузки.

Источник

Настройка сетевой инфраструктуры для поддержки режима работы NLB

В этой статье описывается, как различные режимы балансировки сетевых нагрузок (NLB) влияют на сетевую инфраструктуру, а также наилучшие способы, с которыми сеть может поддерживать каждый режим.

Применяется к: Windows Server 2016, Windows Server 2012 R2
Исходный номер КБ: 4494444

Сводка

Исходя из нашего опыта, наиболее распространенная проблема, с которой сталкиваются пользователи при использовании NLB, это то, что они недостаточно информированы о технологии. Поэтому в развертываниях и реализациях обычно отсутствуют некоторые обязательные параметры или не рассматриваются наиболее важные факторы в каждой сети: потребление пропускной способности.

NLB может работать в любом из трех режимов: однокастной, многокастной и многокастной, которая использует протокол членства в internet Group (IGMP multicast). Каждый из этих режимов имеет различные требования и предъявляет различные требования к сетевой инфраструктуре.

Все узлы кластера должны использовать один и тот же режим работы.

В следующей таблице суммируются требования, преимущества и недостатки каждого режима.

Кластер NLB можно настроить в одном из трех режимов работы: однокастовом, многоуровневом или мультикастовом режиме IMGP. Все три режима работают очень хорошо, если инфраструктура настроена правильно. Однако могут возникнуть серьезные проблемы, если не подготовлена инфраструктура сети для поддержки используемой системы. Каждый режим имеет различные последствия для сетевой инфраструктуры.

Unicast

Unicast — это самый простой режим работы для настройки. Теоретически вам не нужно ничего делать в сетевой инфраструктуре. В действительности может потребоваться изменить инфраструктуру для управления сетевым трафиком.

В режиме однонастройки NLB использует mac-адрес NLB для замены исходного аппаратного MAC-адреса каждого адаптера в каждом узле кластера. Так как несколько адаптеров теперь имеют один и тот же адрес, любые физические переключатели в сети больше не могут правильно поддерживать свои таблицы адресов MAC. Так как они не могут определить, какой трафик идет в порт коммутатора, переключатели начинают отправлять весь трафик во все порты, чтобы убедиться, что трафик достигает своего назначения. Это называется сценарием однополярного наводнения.

Одноявка может серьезно повлиять на производительность сети. В дополнение к регулярному сетевому трафику каждый узел NLB отправляет пакеты сердцебиения (каждый пакет сердцебиения содержит около 1500 бит данных). По умолчанию узел отправляет пакет сердцебиения каждую секунду и ждет, пока не будет получено пять из этих пакетов, пока не будет считать узел конвергентным. В условиях однополярного наводнения любые переключатели ретранслирует этот трафик пульса во все порты коммутаторов, как и обычный сетевой трафик. Например, если в сети есть 24-портовый или 48-портовый переключатель и только два из этих портов подключаются к узлам NLB, этот переключатель может в конечном итоге транслировать значительный сетевой трафик на 22 (или 46) серверах, которые в этом не нуждаются.

Чтобы избежать однополярного наводнения, у вас есть следующие параметры:

Вариант 1. Вставьте концентратор между сетевым переключателем и узлами NLB. Концентратор использует mac-адрес единой окантовки NLB и подключается к одному порту коммутатора, поэтому переключатель может правильно управлять своей адресной таблицей MAC. Концентратор передает трафик на узлы NLB, а серверы, подключаясь к другим портам коммутатора, не получают дополнительный трафик NLB.

Вариант 2. Создайте отдельный VLAN для серверов NLB. Убедитесь, что другие подсети могут достичь VLAN. Эта конфигурация изолирует трафик NLB для портов коммутаторов, которые назначены этому VLAN.

Настройка компьютеров с двойными НИКАми в режиме однонастройки

В некоторых случаях необходимо иметь на компьютере две сетевые карты интерфейса (NICs). Если вы работаете Windows Server 2008 или более поздней, необходимо включить переадверку IP-адресов на niCs, чтобы обеспечить правильное маршрутизание трафика. Переадежка IP включена по умолчанию в более ранних версиях Windows.

Прежде чем включить переададацию IP, необходимо получить индекс NIC кластера. На компьютере, который необходимо настроить, откройте окно Командная подсказка и запустите следующую команду:

В выходной части этой команды перечислены интерфейсы на компьютере.

output of the netsh interface ipv4 show int command

В окне Командная подсказка запустите следующую команду:

В этой команде представлен индекс кластерного интерфейса.

Чтобы убедиться, что параметр изменился, запустите следующую команду:

В этой команде представлен индекс кластерного интерфейса.

На выходе показано, что переададка включена.

show enabled forwarding

Настройка виртуальных сред в режиме однонастройки

По умолчанию виртуальные переключатели в виртуальных средах обычно предотвращают однонаводное наводнение. Дополнительные сведения о конфигурации см. в следующих ресурсах:

Если вы используете Hyper-V для запуска виртуальной среды, откройте консоль Hyper-V управления. Выберите параметры виртуальной машины, выберите параметры NIC и выберите Включить спуфинг mac-адресов. Нажмите OK. Дополнительные сведения см. в совете: Настройка спуфинга MAC-адресов для виртуальных сетевых адаптеров.

Если вы используете VMware для запуска виртуальной среды, обратитесь к статье VMware Microsoft NLB, которая не работает должным образом в режиме Unicast (1556). В этой статье рассказывается о настройке виртуальной сетевой инфраструктуры. Не забудьте связаться с VMware, если у вас возникли вопросы по документации.

Если вы используете другую виртуальную среду (например, XenServer или VirtualBox) и испытываете аналогичные проблемы, обратитесь к производителю за рекомендациями.

Multicast

Режим многокастации отличается от режима одновещания. Вместо изменения адресов MAC в сетевых адаптерах NLB преобразует виртуальный IP-адрес NLB (VIP) в многоуровневый MAC-адрес NLB. Этот MAC имеет формат 03-BF-XX-XX-XX-XX. NLB также убедитесь, что основной IP-адрес кластера решает этот многоуровневый адрес в рамках протокола разрешения адресов (ARP). Хотя отдельные сетевые адаптеры сохраняют свои исходные mac-адреса, трафик NLB адресован многоуровневой MAC-адресу NLB.

Чтобы поддерживать эту конфигурацию, необходимо настроить инфраструктуру сети для использования статических записей ARP и записей таблицы адресов MAC. Сетевые коммутаторы не могут узнать многоуровневый MAC-адрес NLB в ходе обычных операций. Если пропустить этап ручной настройки, сетевые коммутаторы могут затопить трафик NLB во все порты или отбросить пакеты. Сначала может показаться, что сеть работает правильно, но со временем проблемы увеличиваются.

Статьи, перечисленные в следующей таблице, четко объясняют, что необходимо сделать для правильной настройки сетевой инфраструктуры на основе поставщика сетевой инфраструктуры. Помните, что мы не поддерживаем эти статьи. Поэтому мы не можем гарантировать, что они являются точными или доступными. Если у вас возникли вопросы по этим статьям, обратитесь к соответствующему поставщику.

Настройка виртуальных сред в многокастовом режиме

В виртуальной среде сетевые переключатели подключаются к серверам-хост-серверам гипервизора. В виртуальной среде с высокой доступностью группа хостов гипервизора поддерживает группу виртуальных машин. Отдельный виртуальный компьютер может находиться в любом из хостов гипервизора и при определенных обстоятельствах может перейти на другой хост гипервизора. Сетевой трафик должен иметь возможность достичь правильного виртуального компьютера независимо от того, на котором работает гипервизор, на котором работает виртуальная машина.

Чтобы использовать многоуровневый режим в такой среде, необходимо настроить таблицы адресов MAC сетевых коммутаторов таким образом, чтобы каждый порт, подключаемый к хосту гипервизора, использовал статический вход для карты с многоуровневым MAC-адресом NLB. Например, рассмотрим среду, в которой содержится восемь хостов гипервизора. Каждый хост гипервизора имеет два сетевых адаптера, и все адаптеры подключаются к коммутатору. В таблице адресов MAC для коммутатора требуются статические записи, которые относят каждый порт к адресу MAC-адреса NLB Multicast.

Мультикаст IGMP

Чтобы использовать многоуровневый IGMP, сетевые коммутаторы должны быть способны к слеживке IGMP.

Этот режим в основном то же самое, что и многоуровневый режим, за исключением того, что переключатели могут автоматически создавать свои таблицы mac-адресов в этом режиме.

Когда вы включаете многоуровневый IGMP, узлы NLB отправляют сообщения IGMP Join на многофазный адрес 239.255.x.y (в этом адресе x.y представляет последние два октета VIP NLB). Например, если VIP-адрес NLB 10.0.0.1, многоуровневый адрес для сообщений IGMP Join — 239.244.0.1. В этих сообщениях указывается групповое членство узлов NLB. Переключатели используют эту информацию для настройки таблицы адресов MAC.

Некоторые статьи, перечисленные в разделе Multicast, включают правильные параметры конфигурации для своих устройств для многокастной работы с IGMP. Чтобы убедиться, что ваше оборудование может поддерживать этот режим, обратитесь к поставщику оборудования.

Настройка режима работы NLB

С точки зрения NLB конфигурация проста: установите роль, откройте консоль, создайте кластер балансировки нагрузки, выберите узлы, установите режим NLB, а затем установите порты и сродство.

Чтобы настроить узел кластера с помощью NLB Manager, необходимо быть членом группы администраторов в узле кластера.

Чтобы настроить режим работы кластера NLB, используйте следующие действия:

Для настройки адреса MAC для NLB (который зависит от режима NLB), наиболее важным средством является NLB IP2MAC. Этот инструмент доступен на любом компьютере с установленным NLB, и он очень прост в использовании. Чтобы запустить средство, откройте окно Командная подсказка и запустите следующую команду:

В этой команде представлен виртуальный IP-адрес NLB.

mac addresses for a given cluster ip

Как показано на скриншоте, с помощью этой команды можно легко получить mac-адрес для каждого режима. В качестве альтернативы можно сделать математику, учитывая следующие рекомендации (цифры соответствуют красным числам на скриншоте):

В режиме Unicast mac-адрес начинается с 02-BF. Далее следует серия кодов hexadecimal, которые представляют каждый октет VIP-адреса.

В режиме multicast mac-адрес начинается с 03-BF. Опять же, за этим следует серия кодов hexadecimal, которые представляют каждый octet VIP-адреса.

В режиме Multicast с IGMP mac-адрес начинается с 01-00-5E-7F. Последние две части адреса — это два последних октета VIP-адреса.

Дополнительные сведения о развертывании и обслуживании NLB см. в следующих ресурсах:

Заявление об отказе от ответственности за сведения о продуктах сторонних производителей

В этой статье упомянуты программные продукты независимых производителей. Корпорация Майкрософт не дает никаких гарантий, подразумеваемых и прочих, относительно производительности и надежности этих продуктов.

Заявление об отказе от ответственности за контактные данные сторонней организации

Корпорация Майкрософт предоставляет сторонние контактные данные, которые помогут вам найти дополнительные сведения по этому вопросу. Эти данные могут быть изменены без предварительного уведомления. Корпорация Майкрософт не гарантирует точность сторонних контактных данных.

Источник

Глава 9. Избыточность в Windows Server 2019

Содержание

В данной главе мы рассмотрим следующие темы:

Балансировка нагрузки сетевой среды ( NLB )

Настройка балансировки нагрузки вебсайта

Настройка отказоустойчивой кластеризации

Улучшения кластеризации в Windows Server

Балансировка сетевой нагрузки

Не то же самое что карусельный DNS

Балансировка сетевой нагрузки намного умнее данного варианта. В случае падения одного из узлов в некотором массиве NLB, обмен осуществляемый на совместно используемый IP адрес будет направляться только на тот узел, который всё ещё включён. Вскоре мы получим возможность увидеть это воочию, когда мы настроим NLB в корпоративном вебсайте для наших собственных нужд.

Какую роль может применять NLB?

Веб службы (IIS) определённо получают большинство преимуществ от такой избыточности, предоставляемой Балансировкой сетевых соединений. NLB достаточно просто настраивается и предоставляет полную избыточность для вебсайтов, которые вы должны исполнять на своих Windows Servers, причём без необходимости в каких- либо дополнительных затратах.

Одна из лучших частей использования NLB состоит в том, что вы можете вносить изменения в среду без воздействия на существующие узлы. Хотите добавить новый сервер в имеющийся массив NLB? Нет проблем. Накатите его без какого- либо времени простоя. Необходимо выполнить работы по сопровождению какого- либо сервера? Даже здесь нет проблем. NLB может быть остановлен на определённом узле, на самом деле он действительно предназначен для NIC, поэтому вы можете исполнять различные режимы NLB на различных NIC на определённом сервере. Вы можете запросить NLB остановиться на определённом NIC, удаляя этот сервер из массива на это время. А что ещё лучше, если вам требуется какое- то время перед остановкой этого сервера, вы можете выполнить команду drain-stop (дренажирования, осушающего останова) вместо немедленной остановки. Это позволяет завершится обычным образов всем имеющимся в настоящий момент сеансам сетевых соединений на данном сервере. Никакие новые сеансы при этом не будут протекать через данный NIC, который вы останавливаете дренажным способом, а старые сеансы испарятся своим чередом со временем. Как только все сеансы на данном сервере завершатся, вы сможете выдернуть его и проводить на нём работы по сопровождению.

Виртуальные и выделенные адреса IP

WEB1 DIP = 10.10.10.40

WEB2 DIP = 10.10.10.41

Shared VIP = 10.10.10.42

Режимы NLB

Unicast

Здесь мы начинаем проникать в сердцевину того, как NLB распределяет пакеты по различным хостам. Так как у нас нет физического балансировщика нагрузки, который вначале принимает весь обмен, а затем принимает решение куда его отправлять, как наши серверы балансировки нагрузки принимают решение кто какой пакет потока получит?

Самое лучшее в одноадресном режиме состоит в том, что в большинстве случаев он работает без необходимости выполнять некие специальные настройки в ваших коммутаторах или прочем сетевом оборудовании. Вы настраиваете эту установку NLB и она обрабатывает всё остальное. Обратной стороной одноадресного режима является то, что из- за существования одного и того же MAC адреса на всех этих узлах это может вызывать некие проблемы взаимодействия между узлами. Другими словами, сервера, в которых включён NLB будут иметь сложности во взаимодействии с IP адресами друг друга. Если вам на самом деле требуется, чтобы эти веб- серверы имели возможность общаться друг с другом непрерывно и надёжно, самое простое решение состоит в установке отдельного NIC на каждый из таких серверов и применение такого NIC для данного взаимодействия внутри массива при том, что первичные NIC остаются настроенными на NLB обмен.

Другой обратной стороной для одноадресного режима является то, что он создаёт некоторое неуправляемое заполнение коммутатора. Коммутаторы не способны изучать постоянный маршрут для виртуального адреса MAC, так как он нам необходим для доставки на все узлы в нашем массиве. Так как каждый перемещаемый в такой виртуальный MAC пакет отправляется вниз по всем проспектам коммутатора с тем, чтобы он мог достичь все свои NIC, в которых требуется эта доставка, они имеют потенциал переполнить ваши коммутаторы. Если вы беспокоитесь об этом или имеете жалобы от ваших сетевых парней о переполнении коммутаторов, вы должны захотеть проверить режимы со множеством адресов (multicast) для своего кластера NLB.

Некий альтернативный метод для управления переключением потоков unicast состоит в получении креативности при помощи VLAN в ваших коммутаторах. Если вы планируете некий NLB массив серверов и желаете гарантировать что коммутируемый обмен, вырабатываемый этим массивом не будет воздействовать на прочие системы в вашей сетевой среде, вы несомненно можете создать некую небольшую VLAN в своём коммутаторе и подключать в такую VLAN лишь свои NIC с включённым NLB. Тем самым, при возниконовении планируемого потока, он будет ударяться лишь в небольшое число портов внутри вашей VLAN, вместо того чтобы сегментировать свой путь по всему коммутатору целиком.

Multicast

Выбор multicast (многоадресного) режима для вашего NLB приносит некий положителный эффект и некую головную боль. Положительная сторона состоит в том, что он добавляет дополнительные MAC адреса для каждого NIC. Каждый участник NLB затем имеет два MAC адреса, первоначальный и ещё один, создаваемый механизмом NLB. Это позволяет коммутаторам и сетевому оборудованию более простые заания по изучению всех маршрутов и отправлять обмен их правильным получателям без переполнения пакетами потока. Чтобы выполнить это, вам необходимо сообщить своим коммутаторам какой MAC адрес должен получать этот обмен NLB, в противном случае вы вызовете переполнение коммутатора, как и в случае с одноадресным режимом. Сообщение вашим коммутаторам какие MAC нуждаются в таком подключении требует регистрации в ваших коммутаторах и создании некоторых статических записей ARP для улаживания этого. Для любой компании с выделенными сетевым парнями, как правило экспертами в оборудовании Cisco, это не вызовет проблем. Если вы не знакомы с изменением таблиц ARP и добавлением статических маршрутов, это может быть слегка неприятным выполнить их правильную настройку. В конце концов, многоадресный режим в целом лучше одноадресного, однако он может быть приносящим больше административной головной боли. Моё предпочтение всё ещё склоняется к одноадресному режиму, в особенности в малом бизнесе. Я видел его применяемым во множестве различных сетевых сред без каких- либо проблем, и к тому же следование одноадресным режимом означает, что вы можете оставить программирование коммутаторов в стороне.

Multicast IGMP

Самым лучшим, но не всегда доступным, является многоадресный режим с IGMP ( Multicast with Internet Group Membership Protocol ). Многоадресный IGMP действительно помогает создавать множество шлюзов коммутируемого потока, но он работает только в коммутаторах, поддерживающих отслеживание IGMP. Это означает, что такой коммутатор имеет возможность заглядывать вовнутрь пакетов с множественными адресами для определения куда он в точности должен следовать. Таким образом, когда одноадресный режим создаёт по своей природе некоторое дополнительное наполнение коммутаторов, многоадресный режим может помочь уменьшать этот объём, а IGMP может подготовить такое снижение к ещё меньшим значениям.

Настройка и балансировка нагрузки веб- сайта

Включение NLB

Перво- наперво нам необходимо убедиться, что WEB1 и WEB2 готовы к выполнению Балансировки сетевой нагрузки (NLB), так как оно не устанавливается по умолчанию. NLB является свойством, доступным в Windows Server 2019, и вы добавляете в точности так же как и остальные свойства, выполняя это при помощи мастера Добавления ролей и свойств ( Add roles and features ). Добавьте это свойство на все сервера, которые вы желаете сделать частями своего массива NLB:

Рисунок 1

Fig0901

Включение поддержки MAC адресов в ВМ

Помните, когда мы обсуждали одноадресный NLB, как физические MAC адреса имеющихся NIC подменялись виртуальными MAC адресами, которые применялись для взаимодействия массива NLB? Да, виртуальным машинам это не нравится. Если вы осуществляете балансировку нагрузок физических серверов с физическими NIC, вы можете пропустить этот раздел. Однако многие из вас будут исполнять веб сервера, которые являются ВМ. Будут ли они размещаться под Hyper-V, VMware или какой- либо другой технологией виртуализации, существуют дополнительные опции в настройках самих этих виртуальных машин, которые вам придётся выполнить, чтобы эта ваша ВМ успешно соглашалась с такой подменой адресации MAC.

Название таких настроек будет как- то созвучно строке Enable MAC Address Spoofing (Включение подстановки MAC адреса), хотя определённое имя этой функции может отличаться в зависимости от применяемой вами технологии виртуализации. Эта настройка должна выглядеть как простая флаговая кнопка, которую вы должны включить чтобы заставить работать подстановку MAC надлежащим образом. Убедитесь, что вы сделали это для всех виртуальных NIC, на которых вы будете применять NLB. Имейте ввиду, что эта настройка выполняется для установки каждой NIC индивидуально. Если у вас в некой ВМ множество NIC, убедитесь, что вы сделали это для всех NIC, если вы планируете их все в балансировке нагрузки.

Рисунок 2

Fig0902

Если Enable spoofing of MAC addresses выделена серым цветом, помните, что данная машина должна быть полностью остановлена, прежде чем появится данная опция. Остановите её, затем откройте соответствующие Settings и посмотрите ещё раз. теперь эта опция должна быть доступна для выбора.

Настройка NLB

Я буду работать с WEB1 для реального осуществления настройки Балансировки сетевой нагрузки. Зарегистрируемся на нём и теперь мы получаем уведомление, что у нас имеется новый инструмент в данном перечне Средств ( Tools ), которые доступны в Диспетчере сервера под названием Network Load Balancing Manager (Диспетчер Балансировки сетевой нагрузки). Пройдём далее и откроем эту консоль. Когда у вас имеется открытый Диспетчер NLB, кликните правой кнопкой по Network Load Balancing Clusters (Балансировка сетевой нагрузки кластеров) и выберите New Cluster (Новый кластер), как это показано ниже на снимке экрана:

Рисунок 3

Fig0903

Рисунок 4

Fig0904

Рисунок 5

Fig0905

Рисунок 6

Fig0906

Следующий экран вашего мастера NLB предоставит вам настройку Port Rules (Правил порта). По умолчанию имеется единственное правило, которое сообщает NLB о необходимости выполнять балансировку нагрузки дюбого входящего обмена для любого порта, однако вы можете изменить это по своему желанию. Я не видел большого числа людей, определяющих здесь в данном поле правила для распределения по определённым получателям, однако одним отличным свойством в данном экране является возможность запрещать определённые диапазоны портов.

Этот фрагмент может быть очень полезным, если вы желаете блокировать нежелательный обмен на имеющемся уровне NLB. Например, приводимый далее снимок экрана отображает настройки, которые будут блокировать порты 81 и выше от их проброса через имеющийся механизм NLB:

Рисунок 7

Fig0907

Рисунок 8

Fig0908

Введите имя нашего сервера WEB2 и кликните по Connect и прогуляйтесь по данному мастеру чтобы добавить второй узел NLB WEB2 в ваш кластер. Когда оба узла добавлены в этот кластер, наш массив балансировки сетевой нагрузки, или кластер, включён и готов к применению. Если вы заглянете вовнутрь имеющихся свойств NIC своих веб серверов и кликните по имеющейся там кнопке Advanced внутри свойств TCP/IP v4, вы можете увидеть, что наш новый адрес IP кластера 10.10.10.42 был добавлен к этим NIC:

Рисунок 9

Fig0909

Настройка IIS и DNS

Всего лишь один быстрый шаг внутри IIS в каждом из наших веб серверов должен настроить данный вебсайт отвечать по соответствующему IP адресу. Теперь, когда настройка данного NLB была осуществлена и мы получили подтвержение, что наш новый VIP адрес 10.10.10.42 был добавлен в соответствующие NIC, мы можем использовать этот IP адрес для связывания вебсайта. Откройте консоль управления IIS и раскройте папку Sites так, чтобы вы могли видеть свойства своего вебсайта. Кликните правой кнопкой по имени этого сайта и выберите Edit Bindings… :

Рисунок 10

Fig0910

Источник

В этой статье описывается, как различные режимы балансировки сетевых нагрузок (NLB) влияют на сетевую инфраструктуру, а также наилучшие способы, с которыми сеть может поддерживать каждый режим.

Применяется к: Windows Server 2016, Windows Server 2012 R2
Исходный номер КБ: 4494444

Сводка

Исходя из нашего опыта, наиболее распространенная проблема, с которой сталкиваются пользователи при использовании NLB, это то, что они недостаточно информированы о технологии. Поэтому в развертываниях и реализациях обычно отсутствуют некоторые обязательные параметры или не рассматриваются наиболее важные факторы в каждой сети: потребление пропускной способности.

NLB может работать в любом из трех режимов: однокастной, многокастной и многокастной, которая использует протокол членства в internet Group (IGMP multicast). Каждый из этих режимов имеет различные требования и предъявляет различные требования к сетевой инфраструктуре.

Все узлы кластера должны использовать один и тот же режим работы.

В следующей таблице суммируются требования, преимущества и недостатки каждого режима.

Кластер NLB можно настроить в одном из трех режимов работы: однокастовом, многоуровневом или мультикастовом режиме IMGP. Все три режима работают очень хорошо, если инфраструктура настроена правильно. Однако могут возникнуть серьезные проблемы, если не подготовлена инфраструктура сети для поддержки используемой системы. Каждый режим имеет различные последствия для сетевой инфраструктуры.

Unicast

Unicast — это самый простой режим работы для настройки. Теоретически вам не нужно ничего делать в сетевой инфраструктуре. В действительности может потребоваться изменить инфраструктуру для управления сетевым трафиком.

В режиме однонастройки NLB использует mac-адрес NLB для замены исходного аппаратного MAC-адреса каждого адаптера в каждом узле кластера. Так как несколько адаптеров теперь имеют один и тот же адрес, любые физические переключатели в сети больше не могут правильно поддерживать свои таблицы адресов MAC. Так как они не могут определить, какой трафик идет в порт коммутатора, переключатели начинают отправлять весь трафик во все порты, чтобы убедиться, что трафик достигает своего назначения. Это называется сценарием однополярного наводнения.

Одноявка может серьезно повлиять на производительность сети. В дополнение к регулярному сетевому трафику каждый узел NLB отправляет пакеты сердцебиения (каждый пакет сердцебиения содержит около 1500 бит данных). По умолчанию узел отправляет пакет сердцебиения каждую секунду и ждет, пока не будет получено пять из этих пакетов, пока не будет считать узел конвергентным. В условиях однополярного наводнения любые переключатели ретранслирует этот трафик пульса во все порты коммутаторов, как и обычный сетевой трафик. Например, если в сети есть 24-портовый или 48-портовый переключатель и только два из этих портов подключаются к узлам NLB, этот переключатель может в конечном итоге транслировать значительный сетевой трафик на 22 (или 46) серверах, которые в этом не нуждаются.

Чтобы избежать однополярного наводнения, у вас есть следующие параметры:

Вариант 1. Вставьте концентратор между сетевым переключателем и узлами NLB. Концентратор использует mac-адрес единой окантовки NLB и подключается к одному порту коммутатора, поэтому переключатель может правильно управлять своей адресной таблицей MAC. Концентратор передает трафик на узлы NLB, а серверы, подключаясь к другим портам коммутатора, не получают дополнительный трафик NLB.

Вариант 2. Создайте отдельный VLAN для серверов NLB. Убедитесь, что другие подсети могут достичь VLAN. Эта конфигурация изолирует трафик NLB для портов коммутаторов, которые назначены этому VLAN.

Настройка компьютеров с двойными НИКАми в режиме однонастройки

В некоторых случаях необходимо иметь на компьютере две сетевые карты интерфейса (NICs). Если вы работаете Windows Server 2008 или более поздней, необходимо включить переадверку IP-адресов на niCs, чтобы обеспечить правильное маршрутизание трафика. Переадежка IP включена по умолчанию в более ранних версиях Windows.

Прежде чем включить переададацию IP, необходимо получить индекс NIC кластера. На компьютере, который необходимо настроить, откройте окно Командная подсказка и запустите следующую команду:

В выходной части этой команды перечислены интерфейсы на компьютере.

настройка nlb в windows server 2019

В окне Командная подсказка запустите следующую команду:

В этой команде представлен индекс кластерного интерфейса.

Чтобы убедиться, что параметр изменился, запустите следующую команду:

В этой команде представлен индекс кластерного интерфейса.

На выходе показано, что переададка включена.

настройка nlb в windows server 2019

Настройка виртуальных сред в режиме однонастройки

По умолчанию виртуальные переключатели в виртуальных средах обычно предотвращают однонаводное наводнение. Дополнительные сведения о конфигурации см. в следующих ресурсах:

Если вы используете Hyper-V для запуска виртуальной среды, откройте консоль Hyper-V управления. Выберите параметры виртуальной машины, выберите параметры NIC и выберите Включить спуфинг mac-адресов. Нажмите OK. Дополнительные сведения см. в совете: Настройка спуфинга MAC-адресов для виртуальных сетевых адаптеров.

Если вы используете VMware для запуска виртуальной среды, обратитесь к статье VMware Microsoft NLB, которая не работает должным образом в режиме Unicast (1556). В этой статье рассказывается о настройке виртуальной сетевой инфраструктуры. Не забудьте связаться с VMware, если у вас возникли вопросы по документации.

Если вы используете другую виртуальную среду (например, XenServer или VirtualBox) и испытываете аналогичные проблемы, обратитесь к производителю за рекомендациями.

Multicast

Режим многокастации отличается от режима одновещания. Вместо изменения адресов MAC в сетевых адаптерах NLB преобразует виртуальный IP-адрес NLB (VIP) в многоуровневый MAC-адрес NLB. Этот MAC имеет формат 03-BF-XX-XX-XX-XX. NLB также убедитесь, что основной IP-адрес кластера решает этот многоуровневый адрес в рамках протокола разрешения адресов (ARP). Хотя отдельные сетевые адаптеры сохраняют свои исходные mac-адреса, трафик NLB адресован многоуровневой MAC-адресу NLB.

Чтобы поддерживать эту конфигурацию, необходимо настроить инфраструктуру сети для использования статических записей ARP и записей таблицы адресов MAC. Сетевые коммутаторы не могут узнать многоуровневый MAC-адрес NLB в ходе обычных операций. Если пропустить этап ручной настройки, сетевые коммутаторы могут затопить трафик NLB во все порты или отбросить пакеты. Сначала может показаться, что сеть работает правильно, но со временем проблемы увеличиваются.

Статьи, перечисленные в следующей таблице, четко объясняют, что необходимо сделать для правильной настройки сетевой инфраструктуры на основе поставщика сетевой инфраструктуры. Помните, что мы не поддерживаем эти статьи. Поэтому мы не можем гарантировать, что они являются точными или доступными. Если у вас возникли вопросы по этим статьям, обратитесь к соответствующему поставщику.

Настройка виртуальных сред в многокастовом режиме

В виртуальной среде сетевые переключатели подключаются к серверам-хост-серверам гипервизора. В виртуальной среде с высокой доступностью группа хостов гипервизора поддерживает группу виртуальных машин. Отдельный виртуальный компьютер может находиться в любом из хостов гипервизора и при определенных обстоятельствах может перейти на другой хост гипервизора. Сетевой трафик должен иметь возможность достичь правильного виртуального компьютера независимо от того, на котором работает гипервизор, на котором работает виртуальная машина.

Чтобы использовать многоуровневый режим в такой среде, необходимо настроить таблицы адресов MAC сетевых коммутаторов таким образом, чтобы каждый порт, подключаемый к хосту гипервизора, использовал статический вход для карты с многоуровневым MAC-адресом NLB. Например, рассмотрим среду, в которой содержится восемь хостов гипервизора. Каждый хост гипервизора имеет два сетевых адаптера, и все адаптеры подключаются к коммутатору. В таблице адресов MAC для коммутатора требуются статические записи, которые относят каждый порт к адресу MAC-адреса NLB Multicast.

Мультикаст IGMP

Чтобы использовать многоуровневый IGMP, сетевые коммутаторы должны быть способны к слеживке IGMP.

Этот режим в основном то же самое, что и многоуровневый режим, за исключением того, что переключатели могут автоматически создавать свои таблицы mac-адресов в этом режиме.

Когда вы включаете многоуровневый IGMP, узлы NLB отправляют сообщения IGMP Join на многофазный адрес 239.255.x.y (в этом адресе x.y представляет последние два октета VIP NLB). Например, если VIP-адрес NLB 10.0.0.1, многоуровневый адрес для сообщений IGMP Join — 239.244.0.1. В этих сообщениях указывается групповое членство узлов NLB. Переключатели используют эту информацию для настройки таблицы адресов MAC.

Некоторые статьи, перечисленные в разделе Multicast, включают правильные параметры конфигурации для своих устройств для многокастной работы с IGMP. Чтобы убедиться, что ваше оборудование может поддерживать этот режим, обратитесь к поставщику оборудования.

Настройка режима работы NLB

С точки зрения NLB конфигурация проста: установите роль, откройте консоль, создайте кластер балансировки нагрузки, выберите узлы, установите режим NLB, а затем установите порты и сродство.

Чтобы настроить узел кластера с помощью NLB Manager, необходимо быть членом группы администраторов в узле кластера.

Чтобы настроить режим работы кластера NLB, используйте следующие действия:

Для настройки адреса MAC для NLB (который зависит от режима NLB), наиболее важным средством является NLB IP2MAC. Этот инструмент доступен на любом компьютере с установленным NLB, и он очень прост в использовании. Чтобы запустить средство, откройте окно Командная подсказка и запустите следующую команду:

В этой команде представлен виртуальный IP-адрес NLB.

настройка nlb в windows server 2019

Как показано на скриншоте, с помощью этой команды можно легко получить mac-адрес для каждого режима. В качестве альтернативы можно сделать математику, учитывая следующие рекомендации (цифры соответствуют красным числам на скриншоте):

В режиме Unicast mac-адрес начинается с 02-BF. Далее следует серия кодов hexadecimal, которые представляют каждый октет VIP-адреса.

В режиме multicast mac-адрес начинается с 03-BF. Опять же, за этим следует серия кодов hexadecimal, которые представляют каждый octet VIP-адреса.

В режиме Multicast с IGMP mac-адрес начинается с 01-00-5E-7F. Последние две части адреса — это два последних октета VIP-адреса.

Дополнительные сведения о развертывании и обслуживании NLB см. в следующих ресурсах:

Заявление об отказе от ответственности за сведения о продуктах сторонних производителей

В этой статье упомянуты программные продукты независимых производителей. Корпорация Майкрософт не дает никаких гарантий, подразумеваемых и прочих, относительно производительности и надежности этих продуктов.

Заявление об отказе от ответственности за контактные данные сторонней организации

Корпорация Майкрософт предоставляет сторонние контактные данные, которые помогут вам найти дополнительные сведения по этому вопросу. Эти данные могут быть изменены без предварительного уведомления. Корпорация Майкрософт не гарантирует точность сторонних контактных данных.

Источник

Балансировка сетевой нагрузки — концепция и заметки

В этой статье приводится информация о балансировки сетевых нагрузок.

Применяется к: Windows Server 2003
Исходный номер КБ: 556067

Сводка

В этой статье есть сведения о балансировки сетевых нагрузок — технологии кластерирования Майкрософт.

Дополнительная информация

В. Как протестировать кластер NLB?

Например, вы нашли узлы в кластере и хотите проверить, работает ли балансировка нагрузки. Создайте различные четыре доли на четырех узлах и попробуйте получить к ним доступ с одной машины. Каждый раз при просмотре с помощью патча UNC необходимо получать разную долю.

Параметры схождения можно настроить, регулив следующие значения реестра:

Настройка более чем одного VIP-адреса (виртуальный IP) доступна только в Windows 2003 года и более поздней версии.

Команды STOP и DRAINSTOP отличаются друг от другого. Команда STOP остановит службу NLB на хост и все существующие подключения будут потеряны, в то время как DRAINSTOP позволит NLB обслуживать текущие подключения и одновременно отключать новые подключения.

IGMP можно настроить только при настройке кластера для использования поддержки Multicast.

Сервер не должен открывать сетевое свойство при настройке с помощью NLB Manager.

NLB должен иметь правильное локальное время на всех серверах.

NLB не обнаруживает сбоя приложения. Например, служба веб-сервера может остановиться, но NLB по-прежнему отправляет на этот сервер TCP/IP-запросы.

NLB используется для приложения на основе TCP/IP, для которого изменения данных происходят редко.

DoN не любой другой протокол, кроме TCP/IP для адаптер кластера.

Кластер NLB может работать в режиме Unicast или Multicast, но не в обоих режимах.

Корпорация Майкрософт не поддерживает сочетание кластера Server и NLB.

Mix-NLB разрешено. Windows NT WLBS может работать в Windows 2000 NLB.

NLB не поддерживает сети Token Ring и ATM. Он был протестирован только на 10 МБ и 100-МБ сети Ethernet.

Ограничения единой сетевой карты: при работе в режиме Unicast:

Автоматически обнаруживает и восстанавливается с сбойного или автономного компьютера. Автоматически балансирует нагрузку сети при добавлении или удалении хостов. Восстанавливает и перераспределяет нагрузку в течение 10 секунд.

При отключении узла нагрузка автоматически перераспределяется на другие узлы. Все активные подключения к этому хосту потеряны. Если вы принимаете узел в автономном режиме на международном уровне, вы можете использовать команду drainsstop для обслуживания всех активных подключений, прежде чем перенацелить узел в автономном режиме.

В кластере NLB можно использовать сочетание приложений. Например, можно запустить веб-сервер IIS на всех узлах и SQL только на одном узле. Таким образом вы можете назначить трафик для базы данных только SQL серверного узла.

NLB и кластеризация не могут быть активными на одном компьютере, но вы можете сформировать два кластера : кластер NLB Four Node и два кластера серверов узлов

Необходимо ли иметь отдельную подсеть для обеих технологий?

NLB поддерживает до 32 компьютеров в одном кластере, но для интенсивации номера можно использовать RRDNS.

NLB может загружать баланс нескольких запросов от клиента на одном узле или другом узле. Это делается случайным образом.

NLB автоматически обнаруживает и удаляет сбой узла NLB, но не может определить, запущено или остановлено приложение. Это должно быть сделано вручную, запуская сценарий.

Автоматически загружаются балансы при добавлении или удалении новых хостов, и это делается в течение 10 секунд.

Для загрузки различных приложений можно создать различные IP-адресы виртуального кластера.

Правила порта должны быть одинаковыми для кластера, но правила порта могут быть разными для нескольких виртуальных IP.

NLB не перекрывает исходное имя компьютера и IP-адрес.

NLB можно включить на нескольких сетевых адаптерах. Это позволяет настроить другой кластер NLB.

NLB позволяет каждому хосту обнаруживать и получать входящий трафик TCP/IP. Этот трафик получается всеми хостами в кластере, а драйвер NLB фильтрует трафик по определенным правилам порта. Узлы NLB не взаимодействуют друг с другом для входящих трафика, исходя из клиента, так как NLB включен на всех узлах. Для распространения входящих трафика на каждом хосте создается правило статистического сопоставления. Это сопоставление остается таким же, если в кластере не будет изменений (например, узел удален или добавлен).

Конвергенция — это процесс восстановления состояния кластера. Этот процесс вызывается при изменении кластера (например, сбой узла, листья или повторное в него). В этом процессе кластером принимаются следующие действия:

В ходе этого процесса оставшийся хост продолжает обрабатывать входящий клиентский трафик. Если в кластер добавляется хост, конвергенция позволяет этому хосту получать свою долю трафика с балансом нагрузки. Расширение кластера не влияет на текущие операции кластера и достигается прозрачно как для интернет-клиентов, так и для серверных приложений. Однако это может повлиять на клиентские сеансы, охватывающие несколько подключений TCP при выборе сродства клиента, так как клиенты могут быть перенастроены в различные хосты кластера между подключениями. Дополнительные сведения о близости

Все узлы в кластере излучают сообщения о сердцебиении, чтобы сообщить о своей доступности в кластере. Период по умолчанию для отправки сообщений о сердцебиении — одна секунда и пять пропущенных сообщений о сердцебиении от принимающей стороны, из-за которых NLB вызывает процесс схождения.

Мы можем настроить несколько кластеров NLB в одном сетевом адаптере, а затем применить определенные правила порта к каждому из этих IP-адресов. Они называются виртуальными кластерами.

Windows 2003 г. поставляется с инструментом GUI под названием: Network Load Balancing Manager и NLB.exe — средство командной строки. В Windows 2000 это WLBS.exe и нет также средства GUI. Этот инструмент GUI можно установить на XP, чтобы управлять только Windows NLB 2003. NLB Manager использует DCOM и WMI.

Вы должны быть членом группы администраторов на узле, для которого настраивается NLB. Вам не нужно быть администратором для запуска NLB Manager.

Межсетевая связь возможна только в многоуровневом узле. Чтобы разрешить связь между серверами в одном кластере NLB, каждому серверу требуется следующая запись реестра: ключ DWORD с именем «UnicastInterHostCommSupport» и значение 1 для GUID каждой сетевой карты интерфейса (HKEY_LOCAL_MACHINESystemCurrentControlSetServicesWLBSParametersInterface )

Количество адаптеров не имеет ограничений. Различные хосты могут иметь различные сетевые адаптеры.

Единый сетевой адаптер в режиме unicast

Параметры кластера

Диспетчер балансировки сетевых нагрузок

Вы не можете открыть сетевое свойство для хоста, если nLB Manager в настоящее время использует это.

NLB можно настроить для любого компьютера, если у вас есть административные права на удаленном компьютере.

При добавлении хоста с помощью NLB Manager правила порта и связанные с ними параметры будут унаследованы от исходного хоста.

Нельзя открывать другие хосты из NLB Manager, если NLB работает в едином адаптере с режимом Unicast, так как единый сетевой адаптер с режимом однонаправленной передачи не может иметь внутрихозяйную связь. Чтобы это произошло, используйте этот реестр: UnicastHostInterCommSupport и установите его до 1.

Параметр Credentials в NLB Manager можно использовать для указания учетных данных для удаленных хостов. NLB Manager попытается подключиться к удаленным хостов с помощью этого учетного данных.

Вы должны использовать параметры TCP/IP Property или NLB Manager, но не следует использовать оба параметра для настройки NLB.

Диспетчер NLB не подключает и не показывает неправильно настроенные хосты в кластере.

Хосты, для которых у вас нет административного членства, не будут отображаться в NLB Manager.

Список всех диапазонов портов сортироваться по диапазону портов.

NLB может смешивать контроллеры домена, серверы-члены, серверы workgroup и так далее. Это не ограничение NLB на самом деле. NLB должна иметь доступ к компьютеру с помощью встроенной учетной записи администратора.

Когда вы включаете NLB на сервере, записи реестра по умолчанию создаются в соответствии с: HKLMSystemCurrentControlSetServicesWLBS

ДИП и VIP-персона должны быть введены правильно. Узлы кластера будут совпадать друг с другом, если вы не сможете принять этот шаг, но они не смогут принимать и трафик.

Сообщение о конфликте IP-адресов отображается только для VIP-адреса. Убедитесь, что VIP-персона из всех адаптеров удаляется, если вы отстранили NLB на этом хосте.

С помощью NLB можно использовать следующие средства для мониторинга:

При балансировки нагрузки запросов PPTP на каждом хосте NLB требуются два сетевых адаптера.

При настройке двух сетевых адаптеров необходимо предоставить адрес шлюза в свойстве TCP/IP. Шлюз должен быть введен в FE NIC.

NLB необходимо включить в сетевом адаптере Public или Internet.

Для загрузки балансировки подключения telnet необходимо открыть связанные порты. Подключение telnet охватывает только одно подключение на IP, поэтому в этом случае сродство не требуется.

Первоначальная реализация NLB — WLBS. Все события записывают в источнике WLBS. Интерфейс командной строки для NLB — WLBS, а в Windows 2003 г. — NLB.

Поставщик WMI NLB Manager не может подключиться к хосту кластера, для которого имя компьютера начинается с числимом. Это ошибка.

NLB не реплицирует данные приложения. Возможно, вам потребуется использовать систему репликации контента Майкрософт (CRS) или стороне программного обеспечения.

NLB не отслеживает остановку или запуск служб. Вы можете использовать HTTPMon, который поставляется с набором ресурсов. Вы можете использовать следующие средства, описанные ниже:

Средства мониторинга сторонних сторон

Режим unicast с единой NIC

В режиме Unicast NLB изменяет MAC-адрес сетевого адаптера в кластер MAC. Теперь в кластере доступен только один MAC-адрес, то есть кластер MAC, и этот mac-адрес должен быть одинаковым для всех хостов кластера. Сетевой перенаправление не может переадресовать запрос на тот же MAC-адрес, если он исходит из того же источника, а также не может связываться друг с другом. Это является недостатком режима Unicast с единой NIC. Чтобы позволить хостам общаться друг с другом, вьйте режим MULTICAST или установите второй NIC.

Windows 2008 г. Улучшения балансировки сетевых нагрузок

Community Отказ от контента решений

Корпорация Майкрософт и/или соответствующие поставщики не делают представлений о пригодности, надежности или точности сведений и связанных с ними графических данных, содержащихся в этой записи. Вся такая информация и связанная графика предоставляются «как есть» без какой-либо гарантии. Корпорация Майкрософт и/или соответствующие поставщики тем самым отключили все гарантии и условия в отношении этой информации и связанной графики, включая все подразумеваемые гарантии и условия торговой доступности, пригодность для определенной цели, рабочий труд, название и неущемление. Вы соглашаетесь с тем, что ни в коем случае корпорация Майкрософт и/или ее поставщики не несут ответственности за любые прямые, косвенные, карательные, случайные, особые, последующие повреждения или любые повреждения, включая без ограничений ущерб за потерю использования, данных или прибыли, возникающие из-за использования или невозможности использования сведений и связанных с ними графических элементов, содержащихся здесь, независимо от того, были ли они основаны на контракте, расценки, халатности, строгой ответственности или иным образом, даже если Корпорации Майкрософт или любому из ее поставщиков была рекомендована возможность ущерба.

Источник

Just a Random Microsoft Azure and Computing Tech info

Introduction

NLB is a scalable, high-availability feature that you can install on all editions of Windows Server 2016. NLB distributes network traffic across a set of servers, balancing the workload each server must handle. It is scalable because it enables you to add additional servers (also called nodes or hosts). A node (or host) in an NLB cluster in Windows Server 2016 is a computer, either physical or virtual, that is running the Windows Server 2016 operating system. Each node or host runs a copy of the server applications that are also running on the other hosts in the cluster.

Windows Server 2016 NLB clusters can have between 2 and 32 nodes. When you create an NLB cluster, it creates a virtual network address and virtual network adapter. The virtual network adapter has an IP address and a media access control (MAC) address. Network traffic to this address is distributed evenly across the nodes in the cluster. In a basic NLB configuration, each node in an NLB cluster services requests at a rate that is approximately equal to that of all other nodes in the cluster. When an NLB cluster receives a request, it forwards that request to the node that currently is the least used. You also can configure NLB to direct traffic to a specific host, called a default host.

New in Windows Server 2016 is it includes a new Azure-inspired Software Load Balancer (SLB) as a component of the Software Defined Networking (SDN) infrastructure. Use SLB instead of NLB if you are using SDN, are using non-Windows workloads, need outbound network address translation (NAT), or need Layer 3 (L3) or non-TCP based load balancing. You can continue to use NLB with Windows Server 2016 for non-SDN deployments.

How NLB works настройка nlb в windows server 2019

When you configure an application to use NLB, clients address the application using the NLB cluster address rather than the address of nodes that participate in the NLB cluster. The NLB cluster address is a virtual address that is shared between the hosts in the NLB cluster.

For this NLB demo this time, I will be using 03 Server, which is 01 Domain Server and 02 Member Server.

1 – Now switch to the SUB-01 server and open Windows PowerShell ISE

настройка nlb в windows server 2019

2 – In the Windows PowerShell ISE type

настройка nlb в windows server 2019настройка nlb в windows server 2019

3 – Once the process complete, open Server Manager, click Tools and verify that Network Load Balancing Manager is installed

настройка nlb в windows server 2019

4 – Now switch to SUB-02, open Server Manager, click Tools and verify also that Network Load Balancing Manager is installed

настройка nlb в windows server 2019

5 – On the SUB-01 server, in the Windows PowerShell ISE, type

настройка nlb в windows server 2019

6 – Once the command complete, still in the Windows PowerShell ISE, type

настройка nlb в windows server 2019

7 – Now to add a second host to the cluster, still in Windows PowerShell ISE, type

настройка nlb в windows server 2019

8 – On the SUB-01 Server, open Server Manager, click the Tools and then click Network Load Balancing Manager

настройка nlb в windows server 2019

9 – In the Network Load Balancing Manager console, verify that nodes SUB-01 and SUB-02 display with the status of Converged for the New HelpTeh-NLB cluster

настройка nlb в windows server 2019

10 – Next, right-click the NewHelpTech-NLB cluster, and then click Cluster properties

настройка nlb в windows server 2019

11 – In the NewHelpTech-NLB(172.16.1.100), on the Cluster Parameters tab, verify that the cluster is set to use the Multicast operations mode

настройка nlb в windows server 2019

12 – On the Port Rules tab, verify that there is a single port rule named All that starts at port 0 and ends at port 65535 for both TCP and UDP protocols and that it uses Single affinity

настройка nlb в windows server 2019

Configuring and Managing the NLB Cluster

1 – Before we start to configure and manage the NLB Cluster, log on to the SUB-02 server, and create 01 folder named NewHelpTech in C:

2 – then copy all C:inetpubwwwroot to C:NewHelpTech folder

3 – Open PowerShell and type

New-Website –Name NewHelpTech –PhysicalPath “C:NewHelpTech” –Port 5678

настройка nlb в windows server 2019

4 – Open PowerShell and type

New-NetFirewallRule –DisplayName NewHelpTech –Protocol TCP –LocalPort 5678

настройка nlb в windows server 2019

5 – Now switch to Domain Server and in the IE type http://SUB-02:5678

Verify that the static basic website настройка nlb в windows server 2019

6 – Now switch back to the SUB-01 server and open Network Load Balancing Manager, in the Network Load Balancing Manager console, right-click NewHelpTech-NLB, and then click Cluster Properties

#_# In the NewHelpTech-NLB(172.16.1.100), on the Port Rules tab, select the All port rule, and then click Remove

настройка nlb в windows server 2019настройка nlb в windows server 2019

7 – On the Port Rules tab, click Add

настройка nlb в windows server 2019настройка nlb в windows server 2019

8 – In the Add/Edit Port Rule box, enter the following information, and then click OK
Port range: 80 to 80
Protocols: Both
Filtering mode: Multiple Host
Affinity: None

настройка nlb в windows server 2019

9 – On the Port Rules tab, click Add again

In the Add/Edit Port Rule box, enter the following information, and then click OK
Port range: 5678 to 5678
Protocols: Both
Filtering mode: Single Host

настройка nlb в windows server 2019

10 – Click OK to close the NewHelpTech-NLB(172.16.1.100)

настройка nlb в windows server 2019

11 – In the Network Load Balancing Manager console, right-click SUB-01, and then click Host Properties

настройка nlb в windows server 2019

12 – On the Port Rules tab, click the port rule that has 5678 as the Start and End value, and then click Edit

настройка nlb в windows server 2019

13 – Click the Handling priority value, and change it to 10 and click OK twice to close

настройка nlb в windows server 2019настройка nlb в windows server 2019

Validate port rules

1 – To validate port rules, switch to DC Server, in IE type http://NewHelpTech-NLB:5678, and then Refresh the site few times and verify that you see static basic website

настройка nlb в windows server 2019

Manage host availability in the NLB cluster

1 – Switch to the SUB-01 server, in the Network Load Balancing Manager console, right-click SUB-01 click Control Host, and then click Suspend

настройка nlb в windows server 2019

2 – Click the NewHelpTech-NLB node

#_# Verify that node SUB-01 displays as Suspended, and that node SUB-01 displays as Converged

настройка nlb в windows server 2019

3 – Right-click SUB-01, click Control Host, and then click Resume

настройка nlb в windows server 2019

4 – Right-click SUB-01, click Control Host and then click Start

настройка nlb в windows server 2019

5 – Click the NewHelpTech-NLB node

#_# Verify that both nodes SUB-01 and SUB-02 now display as Converged. You might have to refresh the view

настройка nlb в windows server 2019

Good luck! Just give it try – I’m sure you’ll love it as well. If you have any comments or questions on feel free to contact me.

That’s all for now. 🙂

Источник

Компонент балансировки сетевой нагрузки  (Network Load Balancing, NLB) в Windows Server 2012 распределяет сетевой трафик по нескольким серверам с помощью протокола TCP/IP. Группируя два и более сервера в единый виртуальный кластер, NLB повышает доступность и масштабируемость серверных приложений.

NLB умеет выполнять балансировку нагрузки любых приложений и служб, использующих сетевой протокол TCP/IP и связанных с определенным TCP- или UDP-портом. Использовать балансировку сетевой нагрузки целесообразно для обеспечения работы приложений, выполняемых без учета состояния, например для веб-, FTP- или служб удаленных рабочих столов (Remote Desktop).

Также NLB может пригодиться и в менее очевидных ситуациях. К примеру, с помощью этого механизма можно обеспечить повышенную избыточность веб-серверов front-end на базе SharePoint 2010, а при использовании Exchange 2010 выравнивание сетевой нагрузки можно применять в целях создания CAS-массивов для роли сервера клиентского доступа (Client Access Server).

Принцип работы

Кластер NLB представляет из себя группу серверов, называемых узлами кластера. На каждом узле выполняется собственная копия приложения. Механизм NLB занимается тем, что распределяет входящие запросы между узлами в соответствии с заданными правилами. При этом можно настроить нагрузку для каждого узла, а если нужно обработать дополнительную нагрузку, узлы можно добавлять к кластеру динамически. Кроме того, технология балансировки сетевой нагрузки может направлять весь трафик на один определенный узел, называемый узлом по умолчанию.

NLB дает возможность обращаться ко всем серверам в кластере по единому IP-адресу, а также поддерживает набор уникальных IP-адресов для каждого узла. При сбое на узле или его отключении нагрузка автоматически перераспределяется между работающими серверами. При внезапном отключении все активные подключения к такому серверу будут потеряны, однако если работа узла завершается намеренно, есть возможность обслужить все активные подключения до отключения компьютера. В любом случае отключенный компьютер, когда он будет готов к работе, может снова присоединиться к кластеру в рабочем режиме и взять на себя часть нагрузки, что позволит снизить объем данных, приходящийся на другие узлы кластера.

Все узлы NLB кластера обмениваются сообщениями пульса (heartbeat) для согласования данных о членстве в кластере. По умолчанию, если узел не отправляет сообщений пульса в течение пяти секунд, это считается сбоем. При сбое на узле остальные узлы кластера начинают процесс схождения (converging):

• выявляют узлы, оставшиеся активными членами кластера;
• назначают узел с наивысшим приоритетом узлом по умолчанию;
• обеспечивают обработку новых запросов клиентов работающими узлами.

В процессе схождения работающие узлы ищут регулярные сообщения пульса. Если узел, на котором произошел сбой, начинает передавать сообщения пульса регулярно, он снова присоединяется к кластеру в процессе схождения. Когда к кластеру пытается присоединиться новый узел, он передает свои сообщения пульса, которые тоже запускают схождение. После того как все узлы кластера придут к соглашению по членству в кластере на данный момент, нагрузка от клиентов перераспределяется между узлами, оставшимися в результате, и схождение завершается.

Схождение обычно длится несколько секунд, поэтому перерыв в работе клиентских служб оказывается незначительным. Во время схождения узлы, оставшиеся активными, продолжают обработку клиентских запросов без изменения в имеющихся подключениях. Схождение завершается, когда все узлы одинаково описывают членство в кластере и схему распределения на протяжении нескольких периодов пульса.

Установка

NLB устанавливается как стандартный компонент Windows и не требует для запуска и работы каких-либо изменений в оборудовании. Тем не менее при планировании NLB кластера необходимо учесть некоторый моменты:

• В кластер может входить до 32 узлов;
• Все узлы кластера должны располагаться в одной подсети;
• Количество сетевых адаптеров на каждом узле не ограничено, при этом различные узлы могут иметь разное число адаптеров;
• Все сетевые адаптеры в одном кластере необходимо использовать либо в одноадресном (Unicast), либо в многоадресном (Multicast) режиме. Балансировка сетевой нагрузки не поддерживает смешанную среду одноадресной и многоадресной рассылки внутри одного кластера;
• При использовании одноадресного режима сетевой адаптер, задействованный для нужд кластера, должен поддерживать программное изменение MAC-адреса;
• Сетевой адаптер, на котором включается NLB, может использовать только протокол TCP/IP. Нельзя добавлять для этого адаптера другие протоколы (например IPX);
• IP-адреса серверов в составе кластера должны назначаться статически. NLB не поддерживает протокол DHCP и отключает его на каждом настраиваемом интерфейсе;
• NLB не работает совместно со службой Failover Clustering. Если сервер является частью отказоустойчивого кластера, то задействовать на нем балансировку сетевой нагрузки не получится.

Если все условия соблюдены, то приступаем к развертыванию кластера. Первым делом необходимо установить сам компонент балансировки сетевой нагрузки. Для этого открываем Server Manager и запускаем мастер установки ролей и компонентов. Переходим на вкладку Features и отмечаем компонент Network Load Balancing.

установка компонента NLB

Также NLB можно установить с помощью PowerShell, следующей командой:

Install-WindowsFeature -Name NLB -IncludeManagementTools

Создание нового NLB кластера

Установив компонент NLB приступим к созданию кластера, для чего воспользуемся оснасткой Network Load Balancing Manager. Открыть ее можно из Server Manager, кликнув по кнопке Tools и выбрав соответствующий пункт меню. Как вариант, можно нажать Win+R и ввести команду nlbmgr.

запуск оснастки NLB Manager

Для создания нового кластера в NLB Manager выбираем пункт Cluster -> New.

создание нового NLB кластера

В открывшемся окне указываем имя (или IP-адрес) компьютера, которому предстоит стать первым узлом кластера и жмем «Connect». Выбираем сетевой интерфейс, который будет задействован для нужд кластера.

выбор сетевого интерфейса

Примечание. Балансировка сетевой нагрузки может быть привязана к нескольким сетевым адаптерам, что позволяет настроить несколько независимых NLB-кластеров на каждом узле. Поддержка нескольких сетевых адаптеров — это не то же самое, что виртуальные кластеры, в которых можно настраивать несколько кластеров на одном сетевом адаптере.

Дальше идут настройки узла:

• Задаем уникальный идентификатор узла (unique host identifier). Это очень важный параметр, с помощью которого устанавливается приоритет при обработке трафика. Узел с наименьшим host ID среди членов кластера на данный момент обрабатывает весь сетевой трафик кластера, не предусмотренный правилами для порта;
• Указываем выделенный IP-адрес (Dedicated IP, DIP) — уникальный адрес узла, по которому он будет доступен в сети;
• Определяем дефолтное состояние (Default state) узла — запущен (Started), остановлен (Stopped) или приостановлен (Suspended) и указываем, должен ли узел сохранять это состояние при перезагрузке.

выбор параметров хоста

Задаем виртуальный IP-адрес кластера (Virtual IP, VIP) — адрес, который будет совместно использоваться всеми узлами в кластере. NLB добавит этот IP-адрес в стек протоколов TCP/IP на выбранном интерфейсе всех узлов, вводимых в состав кластера. При необходимости для одного сетевого интерфейса можно указать несколько IP-адресов.

задаем IP адрес кластера

Идем дальше.

Задаем имя кластера (Full Internet name) соответствующее указанному IP-адресу. В принципе это имя ни на что не влияет, но правильнее будет вписать сюда FQDN-имя, по которому клиенты будут обращаться к кластеру. Также не забудьте создать в DNS соответствующую запись.

Указываем режим работы кластера, который определяет, будет ли для операций кластера использоваться встроенный MAC-адрес адаптера:

Одноадресный (Unicast) — В этом режиме встроенный MAC-адрес физического сетевого адаптера отключается и заменяется МАС-адресом виртуального адаптера кластера. Оба IP-адреса сервера (выделеный IP-адрес сервера и IP-адрес кластера) разрешаются в один единственный МАС-адрес кластера.

При использовании одноадресного режима всем узлам кластера назначается один и тот же IP и MAC-адрес. Поскольку все узлы кластера разделяют один MAC-адрес, а оригинальный MAC-адрес адаптера не используется, использовать адаптер кластера для других целей кроме кластерных (например для управления сервером) становится проблематично. Эту проблему можно обойти, используя несколько сетевых адаптеров: один для кластерного трафика, второй для управления.

Многоадресный (Multicast) — В этом режиме NLB преобразует MAC-адрес кластерного адаптера в адрес группы. IP-адрес кластера разрешается в этот адрес групповой рассылки, а выделенный IP-адрес сервера — в оригинальный MAC-адрес адаптера.

При этом у адаптера остается оригинальный, встроенный MAC-адрес, что дает возможность использовать оба IP-адреса: кластера для трафика клиент-кластер, а выделенный для остального сетевого трафика, специфичного для компьютера. Обратите внимание, что режим Multicast обязательно должен поддерживаться сетевым оборудованием, кроме того может потребоваться дополнительная настройка на коммутаторе.

Многоадресный IGMP (IGMP Multicast) — Многоадресный режим с поддержкой протокола групповой передачи данных (Internet Group Management Protocol, IGMP). Включение поддержки IGMP дает возможность ограничить широковещательный трафик, т.е. обеспечить прохождение трафика к NLB-кластеру только через порты, обслуживающие узлы кластера, а не через все порты коммутатора. Для обеспечения этого режима необходимо включить поддержку IGMP на сетевом оборудовании.

задаем режим работы кластера

Примечание. Все узлы кластера должны работать в одном режиме — либо в одноадресном, либо в многоадресном. NLB не поддерживает смешанную среду одноадресной и многоадресной рассылки внутри одного кластера.

Переходим к следующему экрану. Настройку правил портов (Port Rules) сейчас производить не будем, поэтому просто жмем «Finish». Первый этап создания NLB кластера завершен.

завершаем создание кластера

Добавление узла в кластер

Итак, мы имеем NLB кластер, состоящий из одного узла. Добавим остальные. Kликаем на имени кластера правой клавишей и выбираем пункт «Add Host To Cluster».

добавление нового узла к кластеру

Процедура добавления практически аналогична предыдущей. Указываем имя сервера, жмем «Connect» и выбираем сетевой интерфейс, который будет использоваться кластером.

подключение и выбор интерфейса узла кластера

Задаем host ID и указываем выделенный IP-адрес узла, а также состояние узла по умолчанию.

настройка параметров нового узла

И жмем «Finish». Таким же образом добавляем остальные сервера в кластер.

завершение добавления узла в кластер

Создать кластер и добавить в него узлы можно и с помощью PowerShell. Команда для создания кластера:

New-NlbCluster -ClusterName nlb.contoso.com -InterfaseName ″Ethernet″
-ClusterPrimaryIP 192.168.0.10 -SubnetMask 255.255.255.0
-OperationMode Unicast -Force

Для добавления узла в кластер:

Get-NlbCluster | Add-NlbClusterNode SRV5.contoso.com -NewNodeInterface ″Ethernet″ -Force

создание кластера с помощью PowerShell

В результате у нас получился NLB кластер, состоящий из трех узлов.

готовый NLB кластер

Настройка параметров кластера

После добавления всех узлов можно приступать к настройке кластера. Кликаем правой клавишей на имени кластера и переходим на пункт «ClusterProperties».

настройка параметров кластера

На вкладке Cluster IP Addresses можно изменить существующий адрес кластера или добавить новый. Балансировки сетевой нагрузки  позволяет настроить для одного кластера несколько IP-адресов, для каждого адреса назначить собственное имя и настроить правила обработки трафика. Для этого не требуется выделять отдельный адаптер, так что можно настраивать несколько виртуальных NLB кластеров на одном сетевом адаптере.

изменениедобавление IP адреса кластера

На вкладке Cluster Parameters можно настроить соответствие имени и IP-адреса кластера и изменить режим его работы.

изменение режима работы кластера

И на вкладке Port Rules настраиваются правила обработки трафика всеми узлами кластера. При создании кластера создается правило по умолчанию, которое надо изменить, поэтому выделяем его и жмем «Edit».

добавление правил портов

Правило порта включает в себя следующие настройки:

Cluster IP Addresses —  IP-адрес кластера, для которого будет действовать это правило. По умолчанию отмечен чекбокс All, что означает воздействие данного правила на все адреса в кластере.

Port Range — диапазон портов, на которых будет обрабатываться трафик кластера. По умолчанию указаны все порты, что не очень правильно. Например, если у вас кластеризовано веб-приложение, использующее для клиентского доступа порт 80 TCP, то указываем этот порт как начало и конец диапазона. Если нужно указать несколько портов, то для каждого придется создать отдельное правило.

Protocols — протоколы, к которым будет применяться данное правило: TCP, UDP или оба.

Filtering Mode — режим фильтрации. Здесь мы указываем, как именно будет обрабатываться трафик кластера. Можно выбрать из двух режимов:

1) Multiple host — трафик по указанным портам будет распределяться среди всех узлов кластера. В этом случае нужно выбрать режим сходства (affinity), который определяет привязку клиента к определенному узлу кластера:

  • None — привязка не используется. Все новые соединения распределяются по разным узлам в зависимости от нагрузки;
  • Single — привязка осуществляется по IP-адресу клиента. После того, как клиент осуществил подключение к определенному узлу кластера, в течение установленного сеанса все новые соединения с его IP будут направлены на тот же узел кластера;
  • Network — привязка основана на принадлежности клиента к определенной частной подсети. Когда один клиент устанавливает соединение к некоторому узлу, все соединения из этой подсети будут направлены на тот же узел.

Также обратите внимание на чекбокс Timeout minutes. Установка галки включает режим расширенного сходства (Extended Affinity), который обеспечивает привязку в отсутствие активных текущих подключений от клиента к узлу, а также позволяет клиентам сохранять соответствие с узлом при изменении конфигурации кластера. Здесь мы можем указать время, в течение которого клиент будет привязан к определенному узлу при отсутствии активного текущего подключения с его стороны.

2) Single host — весь трафик  по указанным портам будет обрабатываться одним узлом кластера, а если этот узел недоступен — то направлен на следующий узел, вычисляемый по номеру Handling Priority (приоритет обработки). Приоритет присваивается узлу при добавлении сервера в кластер и может быть изменен в свойствах узла.

Disable this Port Range — отметив этот пункт, мы запретим обработку трафика на указанных портах. Как я уже говорил, весь сетевой трафик, не подпадающий под действие правил портов, обрабатывается действующим узлом кластера с минимальным идентификатором хоста. Чтобы избежать ненужной нагрузки, весь нецелевой трафик можно запретить. Так в случае с 80 портом достаточно создать 2 правила и запретить весь трафик на портах 0-79 и 81-65535.

редактирование правила для кластера

При создании правил порта нужно учесть, что:

• Правила на всех узлах кластера должны быть идентичны. При попытке присоединить к кластеру узел с иными правилами или с другим числом правил он не будет принят в кластер;
• Чтобы балансировка сетевой нагрузки корректно обрабатывала IP-фрагменты, не следует использовать значение None для сходства, если выбран протокол UDP или Both;
• Если NLB используется для балансировки нагрузки трафика VPN (напр. PPTP/GRE или IPSEC/L2TP), то для правил порта используйте режим сходства Single или Network.

Настройка параметров отдельного узла

Кроме настройки всего кластера есть возможность настраивать параметры отдельных его узлов. Для этого выбираем узел, кликаем на нем правой клавишей и выбираем «Host Properties».

настройка параметров хоста

В окне Host Parameters мы сможем:

• Изменить идентификатор узла, изменив тем самым его приоритет при обработке нецелевого трафика;
• Поиздеваться над его выделенным IP — изменить, удалить или добавить новый. Кстати, выделенный IP-адрес для работы NLB вовсе не обязателен, и при желании его можно вообще не использовать;
• Изменить дефолтное состояние узла. Так по умолчанию после перезагрузки узел сразу стартует и начинает обрабатывать клиентские подключения. Изменив дефолтное состояние узла на Stopped и указав хранить это состояние, тем самым мы предотвратим автоматический старт и начало обработку клиентских подключений сервером после перезагрузки. Это может понадобиться для проверки корректности работы сервера, например после установки обновлений.

изменение параметров хоста

Также заглянем в правила портов. Здесь нас интересуют два пункта:

Load Weight — процент нагрузки. В режиме фильтрации Multiple Hosts параметр Load Weight используется для того, чтобы задать процент трафика, который должен обрабатываться этим узлом по соответствующему правилу. По умолчанию используется вариант Equal, при котором происходит равномерное распределение нагрузки между всеми узлами кластера. Чтобы задать для узла определенный процент, нужно убрать галку и указать значение от 1 до 100. Значение 0 вообще исключает данный узел из обработки трафика.

Обратите внимание, что сумма значений Load Weight для каждого узла параметра не обязательно должна составлять 100 процентов. Реальная часть трафика для каждого узла рассчитывается динамически как частное от деления процента, заданного для узла, на суммарный процент для всего кластера.

Handling Priority — приоритет обработки трафика в режиме фильтрации Single host. Этот параметр указывает приоритет узла для трафика по данному правилу. Узел с наиболее высоким приоритетом будет обрабатывать весь трафик для этого правила, а при его недоступности трафик будет перенаправлен на следующий по приоритетности узел. Чем меньше значение Handling Priority, тем выше приоритет, значение 1 соответствует наиболее высокому приоритету.

редактирование правила для хоста

Управление кластером

И немного об управлении кластером NLB. Управление можно осуществлять как на уровне отдельного узла, так и на уровне всего кластера. Для управления узлом кликаем на нем и выбираем «Control Host». Дальше на выбор, можно:

• Start — запустить обработку трафика на данном узле;
• Stop — остановить обработку трафика на данном узле. При этом все текущие соединения будут закрыты;
• Drainstop — остановить обработку трафика на узле, предварительно обработав все текущие подключения. В этом варианте остановки узел обрабатывает текущие клиентские подключения, но не принимает новых;
• Suspend — приостановить обработку трафика на данном узле;
• Resume — соответственно возобновить приостановленную работу.

Для того, чтобы совсем удалить узел из кластера, надо выбрать пункт «Delete Host».

управление состоянием отдельного узла кластера

Выбрав пункт «Control Ports» можно управлять действием правил: включить (Enable), отключить (Disable) или приостановить обработку новых подключений (Drain). Это может потребоваться для того, чтобы временно исключить узел из обработки трафика кластера, например в целях диагностики.

включение и отключение правил для отдельного хоста

Все то же на уровне кластера — кликаем на имени кластера и выбираем «Control Hosts». Здесь изменения применяются уже ко всем узлам.

управление состоянием кластера

В заключение несколько советов, которые могут пригодиться при настройке NLB кластера.

1) Не смотря на название, NLB не отслеживает реальную загрузку (потребление процессорного времени, памяти, дисковой подсистемы и т.д.) на каждом узле. Под нагрузкой в NLB подразумевается только количество активных подключений к узлу. Учитывайте этот момент при настройке распределения нагрузки.
2) NLB не обеспечивает отказоустойчивость клиентских приложений. Механизм NLB отслеживает только наличие сигналов heartbeat между узлами, мониторинг отдельных служб он не осуществляет. Проще говоря, если на одном узле кластера отвалится клиентский сервис, а сетевой интерфейс останется доступен, то NLB этого не заметит и продолжит отправлять клиентов на неработоспособный узел.
3) Как в режиме Unicast, так и в Multicast (за исключением IGMP) трафик кластера распространяется по всем портам коммутатора. Чтобы изолировать этот широковещательный трафик, все IP адреса кластера желательно вынести в отдельную подсеть.
4) Вопреки расхожему мнению режим Unicast можно использовать даже при наличии одного сетевого адаптера на узле. При этом узлы вполне нормально могут общаться между собой, так как NLB преобразует ARP-таблицу внутри каждого узла, назначая каждому узлу уникальный MAC-адрес. А вот снаружи подключиться к узлу кластера не получится, для управления узлом к нему необходим физический доступ либо механизм удаленного управления типа iLo от HP.

Понравилась статья? Поделить с друзьями:
  • Настройка rdp windows 7 home basic
  • Настройка smartshare lg на windows 10
  • Настройка nlb в windows server 2016
  • Настройка rdp windows 10 через роутер
  • Настройка sli режима nvidia windows 10