Configurare un listener ILB per gruppi di disponibilità AlwaysOn in AzureConfigure an ILB listener for Always On availability groups in Azure

PanoramicaOverview

Importante

Azure offre due diversi modelli di distribuzione per creare e usare le risorse: Azure Resource Manager e classico.Azure has two different deployment models for creating and working with resources: Azure Resource Manager and classic. In questo articolo viene illustrato l'uso del modello di distribuzione classica.This article covers the use of the classic deployment model. Per le distribuzioni più recenti si consiglia di usare il modello di Resource Manager.We recommend that most new deployments use the Resource Manager model.

Per configurare un listener per un gruppo di disponibilità AlwaysOn nel modello di Resource Manager, vedere Configurare un servizio di bilanciamento del carico per un gruppo di disponibilità AlwaysOn in Azure.To configure a listener for an Always On availability group in the Resource Manager model, see Configure a load balancer for an Always On availability group in Azure.

Il gruppo di disponibilità può contenere repliche solo locali, solo di Azure oppure sia locali che di Azure per le configurazioni ibride.Your availability group can contain replicas that are on-premises only or Azure only, or that span both on-premises and Azure for hybrid configurations. Le repliche di Azure possono trovarsi nella stessa area o in più aree grazie a più reti virtuali.Azure replicas can reside within the same region or across multiple regions that use multiple virtual networks. Le procedure riportate in questo articolo presuppongono che sia già stato configurato un gruppo di disponibilità ma che non sia stato configurato un listener.The procedures in this article assume that you have already configured an availability group but have not yet configured a listener.

Linee guida e limitazioni per listener interniGuidelines and limitations for internal listeners

L'uso di un servizio di bilanciamento del carico interno con un listener del gruppo di disponibilità in Azure è soggetto alle seguenti linee guida:The use of an internal load balancer (ILB) with an availability group listener in Azure is subject to the following guidelines:

  • Il listener del gruppo di disponibilità è supportato su Windows Server 2008 R2, Windows Server 2012 e Windows Server 2012 R2.The availability group listener is supported on Windows Server 2008 R2, Windows Server 2012, and Windows Server 2012 R2.
  • Per ogni servizio cloud è supportato un solo listener del gruppo di disponibilità interno, perché il listener è configurato solo per ILB, e c'è un solo ILB per ogni servizio cloud.Only one internal availability group listener is supported for each cloud service, because the listener is configured to the ILB, and there is only one ILB for each cloud service. Tuttavia, è possibile creare più listener esterni.However, it is possible to create multiple external listeners. Per altre informazioni, vedere Configurare un listener esterno per i gruppi di disponibilità AlwaysOn in Azure.For more information, see Configure an external listener for Always On availability groups in Azure.

Determinare l'accessibilità del listenerDetermine the accessibility of the listener

È importante tenere presente che esistono due modi per configurare un listener del gruppo di disponibilità in Azure.It is important to realize that there are two ways to configure an availability group listener in Azure. Questi metodi differiscono nel tipo di servizio di bilanciamento del carico di Azure usato quando si crea il listener.The ways differ in the type of Azure load balancer you use when you create the listener. Nella tabella seguente sono descritte le differenze:The following table describes the differences:

Tipo di servizio di bilanciamento del caricoLoad balancer type ImplementazioneImplementation Usare questo tipo nei seguenti casi:Use when:
EsternoExternal Usa l'indirizzo IP virtuale pubblico del servizio cloud che ospita le macchine virtuali.Uses the public virtual IP address of the cloud service that hosts the virtual machines (VMs). È necessario accedere al listener dall'esterno della rete virtuale, ad esempio da Internet.You need to access the listener from outside the virtual network, including from the Internet.
InternoInternal Usa un servizio di bilanciamento del carico interno con un indirizzo privato per il listener.Uses an internal load balancer with a private address for the listener. È possibile accedere al listener solo dall'interno della stessa rete virtuale.You can access the listener only from within the same virtual network. Questa modalità di accesso include la VPN da sito a sito in scenari ibridi.This access includes site-to-site VPN in hybrid scenarios.

Importante

Per un listener che usa l'indirizzo VIP pubblico del servizio cloud (servizio di bilanciamento del carico esterno), non si incorrerà in spese di uscita fin quando il client, il listener e i database si troveranno nella stessa area di Azure.For a listener that uses the cloud service's public VIP (external load balancer), as long as the client, listener, and databases are in the same Azure region, you will not incur egress charges. In caso contrario, i dati restituiti tramite il listener vengono considerati in uscita e vengono addebitati i normali costi di trasferimento dati.Otherwise, any data returned through the listener is considered egress, and it is charged at normal data-transfer rates.

Un servizio di bilanciamento del carico interno può essere configurato solo nelle reti virtuali con ambito a livello di area.An ILB can be configured only on virtual networks with a regional scope. Le reti virtuali esistenti che sono state configurate per un gruppo di affinità non possono usare un servizio di bilanciamento del carico interno.Existing virtual networks that have been configured for an affinity group cannot use an ILB. Per altre informazioni, vedere Panoramica del bilanciamento del carico interno.For more information, see Internal load balancer overview.

Questo articolo illustra la creazione di un listener che usa un servizio di bilanciamento del carico interno.This article focuses on creating a listener that uses an ILB. Se è necessario un listener pubblico/esterno, vedere la versione di questo articolo che tratta la procedura per la configurazione di un listener esterno.If you need an public or external listener, see the version of this article that discusses setting up an external listener.

Creare endpoint VM con bilanciamento del carico con Direct Server ReturnCreate load-balanced VM endpoints with direct server return

Creare innanzitutto un servizio di bilanciamento del carico interno eseguendo lo script riportato più avanti in questa sezione.You first create an ILB by running the script later in this section.

Creare un endpoint con carico bilanciato per ogni VM che ospita una replica di Azure.Create a load-balanced endpoint for each VM that hosts an Azure replica. Se si hanno repliche in più aree, ogni replica per tale area deve essere nello stesso servizio cloud nella stessa rete virtuale di Azure.If you have replicas in multiple regions, each replica for that region must be in the same cloud service in the same Azure virtual network. La creazione di repliche del gruppo di disponibilità che si estendono su più aree di Azure richiede la configurazione di più reti virtuali.Creating availability group replicas that span multiple Azure regions requires configuring multiple virtual networks. Per informazioni sulla configurazione della connettività fra reti virtuali, vedere Configurare una connessione da rete virtuale a rete virtuale.For more information on configuring cross virtual network connectivity, see Configure virtual network to virtual network connectivity.

  1. Nel portale di Azure passare a ogni VM che ospita una replica per vedere i dettagli.In the Azure portal, go to each VM that hosts a replica to view the details.

  2. Scegliere la scheda Endpoint per ogni VM.Click the Endpoints tab for each VM.

  3. Verificare che il nome e la porta pubblica specificati per l'endpoint del listener non siano già in uso.Verify that the Name and Public Port of the listener endpoint that you want to use are not already in use. Nell'esempio di questa sezione il nome è MyEndpoint e la porta è 1433.In the example in this section, the name is MyEndpoint, and the port is 1433.

  4. Nel client locale scaricare e installare l'ultimo modulo PowerShell.On your local client, download and install the latest PowerShell module.

  5. Avviare Azure PowerShell.Start Azure PowerShell.
    Viene aperta una nuova sessione di PowerShell con i moduli amministrativi di Azure caricati.A new PowerShell session opens, with the Azure administrative modules loaded.

  6. Eseguire Get-AzurePublishSettingsFile.Run Get-AzurePublishSettingsFile. Questo cmdlet conduce a un browser per scaricare un file di impostazioni di pubblicazione in una directory locale.This cmdlet directs you to a browser to download a publish settings file to a local directory. Potrebbero essere richieste le credenziali di accesso per la sottoscrizione di Azure.You might be prompted for your sign-in credentials for your Azure subscription.

  7. Eseguire il comando Import-AzurePublishSettingsFile seguente con il percorso del file delle impostazioni di pubblicazione scaricato:Run the following Import-AzurePublishSettingsFile command with the path of the publish settings file that you downloaded:

     Import-AzurePublishSettingsFile -PublishSettingsFile <PublishSettingsFilePath>
    

    Dopo aver importato il file delle impostazioni di pubblicazione, è possibile gestire la sottoscrizione di Azure nella sessione di PowerShell.After the publish settings file is imported, you can manage your Azure subscription in the PowerShell session.

  8. Per ILB assegnare un indirizzo IP statico.For ILB, assign a static IP address. Esaminare la configurazione attuale della rete virtuale eseguendo il comando seguente:Examine the current virtual network configuration by running the following command:

     (Get-AzureVNetConfig).XMLConfiguration
    
  9. Annotare il nome Subnet per la subnet contenente le VM che ospitano le repliche.Note the Subnet name for the subnet that contains the VMs that host the replicas. Questo nome viene usato nel parametro $SubnetName nello script.This name is used in the $SubnetName parameter in the script.

  10. Annotare il valore VirtualNetworkSite e il valore iniziale AddressPrefix per la subnet contenente le VM che ospitano le repliche.Note the VirtualNetworkSite name and the starting AddressPrefix for the subnet that contains the VMs that host the replicas. Cercare un indirizzo IP disponibile passando entrambi i valori al comando Test-AzureStaticVNetIP ed esaminando il valore AvailableAddresses.Look for an available IP address by passing both values to the Test-AzureStaticVNetIP command and by examining the AvailableAddresses. Se, ad esempio, il nome della rete virtuale è MyVNet e l'inizio dell'intervallo di indirizzi della subnet corrisponde a 172.16.0.128, il comando seguente elencherà gli indirizzi disponibili:For example, if the virtual network is named MyVNet and has a subnet address range that starts at 172.16.0.128, the following command would list available addresses:

    (Test-AzureStaticVNetIP -VNetName "MyVNet"-IPAddress 172.16.0.128).AvailableAddresses
    
  11. Selezionare uno degli indirizzi disponibili e usarlo nel parametro $ILBStaticIP dello script al passaggio seguente.Select one of the available addresses, and use it in the $ILBStaticIP parameter of the script in the next step.

  12. Copiare lo script di PowerShell seguente in un editor di testo e impostare i valori delle variabili in base all'ambiente.Copy the following PowerShell script to a text editor, and set the variable values to suit your environment. Per alcuni parametri sono stati forniti valori predefiniti.Defaults have been provided for some parameters.

    Le distribuzioni esistenti che usano i gruppi di affinità non potranno aggiungere un servizio di bilanciamento del carico interno.Existing deployments that use affinity groups cannot add an ILB. Per altre informazioni sui requisiti per il servizio di bilanciamento del carico interno, vedere la panoramica del bilanciamento del carico interno.For more information about ILB requirements, see Internal load balancer overview.

    Se il gruppo di disponibilità si estende tra diverse aree di Azure, è necessario eseguire lo script una volta in ogni data center per il servizio cloud e i nodi che risiedono nel data center.Also, if your availability group spans Azure regions, you must run the script once in each datacenter for the cloud service and nodes that reside in that datacenter.

    # Define variables
    $ServiceName = "<MyCloudService>" # the name of the cloud service that contains the availability group nodes
    $AGNodes = "<VM1>","<VM2>","<VM3>" # all availability group nodes containing replicas in the same cloud service, separated by commas
    $SubnetName = "<MySubnetName>" # subnet name that the replicas use in the virtual network
    $ILBStaticIP = "<MyILBStaticIPAddress>" # static IP address for the ILB in the subnet
    $ILBName = "AGListenerLB" # customize the ILB name or use this default value
    
    # Create the ILB
    Add-AzureInternalLoadBalancer -InternalLoadBalancerName $ILBName -SubnetName $SubnetName -ServiceName $ServiceName -StaticVNetIPAddress $ILBStaticIP
    
    # Configure a load-balanced endpoint for each node in $AGNodes by using ILB
    ForEach ($node in $AGNodes)
    {
        Get-AzureVM -ServiceName $ServiceName -Name $node | Add-AzureEndpoint -Name "ListenerEndpoint" -LBSetName "ListenerEndpointLB" -Protocol tcp -LocalPort 1433 -PublicPort 1433 -ProbePort 59999 -ProbeProtocol tcp -ProbeIntervalInSeconds 10 -InternalLoadBalancerName $ILBName -DirectServerReturn $true | Update-AzureVM
    }
    
  13. Dopo aver impostato le variabili, copiare lo script dall'editor di testo nella sessione di PowerShell per eseguirlo.After you have set the variables, copy the script from the text editor to your PowerShell session to run it. Se nel prompt viene ancora visualizzato >>, digitare di nuovo INVIO per assicurarsi che l'esecuzione dello script sia stata avviata.If the prompt still shows >>, press Enter again to make sure the script starts running.

Se necessario, verificare che KB2854082 sia installato.Verify that KB2854082 is installed if necessary

Se i server nel cluster stanno eseguendo Windows Server 2008 R2 o Windows Server 2012, è necessario quindi verificare che l'hotfix KB2854082 sia installato su ognuno dei server locali o sulle VM di Azure che fanno parte del cluster.Next, if any servers on the cluster are running Windows Server 2008 R2 or Windows Server 2012, you must verify that the hotfix KB2854082 is installed on each of the on-premises servers or Azure VMs that are part of the cluster. Qualsiasi server o macchina virtuale che si trova nel cluster, ma non nel gruppo di disponibilità, deve avere installato tale hotfix.Any server or VM that is in the cluster, but not in the availability group, should also have this hotfix installed.

Nella sessione desktop remota per ciascuno dei nodi del cluster, scaricare KB2854082 in una directory locale.In the remote desktop session for each of the cluster nodes, download KB2854082 to a local directory. Quindi, installare l'hotfix in ogni nodo del cluster in modo sequenziale.Then, install the hotfix on each cluster node sequentially. Se il servizio cluster è in esecuzione nel nodo del cluster, il server viene riavviato al termine dell'installazione dell'hotfix.If the cluster service is currently running on the cluster node, the server is restarted at the end of the hotfix installation.

Avviso

L'arresto del servizio cluster o il riavvio del server influiscono sull'integrità del quorum del cluster e del gruppo di disponibilità e possono portare il cluster offline.Stopping the cluster service or restarting the server affects the quorum health of your cluster and the availability group, and it might cause your cluster to go offline. Per mantenere la disponibilità elevata del cluster durante l'installazione, verificare quanto segue:To maintain the high availability of your cluster during installation, make sure that:

  • Il cluster è in stato di quorum ottimale.The cluster is in optimal quorum health.
  • Prima dell'installazione dell'hotfix in qualsiasi nodo, tutti i nodi del cluster sono online.Before you install the hotfix on any node, all cluster nodes are online.
  • Prima di installare l'hotfix in altri nodi del cluster, è necessario consentire il completamento dell'esecuzione dell'installazione dell'hotfix in un nodo, incluso il riavvio completo del server.Before you install the hotfix on any other node in the cluster, allow the hotfix installation to run to completion on one node, including fully restarting the server.

Aprire le porte firewall nei nodi del gruppo di disponibilità inOpen the firewall ports in availability group nodes

In questo passaggio si creerà una regola del firewall per aprire la porta probe per l'endpoint con carico bilanciato (59999, come specificato in precedenza) e un'altra regola per aprire la porta del listener del gruppo disponibilità.In this step, you create a firewall rule to open the probe port for the load-balanced endpoint (59999, as specified earlier) and another rule to open the availability group listener port. Poiché è stato creato l'endpoint con carico bilanciato nelle VM contenenti repliche del gruppo di disponibilità, è necessario aprire la porta probe e la porta del listener sulle rispettive macchine virtuali.Because you created the load-balanced endpoint on the VMs that contain availability group replicas, you need to open the probe port and the listener port on the respective VMs.

  1. Nelle macchine virtuali che ospitano le repliche, avviare Windows Firewall con sicurezza avanzata.On VMs that host replicas, start Windows Firewall with Advanced Security.

  2. Fare clic con il pulsante destro del mouse su Regole connessioni in entrata e quindi scegliere Nuova regola.Right-click Inbound Rules, and then click New Rule.

  3. Nella pagina Tipo di regola selezionare Porta e quindi fare clic su Avanti.On the Rule Type page, select Port, and then click Next.

  4. Nella pagina Protocollo e porte selezionare TCP, digitare 59999 nella casella Porte locali specifiche e quindi fare clic su Avanti.On the Protocol and Ports page, select TCP, type 59999 in the Specific local ports box, and then click Next.

  5. Nella pagina Azione mantenere selezionata l'opzione Consenti la connessione e quindi fare clic su Avanti.On the Action page, keep Allow the connection selected, and then click Next.

  6. Nella pagina Profilo accettare le impostazioni predefinite e quindi fare clic su Avanti.On the Profile page, accept the default settings, and then click Next.

  7. Nella pagina Nome specificare nella casella di testo Nome un nome per la regola, ad esempio Porta probe del listener AlwaysOn e quindi fare clic su Fine.On the Name page, in the Name text box, specify a rule name, such as Always On Listener Probe Port, and then click Finish.

  8. Ripetere i passaggi precedenti per la porta del listener del gruppo di disponibilità (come specificato in precedenza nel parametro $EndpointPort dello script) e specificare un nome di regola appropriato, ad esempio Porta del Listener AlwaysOn.Repeat the preceding steps for the availability group listener port (as specified earlier in the $EndpointPort parameter of the script), and then specify an appropriate rule name, such as Always On Listener Port.

Creare il listener del gruppo di disponibilitàCreate the availability group listener

Creare il listener del gruppo di disponibilità in due passaggi.Create the availability group listener in two steps. Creare prima di tutto la risorsa cluster del punto di accesso client e configurare le dipendenze.First, create the client access point cluster resource and configure dependencies. Come seconda cosa, configurare le risorse del cluster in PowerShell.Second, configure the cluster resources in PowerShell.

Creare il punto di accesso client e configurare le dipendenze del clusterCreate the client access point and configure the cluster dependencies

In questo passaggio si creerà manualmente il listener del gruppo di disponibilità in Gestione cluster di failover e SQL Server Management Studio.In this step, you manually create the availability group listener in Failover Cluster Manager and SQL Server Management Studio.

  1. Aprire Gestione cluster di failover dal nodo che ospita la replica primaria.Open Failover Cluster Manager from the node that hosts the primary replica.

  2. Selezionare il nodo Reti e quindi annotare il nome di rete del cluster.Select the Networks node, and then note the cluster network name. Questo nome viene usato nella variabile $ClusterNetworkName nello script di PowerShell.This name is used in the $ClusterNetworkName variable in the PowerShell script.

  3. Espandere il nome di cluster, quindi fare clic su Ruoli.Expand the cluster name, and then click Roles.

  4. Nel pannello Ruoli fare clic con il pulsante destro del mouse sul nome del gruppo di disponibilità e quindi scegliere Aggiungi risorsa > Punto di accesso client.In the Roles pane, right-click the availability group name, and then select Add Resource > Client Access Point.

    Aggiungere il punto di accesso client per il gruppo di disponibilità

  5. Nella casella Nome creare un nome per il nuovo listener, fare clic su Avanti due volte, quindi fare clic su Fine.In the Name box, create a name for this new listener, click Next twice, and then click Finish.
    Non portare il listener o la risorsa in linea a questo punto.Do not bring the listener or resource online at this point.

  6. Scegliere la scheda Risorse, e quindi espandere il punto di accesso client appena creato.Click the Resources tab, and then expand the client access point you just created. Viene visualizzata la risorsa indirizzo IP per ogni rete di cluster nel cluster.The IP address resource for each cluster network in your cluster is displayed. Se si tratta di una soluzione solo per Azure, viene visualizzata solo una risorsa indirizzo IP.If this is an Azure-only solution, only one IP address resource is displayed.

  7. Eseguire una di queste operazioni:Do either of the following:

    • Per configurare una soluzione ibrida:To configure a hybrid solution:

      a.a. Fare clic con il pulsante destro del mouse sulla risorsa indirizzo IP che corrisponde alla subnet locale e quindi scegliere Proprietà.Right-click the IP address resource that corresponds to your on-premises subnet, and then select Properties. Annotare il nome dell'indirizzo IP e il nome di rete.Note the IP address name and network name.

      b.b. Selezionare Indirizzo IP statico, assegnare un indirizzo IP non usato e quindi fare clic su OK.Select Static IP Address, assign an unused IP address, and then click OK.

    • Per configurare una soluzione solo per Azure:To configure an Azure-only solution:

      a.a. Fare clic con il pulsante destro del mouse sulla risorsa indirizzo IP corrispondente alla subnet di Azure e quindi scegliere Proprietà.Right-click the IP address resource that corresponds to your Azure subnet, and then select Properties.

      Nota

      Se il listener non riesce in un secondo momento a portarsi in linea a causa di un indirizzo IP in conflitto selezionato da DHCP, è possibile configurare un indirizzo IP statico valido in questa finestra Proprietà.If the listener later fails to come online because of a conflicting IP address selected by DHCP, you can configure a valid static IP address in this properties window.

      b.b. Nella stessa finestra delle proprietà dell'indirizzo IP modificare il valore di Nome indirizzo IP.In the same IP Address properties window, change the IP Address Name.
      Questo nome viene usato nella variabile $IPResourceName dello script di PowerShell.This name is used in the $IPResourceName variable of the PowerShell script. Se la soluzione si estende in più reti virtuali di Azure, ripetere questo passaggio per ogni risorsa IP.If your solution spans multiple Azure virtual networks, repeat this step for each IP resource.

Configurare le risorse del cluster in PowerShellConfigure the cluster resources in PowerShell

  1. Per il servizio di bilanciamento del carico interno è necessario usare l'indirizzo IP del servizio di bilanciamento del carico interno creato in precedenza.For ILB, you must use the IP address of the ILB that was created earlier. Usare lo script seguente per ottenere questo indirizzo IP in PowerShell:To obtain this IP address in PowerShell, use the following script:

     # Define variables
     $ServiceName="<MyServiceName>" # the name of the cloud service that contains the AG nodes
     (Get-AzureInternalLoadBalancer -ServiceName $ServiceName).IPAddress
    
  2. Su una delle VM copiare lo script di PowerShell del sistema operativo in un editor di testo quindi impostare le variabili sui valori annotati prima.On one of the VMs, copy the PowerShell script for your operating system to a text editor, and then set the variables to the values you noted earlier.

    Per Windows Server 2012 o versione successiva usare lo script seguente:For Windows Server 2012 or later, use the following script:

     # Define variables
     $ClusterNetworkName = "<MyClusterNetworkName>" # the cluster network name (Use Get-ClusterNetwork on Windows Server 2012 of higher to find the name)
     $IPResourceName = "<IPResourceName>" # the IP address resource name
     $ILBIP = “<X.X.X.X>” # the IP address of the ILB
    
     Import-Module FailoverClusters
    
     Get-ClusterResource $IPResourceName | Set-ClusterParameter -Multiple @{"Address"="$ILBIP";"ProbePort"="59999";"SubnetMask"="255.255.255.255";"Network"="$ClusterNetworkName";"EnableDhcp"=0}
    

    Per Windows Server 2008 R2 usare lo script seguente:For Windows Server 2008 R2, use the following script:

     # Define variables
     $ClusterNetworkName = "<MyClusterNetworkName>" # the cluster network name (Use Get-ClusterNetwork on Windows Server 2012 of higher to find the name)
     $IPResourceName = "<IPResourceName>" # the IP address resource name
     $ILBIP = “<X.X.X.X>” # the IP address of the ILB
    
     Import-Module FailoverClusters
    
     cluster res $IPResourceName /priv enabledhcp=0 address=$ILBIP probeport=59999  subnetmask=255.255.255.255
    
  3. Dopo aver impostato le variabili, aprire una finestra con privilegi elevati di Windows PowerShell, incollare lo script dall'editor di testo nella sessione di PowerShell per eseguirlo.After you have set the variables, open an elevated Windows PowerShell window, paste the script from the text editor into your PowerShell session to run it. Se nel prompt viene ancora visualizzato >>, digitare di nuovo INVIO per assicurarsi che l'esecuzione dello script sia stata avviata.If the prompt still shows >>, Press Enter again to make sure that the script starts running.

  4. Ripetere i passaggi precedenti per ciascuna VM.Repeat the preceding steps for each VM.
    Questo script consente di configurare la risorsa Indirizzo IP con l'indirizzo IP del servizio cloud e di impostare altri parametri come la porta probe.This script configures the IP address resource with the IP address of the cloud service and sets other parameters, such as the probe port. Quando la risorsa Indirizzo IP viene portata online, può rispondere al polling sulla porta probe dall'endpoint con carico bilanciato, creato in precedenza.When the IP address resource is brought online, it can respond to the polling on the probe port from the load-balanced endpoint that you created earlier.

Portare online il listenerBring the listener online

  1. In Gestione cluster di failover espandere Ruoli e quindi evidenziare il gruppo di disponibilità.In Failover Cluster Manager, expand Roles, and then highlight your availability group.

  2. Nella scheda Risorse fare clic con il pulsante destro del mouse sul nome del listener e scegliere Proprietà.On the Resources tab, right-click the listener name, and then click Properties.

  3. Selezionare la scheda Dipendenze . Se sono presenti più risorse elencate, verificare che gli indirizzi IP abbiano dipendenze OR anziché AND.Click the Dependencies tab. If multiple resources are listed, verify that the IP addresses have OR, not AND, dependencies.

  4. Fare clic su OK.Click OK.

  5. Fare clic con il pulsante destro del mouse sul nome del listener e quindi scegliere Porta online.Right-click the listener name, and then click Bring Online.

  6. Quando il listener è online, nella scheda Risorse fare clic con il pulsante destro del mouse sul gruppo di disponibilità e quindi scegliere Proprietà.After the listener is online, on the Resources tab, right-click the availability group, and then click Properties.

    Configurare la risorsa del gruppo di disponibilità

  7. Creare una dipendenza nella risorsa nome del listener, non il nome della risorsa indirizzo IP, e quindi fare clic su OK.Create a dependency on the listener name resource (not the IP address resources name), and then click OK.

    Aggiungere una dipendenza al nome del listener

  8. Avviare SQL Server Management Studio e connettersi alla replica primaria.Start SQL Server Management Studio, and then connect to the primary replica.

  9. Passare a Disponibilità elevata AlwaysOn > Gruppi di disponibilità > <AvailabilityGroupName> > Listener gruppo di disponibilità.Go to AlwaysOn High Availability > Availability Groups > <AvailabilityGroupName> > Availability Group Listeners.
    Verrà visualizzato il nome del listener creato in Gestione cluster di failover.The listener name that you created in Failover Cluster Manager should be displayed.

  10. Fare clic con il pulsante destro del mouse sul nome del listener e quindi su Proprietà.Right-click the listener name, and then click Properties.

  11. Nella casella Porta specificare il numero di porta per il listener del gruppo di disponibilità usando il valore di $EndpointPort usato in precedenza e quindi fare clic su OK. In questa esercitazione 1433 era l'impostazione predefinita.In the Port box, specify the port number for the availability group listener by using the $EndpointPort that you used earlier (in this tutorial, 1433 was the default), and then click OK.

Operazioni di completamento della proceduraFollow-up items

Dopo aver creato il listener del gruppo di disponibilità, può essere necessario regolare i parametri cluster RegisterAllProvidersIP e HostRecordTTL per la risorsa listener.After you create the availability group listener, it might be necessary to adjust the RegisterAllProvidersIP and HostRecordTTL cluster parameters for the listener resource. Questi parametri possono ridurre il tempo di riconnessione dopo un failover che può impedire i timeout di connessione.These parameters can reduce reconnection time after a failover, which might prevent connection timeouts. Per altre informazioni su questi parametri e sull'esempio di codice, vedere Creare o configurare un listener del gruppo di disponibilità.For more information about these parameters, as well as sample code, see Create or configure an availability group listener.

Testare il listener del gruppo di disponibilità (entro la stessa rete virtuale)Test the availability group listener (within the same virtual network)

In questo passaggio si testa il listener del gruppo di disponibilità usando un'applicazione client in esecuzione nella stessa rete.In this step, you test the availability group listener by using a client application that's running on the same network.

Questi sono i requisiti per la connettività client:Client connectivity has the following requirements:

  • Le connessioni client al listener devono provenire da computer che si trovano in un servizio cloud diverso da quello che ospita le repliche di disponibilità AlwaysOn.Client connections to the listener must come from machines that reside in a different cloud service than the one that hosts the Always On availability replicas.
  • Se le repliche AlwaysOn si trovano in subnet diverse, i client devono specificare MultisubnetFailover=True nella stringa di connessione.If the Always On replicas are in different subnets, clients must specify MultisubnetFailover=True in the connection string. Questa condizione comporta l'esecuzione di tentativi di connessione paralleli alle repliche nelle diverse subnet.This condition results in parallel connection attempts to replicas in the various subnets. Questo scenario include la distribuzione di un gruppo di disponibilità AlwaysOn tra più aree.This scenario includes a cross-region Always On availability group deployment.

È ad esempio possibile connettersi al listener da una delle macchine virtuali nella stessa rete virtuale di Azure (ma non quello che ospita una replica).One example is to connect to the listener from one of the VMs in the same Azure virtual network (but not one that hosts a replica). Un modo semplice per completare questo test consiste nel provare a connettere SQL Server Management Studio al listener del gruppo di disponibilità.An easy way to complete this test is to try to connect SQL Server Management Studio to the availability group listener. Un altro metodo semplice consiste nell'eseguire SQLCMD.exe come indicato di seguito:Another simple method is to run SQLCMD.exe, as follows:

sqlcmd -S "<ListenerName>,<EndpointPort>" -d "<DatabaseName>" -Q "select @@servername, db_name()" -l 15

Nota

Se il valore EndpointPort è 1433, non è necessario specificarlo nella chiamata.If the EndpointPort value is 1433, you are not required to specify it in the call. La chiamata precedente presuppone inoltre che il computer client sia aggiunto allo stesso dominio e che al chiamante siano state concesse autorizzazioni per il database tramite l'autenticazione di Windows.The previous call also assumes that the client machine is joined to the same domain and that the caller has been granted permissions on the database by using Windows authentication.

Durante il test del listener, eseguire il failover del gruppo di disponibilità per assicurarsi che i client possano connettersi al listener attraverso i failover.When you test the listener, be sure to fail over the availability group to make sure that clients can connect to the listener across failovers.

Passaggi successiviNext steps

Oltre a connettere automaticamente i client per la replica primaria, è possibile usare un listener per reindirizzare i carichi di lavoro di sola lettura ai database secondari.In addition to automatically connecting clients to the primary replica, a listener can be used to redirect read-only workloads to the secondaries. Questo approccio può migliorare le prestazioni e la scalabilità della soluzione globale.This use can improve the performance and scalability of your overall solution. Per altre informazioni, vedere Use ReadIntent Routing with Azure Always On availability group listener (Usare ReadIntent Routing con il listener del gruppo di disponibilità AlwaysOn di Azure).For more information, see Use ReadIntent Routing with Azure Always On availability group listener.

Nota

Per suggerimenti relativi alla risoluzione dei problemi dei listener di Azure, vedere Troubleshooting Availability Group Listener in Azure (Risoluzione dei problemi relativi al listener del gruppo di disponibilità in Azure) nel blog del team di supporto AlwaysOn.For troubleshooting tips on Azure listeners, see Troubleshooting availability group listener in Azure in the AlwaysOn Support Team blog.

Per altre informazioni sull'uso di SQL Server in Azure, vedere Panoramica di SQL Server in macchine virtuali di Azure.For more information about using SQL Server in Azure, see SQL Server on Azure virtual machines.