Distribuire una soluzione di bilanciamento del carico con connessione Internet con IPv6 usando un modelloDeploy an Internet-facing load-balancer solution with IPv6 using a template

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.

Azure Load Balancer è un servizio di bilanciamento del carico di livello 4 (TCP, UDP).An Azure load balancer is a Layer-4 (TCP, UDP) load balancer. Il servizio di bilanciamento del carico offre disponibilità elevata distribuendo il traffico in ingresso tra istanze del servizio integre in servizi cloud o macchine virtuali in un set di bilanciamento del carico .The load balancer provides high availability by distributing incoming traffic among healthy service instances in cloud services or virtual machines in a load balancer set. Azure Load Balancer può anche presentare tali servizi su più porte, più indirizzi IP o entrambi.Azure Load Balancer can also present those services on multiple ports, multiple IP addresses, or both.

Scenario di distribuzione di esempioExample deployment scenario

Il diagramma seguente illustra la soluzione di bilanciamento del carico distribuita usando il modello di esempio descritto in questo articolo.The following diagram illustrates the load balancing solution being deployed using the example template described in this article.

Scenario del bilanciamento del carico

In questo scenario si creeranno le seguenti risorse di Azure:In this scenario you will create the following Azure resources:

  • un'interfaccia di rete virtuale per ogni VM con l'assegnazione degli indirizzi IPv4 e IPv6a virtual network interface for each VM with both IPv4 and IPv6 addresses assigned
  • un servizio di bilanciamento del carico con connessione Internet con un indirizzo IP pubblico IPv4 e IPv6an Internet-facing Load Balancer with an IPv4 and an IPv6 Public IP address
  • due regole di bilanciamento del carico per eseguire il mapping degli indirizzi VIP pubblici agli endpoint privatitwo load balancing rules to map the public VIPs to the private endpoints
  • un set di disponibilità contenente le due macchine virtualian Availability Set that contains the two VMs
  • due macchine virtuali (VM)two virtual machines (VMs)

Distribuzione del modello tramite il portale di AzureDeploying the template using the Azure portal

Questo articolo fa riferimento a un modello pubblicato nella raccolta Modelli di avvio rapido di Azure.This article references a template that is published in the Azure Quickstart Templates gallery. È possibile scaricare il modello dalla raccolta o avviare la distribuzione in Azure direttamente dalla raccolta.You can download the template from the gallery or launch the deployment in Azure directly from the gallery. Questo articolo presuppone che il modello sia stato scaricato nel computer locale.This article assumes you have downloaded the template to your local computer.

  1. Aprire il portale di Azure e accedere con un account che abbia le autorizzazioni per la creazione di macchine virtuali e risorse di rete all'interno di una sottoscrizione di Azure.Open the Azure portal and sign in with an account that has permissions to create VMs and networking resources within an Azure subscription. A meno che non si usino le risorse esistenti, l'account richiede le autorizzazioni per la creazione di un gruppo di risorse e un account di archiviazione.Also, unless you're using existing resources, the account needs permission to create a resource group and a storage account.
  2. Fare clic su "+Nuovo" dal menu, quindi digitare "modello" nella casella di ricerca.Click "+New" from the menu then type "template" in the search box. Selezionare "Distribuzione modello" nei risultati della ricerca.Select "Template deployment" from the search results.

    lb-ipv6-portal-step2

  3. Nel pannello Tutto fare clic su "Distribuzione modello".In the Everything blade, click "Template deployment."

    lb-ipv6-portal-step3

  4. Fare clic su "Crea".Click "Create."

    lb-ipv6-portal-step4

  5. Fare clic su "Modifica modello".Click "Edit template." Eliminare il contenuto esistente e copiare e incollare l'intero contenuto del file modello (per includere i caratteri { } di inizio e fine), quindi fare clic su "Salva".Delete the existing contents and copy/paste in the entire contents of the template file (to include the start and end { }), then click "Save."

    Nota

    Se si usa Microsoft Internet Explorer, quando si incolla viene visualizzata una finestra di dialogo che chiede di consentire l'accesso agli Appunti di Windows.If you are using Microsoft Internet Explorer, when you paste you receive a dialog box asking you to allow access to the Windows clipboard. Fare clic su "Consenti accesso".Click "Allow access."

    lb-ipv6-portal-step5

  6. Fare clic su "Modifica parametri".Click "Edit parameters." Nel pannello Parametri specificare i valori nella sezione dei parametri del modello, quindi fare clic su "Salva" per chiudere il pannello Parametri.In the Parameters blade, specify the values per the guidance in the Template parameters section, then click "Save" to close the Parameters blade. Nel pannello Distribuzione personalizzata selezionare la sottoscrizione e un gruppo di risorse esistente oppure crearne uno.In the Custom Deployment blade, select your subscription, an existing resource group or create one. Se si crea un gruppo di risorse è necessario specificarne la posizione.If you are creating a resource group, then select a location for the resource group. Fare clic su Note legali, quindi su Acquisto.Next, click Legal terms, then click Purchase for the legal terms. Azure avvierà la distribuzione delle risorse.Azure begins deploying the resources. Occorreranno alcuni minuti per la distribuzione di tutte le risorse.It takes several minutes to deploy all the resources.

    lb-ipv6-portal-step6

    Per altre informazioni su questi parametri, vedere la sezione Parametri e variabili del modello più avanti in questo articolo.For more information about these parameters, see the Template parameters and variables section later in this article.

  7. Per visualizzare le risorse create dal modello fare clic su Esplora, scorrere l'elenco verso il basso fino a "Gruppi di risorse", quindi fare clic sulla voce.To see the resources created by the template, click Browse, scroll down the list until you see "Resource groups," then click it.

    lb-ipv6-portal-step7

  8. Nel pannello Gruppi di risorse fare clic sul nome del gruppo di risorse specificato nel passaggio 6.On the Resource groups blade, click the name of the resource group you specified in step 6. Verrà visualizzato un elenco di tutte le risorse distribuite.You see a list of all the resources that were deployed. Se non si sono verificati errori, verrà visualizzato "Riuscito" in "Ultima distribuzione".If all went well, it should say "Succeeded" under "Last deployment." In caso contrario, verificare che l'account usato abbia le autorizzazioni per creare le risorse necessarie.If not, ensure that the account you're using has permissions to create the necessary resources.

    lb-ipv6-portal-step8

    Nota

    Se si esplorano i gruppi di risorse subito dopo aver completato il passaggio 6, "Ultima distribuzione" visualizzerà lo stato "Distribuzione" durante la distribuzione delle risorse.If you browse your Resource Groups immediately after completing step 6, "Last deployment" will display the status of "Deploying" while the resources are being deployed.

  9. Fare clic su "myIPv6PublicIP" nell'elenco delle risorse.Click "myIPv6PublicIP" in the list of resources. Si noti che è presente un indirizzo IPv6 in Indirizzo IP e che il nome DNS è il valore specificato per il parametro dnsNameforIPv6LbIP nel passaggio 6.You see that it has an IPv6 address under IP address, and that its DNS name is the value you specified for the dnsNameforIPv6LbIP parameter in step 6. Questa risorsa è l'indirizzo IPv6 pubblico e il nome host accessibile ai client Internet.This resource is the public IPv6 address and host name that is accessible to Internet-clients.

    lb-ipv6-portal-step9

Convalidare la connettivitàValidate connectivity

Dopo aver distribuito il modello correttamente, è possibile convalidare la connettività con le attività seguenti:When the template has deployed successfully, you can validate connectivity by completing the following tasks:

  1. Accedere al portale di Azure e connettersi a ognuna delle macchine virtuali create dalla distribuzione del modello.Sign in to the Azure portal and connect to each of the VMs created by the template deployment. Se è stata distribuita una macchina virtuale Windows Server, eseguire ipconfig /all da un prompt dei comandi.If you deployed a Windows Server VM, run ipconfig /all from a command prompt. Si noti che le macchine virtuali hanno indirizzi IPv4 e IPv6.You see that the VMs have both IPv4 and IPv6 addresses. Se sono state distribuite macchine virtuali Linux è necessario configurare il sistema operativo Linux per ricevere indirizzi IPv6 dinamici usando le istruzioni messe a disposizione per la distribuzione di Linux.If you deployed Linux VMs, you need to configure the Linux OS to receive dynamic IPv6 addresses using the instructions provided for your Linux distribution.
  2. Da un client IPv6 connesso a Internet, avviare una connessione all'indirizzo IPv6 pubblico del servizio di bilanciamento del carico.From an IPv6 Internet-connected client, initiate a connection to the public IPv6 address of the load balancer. Per verificare che il servizio di bilanciamento del carico stia eseguendo il bilanciamento tra le due macchine virtuali, è possibile installare un server Web come Microsoft Internet Information Services (IIS) in ognuna delle macchine virtuali.To confirm that the load balancer is balancing between the two VMs, you could install a web server like Microsoft Internet Information Services (IIS) on each of the VMs. La pagina Web predefinita in ogni server può contenere il testo "Server0" o "Server1" per l'identificazione univoca.The default web page on each server could contain the text "Server0" or "Server1" to uniquely identify it. Aprire quindi un browser in un client IPv6 connesso a Internet e individuare il nome host specificato per il parametro dnsNameforIPv6LbIP del servizio di bilanciamento del carico per verificare la connettività IPv6 end-to-end per ogni macchina virtuale.Then, open an Internet browser on an IPv6 Internet-connected client and browse to the hostname you specified for the dnsNameforIPv6LbIP parameter of the load balancer to confirm end-to-end IPv6 connectivity to each VM. Se è visualizzata la pagina Web di un solo server, potrebbe essere necessario cancellare la cache del browser.If you only see the web page from only one server, you may need to clear your browser cache. Aprire più sessioni di esplorazione private.Open multiple private browsing sessions. Verrà visualizzata una risposta da ogni server.You should see a response from each server.
  3. Da un client IPv4 connesso a Internet, avviare una connessione all'indirizzo IPv4 pubblico del servizio di bilanciamento del carico.From an IPv4 Internet-connected client, initiate a connection to the public IPv4 address of the load balancer. Per verificare che il servizio di bilanciamento del carico stia eseguendo il bilanciamento tra le due macchine virtuali è possibile usare IIS come descritto nel passaggio 2.To confirm that the load balancer is load balancing the two VMs, you could test using IIS, as detailed in Step 2.
  4. Da ogni macchina virtuale, avviare una connessione in uscita a un dispositivo IPv4 o IPv6 connesso a Internet.From each VM, initiate an outbound connection to an IPv6 or IPv4-connected Internet device. In entrambi i casi, l'IP di origine rilevato dal dispositivo di destinazione è l'indirizzo IPv4 o IPv6 pubblico del servizio di bilanciamento del carico.In both cases, the source IP seen by the destination device is the public IPv4 or IPv6 address of the load balancer.

Nota

ICMP per IPv4 e IPv6 è bloccato nella rete di Azure.ICMP for both IPv4 and IPv6 is blocked in the Azure network. Di conseguenza, gli strumenti ICMP come il ping hanno sempre esito negativo.As a result, ICMP tools like ping always fail. Per testare la connettività usare un'alternativa TCP, ad esempio TCPing o il cmdlet Test-NetConnection di PowerShell.To test connectivity, use a TCP alternative such as TCPing or the PowerShell Test-NetConnection cmdlet. Si noti che gli indirizzi IP nel diagramma sono esempi di possibili valori.Note that the IP addresses shown in the diagram are examples of values that you might see. Poiché gli indirizzi IPv6 vengono assegnati dinamicamente, gli indirizzi ricevuti saranno diversi e potranno variare a seconda dell'area geografica.Since the IPv6 addresses are assigned dynamically, the addresses you receive will differ and can vary by region. È anche comune che l'indirizzo IPv6 pubblico nel servizio di bilanciamento del carico inizi con un prefisso diverso da quello degli indirizzi IPv6 privati nel pool di back-end.Also, it is common for the public IPv6 address on the load balancer to start with a different prefix than the private IPv6 addresses in the back-end pool.

Parametri e variabili del modelloTemplate parameters and variables

Un modello di Azure Resource Manager contiene più variabili e parametri che è possibile personalizzare per le proprie esigenze.An Azure Resource Manager template contains multiple variables and parameters that you can customize to your needs. Le variabili vengono usate per valori fissi che non devono essere modificati dagli utenti.Variables are used for fixed values that you do not want a user to change. I parametri vengono usati per i valori che devono essere specificati dagli utenti quando si distribuisce il modello.Parameters are used for values that you want a user to provide when deploying the template. Il modello di esempio è configurato per lo scenario descritto in questo articolo.The example template is configured for the scenario described in this article. Può essere personalizzato in base alle esigenze dell'ambiente.You can customize this to needs of your environment.

Il modello di esempio usato in questo articolo include le variabili e i parametri seguenti:The example template used in this article includes the following variables and parameters:

Parametro / variabileParameter / Variable NoteNotes
adminUsernameadminUsername Specificare il nome dell'account amministratore usato per accedere alle macchine virtuali.Specify the name of the admin account used to sign in to the virtual machines with.
adminPasswordadminPassword Specificare la password dell'account amministratore usato per accedere alle macchine virtuali.Specify the password for the admin account used to sign in to the virtual machines with.
dnsNameforIPv4LbIPdnsNameforIPv4LbIP Specificare il nome host DNS che si vuole assegnare come nome pubblico del servizio di bilanciamento del carico.Specify the DNS host name you want to assign as the public name of the load balancer. Questo nome si risolve nell'indirizzo IPv4 pubblico del servizio bilanciamento del carico.This name resolves to the load balancer's public IPv4 address. Il nome deve essere in minuscolo e corrispondere al regex: ^[a-z][a-z0-9-]{1,61}[a-z0-9]$.The name must be lowercase and match the regex: ^[a-z][a-z0-9-]{1,61}[a-z0-9]$.
dnsNameforIPv6LbIPdnsNameforIPv6LbIP Specificare il nome host DNS che si vuole assegnare come nome pubblico del servizio di bilanciamento del carico.Specify the DNS host name you want to assign as the public name of the load balancer. Questo nome si risolve nell'indirizzo IPv6 pubblico del servizio bilanciamento del carico.This name resolves to the load balancer's public IPv6 address. Il nome deve essere in minuscolo e corrispondere al regex: ^[a-z][a-z0-9-]{1,61}[a-z0-9]$.The name must be lowercase and match the regex: ^[a-z][a-z0-9-]{1,61}[a-z0-9]$. Può essere lo stesso nome dell'indirizzo IPv4.This can be the same name as the IPv4 address. Quando un client invia una query DNS per questo nome, Azure restituirà i record A e AAAA quando il nome è condiviso.When a client sends a DNS query for this name Azure will return both the A and AAAA records when the name is shared.
vmNamePrefixvmNamePrefix Specificare il prefisso del nome della macchina virtuale.Specify the VM name prefix. Il modello accoda un numero (0, 1 e così via) al nome quando vengono create le macchine virtuali.The template appends a number (0, 1, etc.) to the name when the VMs are created.
nicNamePrefixnicNamePrefix Specificare il prefisso del nome dell'interfaccia di rete.Specify the network interface name prefix. Il modello accoda un numero (0, 1 e così via) al nome quando vengono create le interfacce di rete.The template appends a number (0, 1, etc.) to the name when the network interfaces are created.
storageAccountNamestorageAccountName Immettere il nome di un account di archiviazione esistente o specificare il nome di un nuovo account che dovrà essere creato dal modello.Enter the name of an existing storage account or specify the name of a new one to be created by the template.
availabilitySetNameavailabilitySetName Immettere quindi nome del set di disponibilità da usare con le macchine virtualiEnter then name of the availability set to be used with the VMs
addressPrefixaddressPrefix Prefisso dell'indirizzo usato per definire l'intervallo di indirizzi della rete virtualeThe address prefix used to define the address range of the Virtual Network
subnetNamesubnetName Nome della subnet creata per la rete virtualeThe name of the subnet in created for the VNet
subnetPrefixsubnetPrefix Prefisso dell'indirizzo usato per definire l'intervallo di indirizzi della subnetThe address prefix used to define the address range of the subnet
vnetNamevnetName Specificare il nome della rete virtuale usata dalle macchine virtuali.Specify the name for the VNet used by the VMs.
ipv4PrivateIPAddressTypeipv4PrivateIPAddressType Metodo di allocazione usato per l'indirizzo IP privato (statico o dinamico)The allocation method used for the private IP address (Static or Dynamic)
ipv6PrivateIPAddressTypeipv6PrivateIPAddressType Metodo di allocazione usato per l'indirizzo IP privato (dinamico).The allocation method used for the private IP address (Dynamic). IPv6 supporta solo l'allocazione dinamica.IPv6 only supports Dynamic allocation.
numberOfInstancesnumberOfInstances Numero di istanze con bilanciamento del carico distribuite dal modelloThe number of load balanced instances deployed by the template
ipv4PublicIPAddressNameipv4PublicIPAddressName Specificare il nome DNS da usare per comunicare con l'indirizzo IPv4 pubblico del servizio di bilanciamento del carico.Specify the DNS name you want to use to communicate with the public IPv4 address of the load balancer.
ipv4PublicIPAddressTypeipv4PublicIPAddressType Metodo di allocazione usato per l'indirizzo IP pubblico (statico o dinamico)The allocation method used for the public IP address (Static or Dynamic)
Ipv6PublicIPAddressNameIpv6PublicIPAddressName Specificare il nome DNS da usare per comunicare con l'indirizzo IPv6 pubblico del servizio di bilanciamento del carico.Specify the DNS name you want to use to communicate with the public IPv6 address of the load balancer.
ipv6PublicIPAddressTypeipv6PublicIPAddressType Metodo di allocazione usato per l'indirizzo IP pubblico (dinamico).The allocation method used for the public IP address (Dynamic). IPv6 supporta solo l'allocazione dinamica.IPv6 only supports Dynamic allocation.
lbNamelbName Specificare il nome del servizio di bilanciamento del carico.Specify the name of the load balancer. Questo nome viene visualizzato nel portale o usato nei comandi di PowerShell o dell'interfaccia della riga di comando.This name is displayed in the portal or used when referring to it with a CLI or PowerShell command.

Le altre variabili nel modello contengono valori derivati assegnati quando Azure crea le risorse.The remaining variables in the template contain derived values that are assigned when Azure creates the resources. Non modificare queste variabili.Do not change those variables.