Creare un servizio di bilanciamento del carico interno tramite l'interfaccia della riga di comando di AzureCreate an internal load balancer by using the Azure CLI

Importante

Azure Load Balancer supporta due tipi diversi: Basic e Standard.Azure Load Balancer supports two different types: Basic and Standard. Questo articolo illustra Load Balancer Basic.This article discusses Basic Load Balancer. Load Balancer Basic è disponibile a livello generale, mentre Load Balancer Standard è attualmente in anteprima pubblica.Basic Load Balancer is generally available, whereas Standard Load Balancer is currently in Public Preview. Per altre informazioni su Load Balancer Standard, vedere Panoramica di Load Balancer Standard.For more information about Standard Load Balancer, see Standard Load Balancer Overview.

Il servizio di bilanciamento del carico interno di Azure (ILB) consente di bilanciare il carico di rete tra le macchine virtuali che si trovano in un servizio cloud o una rete virtuale con un ambito a livello di area.Azure Internal Load Balancer (ILB) provides network load balancing between virtual machines that reside inside a cloud service or a virtual network with a regional scope.

Per informazioni sull'uso e sulla configurazione di reti virtuali con un ambito a livello di area, vedere Regional virtual networks (Reti virtuali a livello di area).For information about the use and configuration of virtual networks with a regional scope, see Regional virtual networks. Le reti virtuali esistenti che sono state configurate per un gruppo di affinità non possono usare il bilanciamento del carico interno.Existing virtual networks that have been configured for an affinity group cannot use ILB.

Scenario di configurazioneConfiguration scenario

In questo scenario si crea un servizio di bilanciamento del carico interno in una rete virtuale, come illustrato nella figura seguente:In this scenario, we're creating an internal load balancer in a virtual network as shown in the following figure:

Scenario di bilanciamento del carico interno

La configurazione dello scenario è la seguente:The configuration for our scenario is as follows:

  • Due macchine virtuali denominate DB1 e DB2Two virtual machines named DB1 and DB2
  • Endpoint per il servizio di bilanciamento del carico internoEndpoints for the internal load balancer
  • Servizio di bilanciamento del carico internoAn internal load balancer

Distribuire la soluzione tramite l'interfaccia della riga di comando di AzureDeploy the solution by using the Azure CLI

La procedura seguente illustra come creare un servizio di bilanciamento del carico Internet usando Azure Resource Manager con l'interfaccia della riga di comando di Azure.The following steps show how to create an Internet-facing load balancer by using Azure Resource Manager with CLI. Con Azure Resource Manager ogni risorsa viene creata e configurata singolarmente e quindi integrata per creare una risorsa.With Azure Resource Manager, each resource is created and configured individually, and then put together to create a resource.

È necessario creare e configurare gli oggetti seguenti per distribuire un servizio di bilanciamento del carico.You need to create and configure the following objects to deploy a load balancer:

  • Configurazione di IP front-end: contiene gli indirizzi IP pubblici per il traffico di rete in ingressoFront-end IP configuration: contains public IP addresses for incoming network traffic
  • Pool di indirizzi back-end: contiene interfacce di rete (NIC) per le macchine virtuali per la ricezione di traffico di rete dal servizio di bilanciamento del caricoBack-end address pool: contains network interfaces (NICs) that enable the virtual machines to receive network traffic from the load balancer
  • Regole di bilanciamento del carico: contiene le regole che eseguono il mapping di una porta pubblica sul servizio di bilanciamento del carico alla porta nel pool di indirizzi back-endLoad-balancing rules: contains rules that map a public port on the load balancer to port in the back-end address pool
  • Regole NAT in ingresso: contiene le regole che eseguono il mapping di una porta pubblica sul servizio di bilanciamento del carico a una porta per una macchina virtuale specifica nel pool di indirizzi back-endInbound NAT rules: contains rules that map a public port on the load balancer to a port for a specific virtual machine in the back-end address pool
  • Probe: contengono probe di integrità usati per verificare la disponibilità di istanze di macchine virtuali nel pool di indirizzi back-endProbes: contains health probes that are used to check the availability of virtual machines instances in the back-end address pool

Per altre informazioni, vedere Supporto di Azure Resource Manager per Load Balancer.For more information, see Azure Resource Manager support for Load Balancer.

Configurare l'interfaccia della riga di comando per l'uso di Resource ManagerSet up CLI to use Resource Manager

  1. Se l'interfaccia della riga di comando di Azure non è mai stata usata, vedere Installare e configurare l'interfaccia della riga di comando di Azure.If you have never used Azure CLI, see Install and configure the Azure CLI. Seguire le istruzioni fino al punto in cui si seleziona l'account Azure e la sottoscrizione.Follow the instructions up to the point where you select your Azure account and subscription.
  2. Eseguire il comando azure config mode per passare alla modalità Resource Manager, come illustrato di seguito:Run the azure config mode command to switch to Resource Manager mode, as follows:

    azure config mode arm
    

    Output previsto:Expected output:

     info:    New mode is arm
    

Per creare un servizio di bilanciamento del carico interno, attenersi alla procedura dettagliata descritta di seguitoCreate an internal load balancer step by step

  1. Accedere ad Azure.Sign in to Azure.

    azure login
    

    Quando richiesto, immettere le credenziali di Azure.When prompted, enter your Azure credentials.

  2. Attivare la modalità Azure Resource Manager per gli strumenti di comando.Change the command tools to Azure Resource Manager mode.

    azure config mode arm
    

Creare un gruppo di risorseCreate a resource group

Tutte le risorse in Azure Resource Manager vengono associate a un gruppo di risorse.All resources in Azure Resource Manager are associated with a resource group. Se non è ancora stato fatto, creare un gruppo di risorse.If you haven't done so yet, create a resource group.

azure group create <resource group name> <location>

Creare un set di bilanciamento del carico internoCreate an internal load balancer set

  1. Creare un bilanciamento del carico internoCreate an internal load balancer

    Nello scenario seguente, viene creato un gruppo di risorse denominato nrprg viene creato nell'area Stati Uniti orientali.In the following scenario, a resource group named nrprg is created in East US region.

    azure network lb create --name nrprg --location eastus
    

    Nota

    Tutte le risorse per un servizio di bilanciamento del carico interno, ad esempio reti virtuali e subnet della rete virtuale, devono essere nello stesso gruppo di risorse e nella stessa area.All resources for an internal load balancers, such as virtual networks and virtual network subnets, must be in the same resource group and in the same region.

  2. Creare un indirizzo IP di front-end per il servizio di bilanciamento del carico interno.Create a front-end IP address for the internal load balancer.

    L'indirizzo IP usato deve essere compreso nell'intervallo della subnet della rete virtuale.The IP address that you use must be within the subnet range of your virtual network.

    azure network lb frontend-ip create --resource-group nrprg --lb-name ilbset --name feilb --private-ip-address 10.0.0.7 --subnet-name nrpvnetsubnet --subnet-vnet-name nrpvnet
    
  3. Creare un pool di indirizzi back-end.Create the back-end address pool.

    azure network lb address-pool create --resource-group nrprg --lb-name ilbset --name beilb
    

    Dopo aver definito un indirizzo IP front-end e un pool di indirizzi back-end, è possibile creare regole del servizio di bilanciamento del carico, regole NAT in ingresso e probe di integrità personalizzati.After you define a front-end IP address and a back-end address pool, you can create load balancer rules, inbound NAT rules, and customized health probes.

  4. Creare una regola del servizio di bilanciamento del carico per il servizio di bilanciamento del carico interno.Create a load balancer rule for the internal load balancer.

    Attenendosi alla procedura precedente, il comando crea una regola del servizio di bilanciamento del carico in ascolto sulla porta 1433 nel pool front-end e invia traffico di rete con bilanciamento del carico al pool di indirizzi back-end usando ancora la porta 1433.When you follow the previous steps, the command creates a load-balancer rule for listening to port 1433 in the front-end pool and sending load-balanced network traffic to the back-end address pool, also using port 1433.

    azure network lb rule create --resource-group nrprg --lb-name ilbset --name ilbrule --protocol tcp --frontend-port 1433 --backend-port 1433 --frontend-ip-name feilb --backend-address-pool-name beilb
    
  5. Creare regole NAT in ingresso.Create inbound NAT rules.

    Le regole NAT in ingresso vengono usate per creare endpoint in un servizio di bilanciamento del carico che viene inviato a un'istanza di macchina virtuale specifica.Inbound NAT rules are used to create endpoints in a load balancer that go to a specific virtual machine instance. Nei passaggi precedenti sono state create due regole NAT per il desktop remoto.The previous steps created two NAT rules for remote desktop.

    azure network lb inbound-nat-rule create --resource-group nrprg --lb-name ilbset --name NATrule1 --protocol TCP --frontend-port 5432 --backend-port 3389
    
    azure network lb inbound-nat-rule create --resource-group nrprg --lb-name ilbset --name NATrule2 --protocol TCP --frontend-port 5433 --backend-port 3389
    
  6. Creare probe di integrità per il servizio di bilanciamento del carico.Create health probes for the load balancer.

    Un probe di integrità controlla tutte le istanze di una macchina virtuale per assicurarsi che possano inviare il traffico di rete.A health probe checks all virtual machine instances to make sure they can send network traffic. L'istanza della macchina virtuale con controlli di probe falliti non viene rimossa dal servizio di bilanciamento del carico fino a quando non è nuovamente online e il controllo dei probe ne certifica l'integrità.The virtual machine instance with failed probe checks is removed from the load balancer until it goes back online and a probe check determines that it's healthy.

    azure network lb probe create --resource-group nrprg --lb-name ilbset --name ilbprobe --protocol tcp --interval 300 --count 4
    

    Nota

    La piattaforma Microsoft Azure usa un indirizzo IPv4 statico e instradabile pubblicamente per un'ampia gamma di scenari di amministrazione.The Microsoft Azure platform uses a static, publicly routable IPv4 address for a variety of administrative scenarios. L'indirizzo IP è 168.63.129.16.The IP address is 168.63.129.16. Questo indirizzo IP non deve essere bloccato da alcun firewall, perché potrebbe causare un comportamento imprevisto.This IP address should not be blocked by any firewalls, because this can cause unexpected behavior. Per quanto riguarda il bilanciamento del carico interno di Azure, questo indirizzo IP viene usato da probe di monitoraggio del servizio di bilanciamento del carico per determinare lo stato di integrità delle macchine virtuali in un set con carico bilanciato.With respect to Azure internal load balancing, this IP address is used by monitoring probes from the load balancer to determine the health state for virtual machines in a load-balanced set. Se si usa un gruppo di sicurezza di rete per limitare il traffico alle macchine virtuali di Azure in un set con carico bilanciato internamente o lo si applica a una subnet di rete virtuale, assicurarsi di aggiungere una regola di sicurezza di rete per consentire il traffico dall'indirizzo 168.63.129.16.If a network security group is used to restrict traffic to Azure virtual machines in an internally load-balanced set or is applied to a virtual network subnet, ensure that a network security rule is added to allow traffic from 168.63.129.16.

Creare NICCreate NICs

È necessario creare schede di interfaccia di rete (NIC) o modificare quelle esistenti e associarle a regole NAT, regole del servizio di bilanciamento del carico e probe.You need to create NICs (or modify existing ones) and associate them to NAT rules, load balancer rules, and probes.

  1. Creare una scheda di interfaccia di rete denominata lb-nic1-be e associarla alla regola NAT rdp1 e al pool di indirizzi back-end beilb.Create an NIC named lb-nic1-be, and then associate it with the rdp1 NAT rule and the beilb back-end address pool.

    azure network nic create --resource-group nrprg --name lb-nic1-be --subnet-name nrpvnetsubnet --subnet-vnet-name nrpvnet --lb-address-pool-ids "/subscriptions/####################################/resourceGroups/nrprg/providers/Microsoft.Network/loadBalancers/nrplb/backendAddressPools/beilb" --lb-inbound-nat-rule-ids "/subscriptions/####################################/resourceGroups/nrprg/providers/Microsoft.Network/loadBalancers/nrplb/inboundNatRules/rdp1" --location eastus
    

    Output previsto:Expected output:

     info:    Executing command network nic create
     + Looking up the network interface "lb-nic1-be"
     + Looking up the subnet "nrpvnetsubnet"
     + Creating network interface "lb-nic1-be"
     + Looking up the network interface "lb-nic1-be"
     data:    Id                              : /subscriptions/####################################/resourceGroups/nrprg/providers/Microsoft.Network/networkInterfaces/lb-nic1-be
     data:    Name                            : lb-nic1-be
     data:    Type                            : Microsoft.Network/networkInterfaces
     data:    Location                        : eastus
     data:    Provisioning state              : Succeeded
     data:    Enable IP forwarding            : false
     data:    IP configurations:
     data:      Name                          : NIC-config
     data:      Provisioning state            : Succeeded
     data:      Private IP address            : 10.0.0.4
     data:      Private IP Allocation Method  : Dynamic
     data:      Subnet                        : /subscriptions/####################################/resourceGroups/NRPRG/providers/Microsoft.Network/virtualNetworks/NRPVnet/subnets/NRPVnetSubnet
     data:      Load balancer backend address pools
     data:        Id                          : /subscriptions/####################################/resourceGroups/nrprg/providers/Microsoft.Network/loadBalancers/nrplb/backendAddressPools/NRPbackendpool
     data:      Load balancer inbound NAT rules:
     data:        Id                          : /subscriptions/####################################/resourceGroups/nrprg/providers/Microsoft.Network/loadBalancers/nrplb/inboundNatRules/rdp1
     data:
     info:    network nic create command OK
    
  2. Creare una scheda di interfaccia di rete denominata lb-nic2-be e associarla alla regola NAT rdp2 e al pool di indirizzi back-end beilb.Create an NIC named lb-nic2-be, and then associate it with the rdp2 NAT rule and the beilb back-end address pool.

    azure network nic create --resource-group nrprg --name lb-nic2-be --subnet-name nrpvnetsubnet --subnet-vnet-name nrpvnet --lb-address-pool-ids "/subscriptions/####################################/resourceGroups/nrprg/providers/Microsoft.Network/loadBalancers/nrplb/backendAddressPools/beilb" --lb-inbound-nat-rule-ids "/subscriptions/####################################/resourceGroups/nrprg/providers/Microsoft.Network/loadBalancers/nrplb/inboundNatRules/rdp2" --location eastus
    
  3. Creare una macchina virtuale denominata DB1 e associarla alla scheda di interfaccia di rete denominata lb-nic1-be.Create a virtual machine named DB1, and then associate it with the NIC named lb-nic1-be. Un account di archiviazione denominato web1nrp è stato creato prima dell'esecuzione del comando seguente:A storage account called web1nrp is created before the following command runs:

    azure vm create --resource--resource-grouproup nrprg --name DB1 --location eastus --vnet-name nrpvnet --vnet-subnet-name nrpvnetsubnet --nic-name lb-nic1-be --availset-name nrp-avset --storage-account-name web1nrp --os-type Windows --image-urn MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter:4.0.20150825
    

    Importante

    Le macchine virtuali in un servizio di bilanciamento del carico devono trovarsi nello stesso set di disponibilità.VMs in a load balancer need to be in the same availability set. Usare azure availset create per creare un set di disponibilità.Use azure availset create to create an availability set.

  4. Creare una macchina virtuale (VM) denominata DB2 e associarla alla scheda di interfaccia di rete denominata lb-nic2-be.Create a virtual machine (VM) named DB2, and then associate it with the NIC named lb-nic2-be. Un account di archiviazione denominato web1nrp è stato creato prima dell'esecuzione del comando seguente.A storage account called web1nrp was created before running the following command.

    azure vm create --resource--resource-grouproup nrprg --name DB2 --location eastus --vnet-name nrpvnet --vnet-subnet-name nrpvnetsubnet --nic-name lb-nic2-be --availset-name nrp-avset --storage-account-name web2nrp --os-type Windows --image-urn MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter:4.0.20150825
    

Eliminare un servizio di bilanciamento del caricoDelete a load balancer

Per rimuovere un servizio di bilanciamento del carico, usare il comando seguente:To remove a load balancer, use the following command:

azure network lb delete --resource-group nrprg --name ilbset

Passaggi successiviNext steps

Configurare una modalità di distribuzione del servizio di bilanciamento del carico usando l'affinità dell'IP di origineConfigure a load balancer distribution mode by using source IP affinity

Configurare le impostazioni del timeout di inattività TCP per il bilanciamento del caricoConfigure idle TCP timeout settings for your load balancer