Balanceamento de carga de software () SLB para SDNSoftware Load Balancing (SLB) for SDN

Aplicável a: Windows Server (canal semestral), Windows Server 2016Applies to: Windows Server (Semi-Annual Channel), Windows Server 2016

Você pode usar este tópico para saber mais sobre o balanceamento de carga de software para a rede definida pelo software no Windows Server 2016.You can use this topic to learn about Software Load Balancing for Software Defined Networking in Windows Server 2016.

Os CSPs (provedores de serviços de nuvem) e as empresas que estão implantando SDN (rede definida pelo software) no Windows Server 2016 podem usar o SLB (balanceamento de carga de software) para distribuir uniformemente o tráfego de rede do locatário e do cliente de locatário entre os recursos de rede virtual.Cloud Service Providers (CSPs) and Enterprises that are deploying Software Defined Networking (SDN) in Windows Server 2016 can use Software Load Balancing (SLB) to evenly distribute tenant and tenant customer network traffic among virtual network resources. O SLB do Windows Server permite que vários servidores hospedem a mesma carga de trabalho, fornecendo alta disponibilidade e escalabilidade.The Windows Server SLB enables multiple servers to host the same workload, providing high availability and scalability.

O SLB do Windows Server inclui os seguintes recursos.Windows Server SLB includes the following capabilities.

  • Serviços de balanceamento de carga de camada 4 (L4) para o tráfego de TCP/UDP "Norte-Sul" e "leste-oeste".Layer 4 (L4) load balancing services for 'North-South' and 'East-West' TCP/UDP traffic.

  • Balanceamento de carga de tráfego de rede interno e público.Public and Internal network traffic load balancing.

  • O dá suporte a DIPs (endereços IP dinâmicos) em redes locais virtuais (VLANs) e em redes virtuais que você cria usando a virtualização de rede Hyper-V.Supports dynamic IP addresses (DIPs) on virtual Local Area Networks (VLANs) and on virtual networks that you create by using Hyper-V Network Virtualization.

  • Suporte à investigação de integridade.Health probe support.

  • Pronto para a escala de nuvem, incluindo capacidade de expansão e capacidade de expansão para multiplexadores e agentes de host.Ready for cloud scale, including scale-out capability, and scale up capability for multiplexers and Host Agents.

Para obter mais informações, consulte recursos de balanceamento de carga de software neste tópico.For more information, see Software Load Balancing Features in this topic.

Observação

O controlador de rede não dá suporte a multilocação para VLANs. no entanto, você pode usar VLANs com SLB para cargas de trabalho gerenciadas do provedor de serviços, como a infraestrutura do datacenter e servidores Web de alta densidade.Multitenancy for VLANs is not supported by Network Controller, however you can use VLANs with SLB for service provider managed workloads, such as the datacenter infrastructure and high density Web servers.

Usando o SLB do Windows Server, você pode escalar horizontalmente seus recursos de balanceamento de carga usando VMs SLB nos mesmos servidores de computação do Hyper-V que você usa para suas outras cargas de trabalho de VM.Using Windows Server SLB, you can scale out your load balancing capabilities using SLB VMs on the same Hyper-V compute servers that you use for your other VM workloads. Por isso, o SLB dá suporte à criação e exclusão rápida de pontos de extremidade de balanceamento de carga que são necessários para operações de CSP.Because of this, SLB supports the rapid creation and deletion of load balancing endpoints that is required for CSP operations. Além disso, o SLB do Windows Server dá suporte a dezenas de gigabytes por cluster, fornece um modelo de provisionamento simples e é fácil de expandir e reduzir.In addition, Windows Server SLB supports tens of gigabytes per cluster, provides a simple provisioning model, and is easy to scale out and in.

Como o SLB funcionaHow SLB works

O SLB funciona mapeando VIPs (endereços IP virtuais) para DIPs (endereços IP dinâmicos) que fazem parte de um conjunto de recursos de serviço de nuvem no datacenter.SLB works by mapping virtual IP addresses (VIPs) to dynamic IP addresses (DIPs) that are part of a cloud service set of resources in the datacenter.

VIPs são endereços IP únicos que fornecem acesso público a um pool de VMs com balanceamento de carga.VIPs are single IP addresses that provide public access to a pool of load balanced VMs. Por exemplo, VIPs são endereços IP expostos na Internet para que os locatários e clientes locatários possam se conectar a recursos de locatário no datacenter na nuvem.For example, VIPs are IP addresses that are exposed on the Internet so that tenants and tenant customers can connect to tenant resources in the cloud datacenter.

DIPs são os endereços IP das VMs membro de um pool com balanceamento de carga por trás do VIP.DIPs are the IP addresses of the member VMs of a load balanced pool behind the VIP. Os DIPs são atribuídos dentro da infraestrutura de nuvem para os recursos de locatário.DIPs are assigned within the cloud infrastructure to the tenant resources.

VIPs estão localizados no multiplexador SLB (MUX).VIPs are located in the SLB Multiplexer (MUX). O MUX consiste em uma ou mais VMs (máquinas virtuais).The MUX consists of one or more virtual machines (VMs). O controlador de rede fornece a cada MUX cada VIP, e cada MUX, por sua vez, usa Border Gateway Protocol (BGP) para anunciar cada VIP aos roteadores na rede física como uma rota/32.Network Controller provides each MUX with each VIP, and each MUX in turn uses Border Gateway Protocol (BGP) to advertise each VIP to routers on the physical network as a /32 route. O BGP permite que os roteadores de rede física:BGP allows the physical network routers to:

  • Saiba que um VIP está disponível em cada MUX, mesmo que os MUXes estejam em sub-redes diferentes em uma rede de camada 3.Learn that a VIP is available on each MUX, even if the MUXes are on different subnets in a layer 3 network.

  • Espalhe a carga para cada VIP em todos os MUXes disponíveis usando o roteamento de vários caminhos (ECMP) de custo igual.Spread the load for each VIP across all available MUXes using Equal Cost Multi-Path (ECMP) routing.

  • Detectar automaticamente uma falha ou remoção de MUX e parar de enviar tráfego para o MUX com falha.Automatically detect a MUX failure or removal and stop sending traffic to the failed MUX.

  • Espalhe a carga do MUX com falha ou removido entre os MUXes íntegros.Spread the load from the failed or removed MUX across the healthy MUXes.

Quando o tráfego público chega da Internet, o SLB MUX examina o tráfego, que contém o VIP como um destino, e mapeia e reescreve o tráfego para que ele chegue a um DIP individual.When public traffic arrives from the Internet, the SLB MUX examines the traffic, which contains the VIP as a destination, and maps and rewrites the traffic so that it will arrive at an individual DIP. Para o tráfego de rede de entrada, essa transação é executada em um processo de duas etapas que é dividido entre as VMs (máquinas virtuais) do MUX e o host do Hyper-V onde o DIP de destino está localizado:For inbound network traffic, this transaction is performed in a two-step process that is split between the MUX virtual machines (VMs) and the Hyper-V host where the destination DIP is located:

  • Balanceamento de carga – a MUX usa o VIP para selecionar um DIP, encapsula o pacote e encaminha o tráfego para o host do Hyper-V onde o DIP está localizado.Load balance - the MUX uses the VIP to select a DIP, encapsulates the packet, and forwards the traffic to the Hyper-V host where the DIP is located.

  • NAT (conversão de endereços de rede) – o host Hyper-V remove o encapsulamento do pacote, converte o VIP em um DIP, remapeia as portas e encaminha o pacote para a VM DIP.Network Address Translation (NAT) - the Hyper-V host removes encapsulation from the packet, translates the VIP to a DIP, remaps the ports, and forwards the packet to the DIP VM.

O MUX sabe como mapear VIPs para o DIPs correto devido às políticas de balanceamento de carga que você define usando o controlador de rede.The MUX knows how to map VIPs to the correct DIPs because of load balancing policies that you define by using Network Controller. Essas regras incluem protocolo, porta de front-end, porta de back-end e algoritmo de distribuição (5, 3 ou 2 tuplas).These rules include Protocol, Front-end Port, Back-end port, and distribution algorithm (5, 3, or 2 tuples).

Quando as VMs de locatário respondem e enviam o tráfego de rede de saída para a Internet ou para locais de locatário remotos, como o NAT é executado pelo host Hyper-V, o tráfego ignora o MUX e vai diretamente para o roteador de borda do host Hyper-V.When tenant VMs respond and send outbound network traffic back to the Internet or remote tenant locations, because the NAT is performed by the Hyper-V host, the traffic bypasses the MUX and goes directly to the edge router from the Hyper-V host. Esse processo de bypass de MUX é chamado de retorno de servidor direto (DSR).This MUX bypass process is called Direct Server Return (DSR).

E, depois que o fluxo de tráfego de rede inicial é estabelecido, o tráfego de rede de entrada ignora completamente o SLB MUX.And after the initial network traffic flow is established, the inbound network traffic bypasses the SLB MUX completely.

Na ilustração a seguir, um computador cliente executa uma consulta DNS para o endereço IP de um site da empresa do SharePoint – nesse caso, uma empresa fictícia chamada contoso.In the following illustration, a client computer performs a DNS query for the IP address of a company SharePoint site - in this case, a fictional company named Contoso. O processo a seguir ocorre.The following process occurs.

  • O servidor DNS retorna o 107.105.47.60 VIP para o cliente.The DNS server returns the VIP 107.105.47.60 to the client.

  • O cliente envia uma solicitação HTTP para o VIP.The client sends an HTTP request to the VIP.

  • A rede física tem vários caminhos disponíveis para alcançar o VIP localizado em qualquer MUX.The physical network has multiple paths available to reach the VIP located on any MUX. Cada roteador ao longo do caminho usa ECMP para escolher o próximo segmento do caminho até chegar à solicitação em um MUX.Each router along the way uses ECMP to pick the next segment of the path until the request arrives at a MUX.

  • O MUX que recebe a solicitação verifica as políticas configuradas e vê que há dois DIPs disponíveis, 10.10.10.5 e 10.10.20.5, em uma rede virtual para lidar com a solicitação para o VIP 107.105.47.60The MUX that receives the request checks configured policies, and sees that there are two DIPs available, 10.10.10.5 and 10.10.20.5, on a virtual network to handle the request to the VIP 107.105.47.60

  • O MUX seleciona o DIP 10.10.10.5 e encapsula os pacotes usando VXLAN para que ele possa enviá-lo para o host que contém o DIP usando o endereço de rede física dos hosts.The MUX selects the DIP 10.10.10.5 and encapsulates the packets using VXLAN so it can send it to the host containing the DIP using the hosts physical network address.

  • O host recebe o pacote encapsulado e o inspeciona.The host receives the encapsulated packet and inspects it. Ele remove o encapsulamento e reescreve o pacote, de modo que o destino agora é o DIP 10.10.10.5 em vez do VIP e envia o tráfego para a VM DIP.It removes the encapsulation and rewrites the packet so the destination is now the DIP 10.10.10.5 instead of the VIP and sends the traffic to DIP VM.

  • A solicitação agora chegou ao site contoso SharePoint no farm de servidores 2.The request has now reached the Contoso SharePoint site in Server Farm 2. O servidor gera uma resposta e a envia para o cliente, usando seu próprio endereço IP como a origem.The server generates a response and sends it to the client, using its own IP address as the source.

  • O host intercepta o pacote de saída no comutador virtual que se lembra de que o cliente, agora, o destino, fez a solicitação original para o VIP.The host intercepts the outgoing packet in the virtual switch which remembers that the client, now the destination, made the original request to the VIP. O host reescreve a origem do pacote para ser o VIP para que o cliente não veja o endereço DIP.The host rewrites the source of the packet to be the VIP so that to the client does not see the DIP address.

  • O host encaminha o pacote diretamente para o gateway padrão para a rede física que usa sua tabela de roteamento padrão para encaminhar o pacote para o cliente que, eventualmente, recebe a resposta.The host forwards the packet directly to the default gateway for the physical network which uses its standard routing table to forward the packet on to the client which eventually receives the response.

Processo de balanceamento de carga de software

Tráfego de datacenter interno de balanceamento de cargaLoad balancing internal datacenter traffic

Ao balancear a carga do tráfego de rede interno ao datacenter, como entre os recursos de locatário que estão sendo executados em servidores diferentes e são membros da mesma rede virtual, o comutador virtual do Hyper-V ao qual as VMs estão conectadas executa o NAT.When load balancing network traffic internal to the datacenter, such as between tenant resources that are running on different servers and are members of the same virtual network, the Hyper-V Virtual Switch to which the VMs are connected performs NAT.

Com o balanceamento de carga de tráfego interno, a primeira solicitação é enviada e processada pelo MUX, que seleciona o DIP apropriado e roteia o tráfego para o DIP.With internal traffic load balancing, the first request is sent to and processed by the MUX, which selects the appropriate DIP and routes the traffic to the DIP. Desse ponto em diante, o fluxo de tráfego estabelecido ignora o MUX e vai diretamente da VM para a VM.From that point forward, the established traffic flow bypasses the MUX and goes directly from VM to VM.

Investigações de integridadeHealth probes

O SLB inclui investigações de integridade para validar a integridade da infraestrutura de rede, incluindo as seguintes.SLB includes health probes to validate the health of the network infrastructure, including the following.

  • Investigação de TCP para portaTCP probe to port

  • Investigação de HTTP para porta e URLHTTP probe to port and URL

Ao contrário de um dispositivo de balanceador de carga tradicional em que a investigação se origina no dispositivo e viaja pela conexão com o DIP, a investigação de SLB se origina no host onde o DIP está localizado e vai diretamente do agente de host SLB para o DIP, distribuindo ainda mais o trabalhe nos hosts.Unlike a traditional load balancer appliance where the probe originates on the appliance and travels across the wire to the DIP, the SLB probe originates on the host where the DIP is located and goes directly from the SLB host agent to the DIP, further distributing the work across the hosts.

Infraestrutura de balanceamento de carga de softwareSoftware Load Balancing Infrastructure

Para implantar o SLB do Windows Server, você deve primeiro implantar o controlador de rede no Windows Server 2016 e em uma ou mais VMs do SLB MUX.To deploy Windows Server SLB, you must first deploy Network Controller in Windows Server 2016 and one or more SLB MUX VMs.

Além disso, você deve configurar hosts Hyper-V com o comutador virtual Hyper-V habilitado para SDN e verificar se o agente de host SLB está em execução.In addition, you must configure Hyper-V hosts with the SDN-enabled Hyper-V Virtual Switch and ensure that the SLB Host Agent is running. Os roteadores que atendem aos hosts devem oferecer suporte ao roteamento e Border Gateway Protocol (ECMP) de vários caminhos de custo igual e devem ser configurados para aceitar solicitações de emparelhamento BGP do SLB MUXes.The routers that serve the hosts must support equal cost multipath (ECMP) routing and Border Gateway Protocol (BGP) and must be configured to accept BGP peering requests from the SLB MUXes.

A seguir, uma visão geral da infraestrutura SLB.Following is an overview of the SLB infrastructure.

Infraestrutura de balanceamento de carga de software

As seções a seguir fornecem mais informações sobre esses elementos da infraestrutura SLB.The following sections provide more information about these elements of the SLB infrastructure.

SCVMMSCVMM

Com o System Center 2016, você pode configurar o controlador de rede no Windows Server 2016, incluindo o Gerenciador de SLB e o Health Monitor.With System Center 2016, you can configure Network Controller on Windows Server 2016, including the SLB Manager and Health Monitor. Você também pode usar o System Center para implantar o SLB MUXs e instalar agentes de host SLB em computadores que executam o Windows Server 2016 e o Hyper-V.You can also use System Center to deploy SLB MUXs and to install SLB Host Agents on computers that are running Windows Server 2016 and Hyper-V.

Para obter mais informações sobre o System Center 2016, consulte System center 2016.For more information about System Center 2016, see System Center 2016.

Observação

Se você não quiser usar o System Center 2016, poderá usar o Windows PowerShell ou outro aplicativo de gerenciamento para instalar e configurar o controlador de rede e outra infraestrutura SLB.If you do not want to use System Center 2016, you can use Windows PowerShell or another management application to install and configure Network Controller and other SLB infrastructure. Para obter mais informações, consulte implantar o controlador de rede usando o Windows PowerShell.For more information, see Deploy Network Controller using Windows PowerShell.

Controlador de redeNetwork Controller

O controlador de rede hospeda o Gerenciador SLB e executa as seguintes ações para SLB.Network Controller hosts the SLB Manager and performs the following actions for SLB.

  • Processa comandos SLB que entram por meio da API Northbound do System Center, do Windows PowerShell ou de outro aplicativo de gerenciamento de rede.Processes SLB commands that come in through the Northbound API from System Center, Windows PowerShell, or another network management application.

  • Calcula a política de distribuição para hosts Hyper-V e SLB MUXes.Calculates policy for distribution to Hyper-V hosts and SLB MUXes.

  • Fornece o status de integridade da infraestrutura SLB.Provides the health status of the SLB infrastructure.

MUX SLBSLB MUX

O SLB MUX processa o tráfego de rede de entrada e mapeia VIPs para DIPs e encaminha o tráfego para o DIP correto.The SLB MUX processes inbound network traffic and maps VIPs to DIPs, then forwards the traffic to the correct DIP. Cada MUX também usa o BGP para publicar rotas VIP para roteadores de borda.Each MUX also uses BGP to publish VIP routes to edge routers. O BGP Keep Alive notifica o MUXes quando um MUX falha, o que permite que o Active MUXes redistribua a carga no caso de uma falha de MUX, basicamente fornecendo balanceamento de carga para os balanceadores de carga.BGP Keep Alive notifies MUXes when a MUX fails, which allows active MUXes to redistribute the load in case of a MUX failure - essentially providing load balancing for the load balancers.

Hosts que executam o Hyper-VHosts that are running Hyper-V

Você pode usar o SLB com computadores que executam o Windows Server 2016 e o Hyper-V.You can use SLB with computers that are running Windows Server 2016 and Hyper-V. As VMs no host Hyper-V podem executar qualquer sistema operacional com suporte no Hyper-V.The VMs on the Hyper-V host can run any operating system that is supported by Hyper-V.

Agente de host SLBSLB Host Agent

Ao implantar o SLB, você deve usar o System Center, o Windows PowerShell ou outro aplicativo de gerenciamento para implantar o agente de host SLB em cada computador host Hyper-V.When you deploy SLB, you must use System Center, Windows PowerShell, or another management application to deploy the SLB Host Agent on every Hyper-V host computer. Você pode instalar o agente de host SLB em todas as versões do Windows Server 2016 que fornecem suporte ao Hyper-V, incluindo o nano Server.You can install the SLB Host Agent on all versions of Windows Server 2016 that provide Hyper-V support, including Nano Server.

O agente de host SLB escuta atualizações de política SLB do controlador de rede.The SLB Host Agent listens for SLB policy updates from Network Controller. Além disso, as regras de programas de agente de host para SLB nos comutadores virtuais Hyper-V habilitados para SDN configuradas no computador local.In addition, the host agent programs rules for SLB into the SDN-enabled Hyper-V Virtual Switches that are configured on the local computer.

Comutador virtual Hyper-V habilitado para SDNSDN Enabled Hyper-V Virtual Switch

Para que um comutador virtual seja compatível com o SLB, você deve usar os comandos do Gerenciador de comutador virtual do Hyper-V ou do Windows PowerShell para criar o comutador e, em seguida, deve habilitar o VFP (plataforma de filtragem virtual) para o comutador virtual.For a virtual switch to be compatible with SLB, you must use Hyper-V Virtual Switch Manager or Windows PowerShell commands to create the switch, and then you must enable Virtual Filtering Platform (VFP) for the virtual switch.

Para obter informações sobre como habilitar o VFP em comutadores virtuais, consulte os comandos do Windows PowerShell Get-VMSystemSwitchExtension e Enable-VMSwitchExtension.For information on enabling VFP on virtual switches, see the Windows PowerShell commands Get-VMSystemSwitchExtension and Enable-VMSwitchExtension.

O comutador virtual Hyper-V habilitado para SDN executa as seguintes ações para SLB.The SDN enabled Hyper-V Virtual Switch performs the following actions for SLB.

  • Processa o caminho de dados para SLB.Processes the data path for SLB.

  • Recebe o tráfego de rede de entrada do MUX.Receives inbound network traffic from the MUX.

  • Ignora o MUX para o tráfego de rede de saída, enviando-o ao roteador usando DSR.Bypasses the MUX for outbound network traffic, sending it to the router using DSR.

  • É executado em instâncias do nano Server do Hyper-V.Runs on Nano Server instances of Hyper-V.

Roteador habilitado para BGPBGP Enabled Router

O roteador BGP executa as seguintes ações para SLB.The BGP router performs the following actions for SLB.

  • Roteia o tráfego de entrada para o MUX usando ECMP.Routes inbound traffic to the MUX using ECMP.

  • Para o tráfego de rede de saída, o usa a rota fornecida pelo host.For outbound network traffic, uses the route provided by the host.

  • Escuta atualizações de rota para VIPs de SLB MUX.Listens for route updates for VIPs from SLB MUX.

  • Remove o SLB MUXes da rotação SLB se Keep Alive falhar.Removes SLB MUXes from the SLB rotation if Keep Alive fails.

Recursos de balanceamento de carga de softwareSoftware Load Balancing Features

A seguir estão alguns dos recursos e funcionalidades do SLB.Following are some of the features and capabilities of SLB.

Funcionalidade básicaCore functionality

  • O SLB fornece serviços de balanceamento de carga de camada 4 para o tráfego de TCP/UDP "Norte-Sul" e "leste-oeste"SLB provides Layer 4 load balancing services for 'North-South' and 'East-West' TCP/UDP traffic

  • Você pode usar SLB em uma rede baseada em virtualização de rede Hyper-VYou can use SLB on a Hyper-V Network Virtualization-based network

  • Você pode usar SLB com uma rede baseada em VLAN para VMs DIP conectadas a um comutador virtual Hyper-V habilitado para SDN.You can use SLB with a VLAN-based network for DIP VMs connected to a SDN Enabled Hyper-V Virtual Switch.

  • Uma instância SLB pode lidar com vários locatáriosOne SLB instance can handle multiple tenants

  • O SLB e o DIP dão suporte a um caminho de retorno escalonável e de baixa latência, conforme implementado pelo retorno de servidor direto (DSR)SLB and DIP support a scalable and low-latency return path, as implemented by Direct Server Return (DSR)

  • O SLB funciona quando você também usa o switch Embedded Integration (SET) ou a virtualização de entrada/saída de raiz única (SR-IOV)SLB functions when you are also using Switch Embedded Teaming (SET) or Single Root Input/Output Virtualization (SR-IOV)

  • SLB inclui suporte a IPv4 (protocolo IP versão 4)SLB includes Internet Protocol version 4 (IPv4) support

  • Para cenários de gateway site a site, o SLB fornece a funcionalidade NAT para permitir que todas as conexões site a site utilizem um único IP públicoFor site-to-site gateway scenarios, SLB provides NAT functionality to enable all site-to-site connections to utilize a single public IP

  • Você pode instalar o SLB, incluindo o agente do host e o MUX, em instalação do Windows Server 2016, Full, Core e nano.You can install SLB, including the Host Agent and the MUX, on Windows Server 2016, Full, Core, and Nano Install.

Escala e desempenhoScale and performance

  • Pronto para a escala de nuvem, incluindo capacidade de expansão e capacidade de expansão para MUXes e agentes de host.Ready for cloud scale, including scale-out capability, and scale up capability for MUXes and Host Agents.

  • Um módulo de controlador de rede ativo do Gerenciador SLB pode dar suporte a 8 instâncias do MUXOne active SLB Manager Network Controller module can support 8 MUX instances

Alta disponibilidadeHigh availability

  • Você pode implantar o SLB em mais de 2 nós em uma configuração ativa/ativaYou can deploy SLB to more than 2 nodes in an active/active configuration

  • O MUXes pode ser adicionado e removido do pool de MUX sem afetar o serviço SLB.MUXes can be added and removed from the MUX pool without impacting the SLB service. Isso mantém a disponibilidade de SLB quandoThis maintains SLB availability when
    os MUXes individuais estão sendo corrigidos.individual MUXes are being patched.

  • As instâncias individuais do MUX têm um tempo de atividade de 99%Individual MUX instances have an uptime of 99%

  • Os dados de monitoramento de integridade estão disponíveis para entidades de gerenciamentoHealth monitoring data is available to management entities

SintoniaAlignment

  • Você pode implantar e configurar o SLB com o SCVMMYou can deploy and configure SLB with SCVMM

  • O SLB fornece uma borda unificada multilocatário, integrando-se diretamente a dispositivos da Microsoft, como o gateway de multilocatário do RAS, o Firewall do datacenter e o refletor de rota.SLB provides a multitenant unified edge by seamlessly integrating with Microsoft appliances such as the RAS Multitenant Gateway, Datacenter Firewall, and Route Reflector.