Créer ou configurer un écouteur de groupe de disponibilité (SQL Server)Create or Configure an Availability Group Listener (SQL Server)

Cette rubrique s’applique à : OuiSQL Serveraucunbase de données SQL AzureaucunAzure SQL Data Warehouse aucun Parallel Data WarehouseTHIS TOPIC APPLIES TO: yesSQL ServernoAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse Cette rubrique explique comment créer ou configurer un écouteur de groupe de disponibilité unique pour un groupe de disponibilité Always On à l’aide de SQL Server Management StudioSQL Server Management Studio, de Transact-SQLTransact-SQL ou de PowerShell dans SQL Server 2017SQL Server 2017. This topic describes how to create or configure a single availability group listener for an Always On availability group by using SQL Server Management StudioSQL Server Management Studio, Transact-SQLTransact-SQL, or PowerShell in SQL Server 2017SQL Server 2017.

Important

Pour créer le premier écouteur d'un groupe de disponibilité, nous vous recommandons d'utiliser SQL Server Management StudioSQL Server Management Studio, Transact-SQLTransact-SQLou SQL ServerSQL Server PowerShell.To create the first availability group listener of an availability group, we strongly recommend that you SQL Server Management StudioSQL Server Management Studio, Transact-SQLTransact-SQL, or SQL ServerSQL Server PowerShell. Évitez de créer un écouteur directement dans le cluster WSFC, sauf si cela s'avère nécessaire, par exemple, pour créer un écouteur supplémentaire.Avoid creating a listener directly in the WSFC cluster except when necessary, for example, to create an additional listener.

Avant de commencerBefore You Begin

Existe-t-il déjà un écouteur pour ce groupe de disponibilité ?Does a Listener Exist for this Availability Group Already?

Pour déterminer si un écouteur existe déjà pour le groupe de disponibilitéTo determine whether a listener already exists for the availability group

Note

Si un écouteur existe déjà et que vous souhaitez créer un écouteur supplémentaire, consultez Pour créer un écouteur supplémentaire pour un groupe de disponibilité (facultatif), plus loin dans cette rubrique.If a listener already exists and you want to create an additional listener, see To Create An Additional Listener for an Availability Group (Optional), later in this topic.

Limitations et restrictionsLimitations and Restrictions

  • Vous ne pouvez créer qu'un seul écouteur par groupe de disponibilité via SQL ServerSQL Server.You can create only one listener per availability group through SQL ServerSQL Server. En général, chaque groupe de disponibilité nécessite un seul écouteur.Typically, each availability group requires only one listener. Toutefois, certains scénarios de client requièrent plusieurs écouteurs pour un groupe de disponibilité.However, some customer scenarios require multiple listeners for one availability group. Après la création d'un écouteur par SQL Server, vous pouvez utiliser Windows PowerShell pour les clusters de basculement ou le gestionnaire de cluster de basculement WSFC pour crée des écouteurs supplémentaires.After creating a listener through SQL Server, you can use Windows PowerShell for failover clusters or the WSFC Failover Cluster Manager to create additional listeners. Pour plus d’informations, consultez Pour créer un écouteur supplémentaire pour un groupe de disponibilité (facultatif), plus loin dans cette rubrique.For more information, see To Create An Additional Listener for an Availability Group (Optional), later in this topic.

RecommandationsRecommendations

L'utilisation d'une adresse IP statique est recommandée, mais n'est pas obligatoire, en cas de configurations de plusieurs sous-réseaux.Using a static IP address is recommended, although not required, for multiple subnet configurations.

Conditions préalablesPrerequisites

  • Vous devez être connecté à l'instance de serveur qui héberge le réplica principal.You must be connected to the server instance that hosts the primary replica.

  • Si vous configurez un écouteur de groupe de disponibilité sur plusieurs sous-réseaux et si vous planifiez d'utiliser des adresses IP statiques, vous devez obtenir l'adresse IP statique de chaque sous-réseau qui héberge un réplica de disponibilité pour le groupe de disponibilité pour lequel vous créez l'écouteur.If you are setting up an availability group listener across multiple subnets and plan to use static IP addresses, you need to get the static IP address of every subnet that hosts an availability replica for the availability group for which you are creating the listener. Généralement, vous devez demander à votre administrateur réseau de vous communiquer les adresses IP statiques.Usually, you will need to ask your network administrators for the static IP addresses.

Important

Avant de créer votre premier écouteur, nous vous recommandons fortement de lire Connectivité client Always On (SQL Server).Before you create your first listener, we strongly recommend that you read Always On Client Connectivity (SQL Server).

Conditions requises pour le nom DNS d'un écouteur de groupe de disponibilitéRequirements for the DNS Name of an Availability Group Listener

Chaque écouteur du groupe de disponibilité a besoin d'un nom d'hôte DNS unique dans le domaine et dans NetBIOS.Each availability group listener requires a DNS host name that is unique in the domain and in NetBIOS. Le nom DNS est une valeur de chaîne.The DNS name is a string value. Ce nom ne peut contenir que des caractères alphanumériques, des tirets (-) et des caractères de soulignement (), dans n'importe quel ordre.This name can contain only alphanumeric characters, dashes (-), and hyphens (), in any order. Les noms d'hôte DNS ne respectent pas la casse.DNS host names are case insensitive. La longueur maximale est de 63 caractères, toutefois, dans SQL Server Management StudioSQL Server Management Studio, la longueur maximale que vous pouvez spécifier est 15 caractères.The maximum length is 63 characters, however, in SQL Server Management StudioSQL Server Management Studio, the maximum length you can specify is 15 characters.

Nous vous recommandons de spécifier une chaîne explicite.We recommend that you specify a meaningful string. Par exemple, pour un groupe de disponibilité nommé AG1, un nom d'hôte DNS explicite est ag1-listener.For example, for an availability group named AG1, a meaningful DNS host name would be ag1-listener.

Important

NetBIOS identifie les 15 premiers caractères du nom_dns.NetBIOS recognizes only the first 15 chars in the dns_name. Si vous avez deux clusters WSFC qui sont contrôlés par le même annuaire Active Directory et que vous tentez de créer des écouteurs de groupe de disponibilité dans les deux clusters à l'aide de noms contenant plus de 15 caractères et un préfixe identique de 15 caractères, vous obtenez une erreur signalant que la ressource de nom de réseau virtuel ne peut pas être mise en ligne.If you have two WSFC clusters that are controlled by the same Active Directory and you try to create availability group listeners in both of clusters using names with more than 15 characters and an identical 15 character prefix, you will get an error reporting that the Virtual Network Name resource could not be brought online. Pour plus d'informations sur les règles de préfixe des noms DNS, consultez Attribution de noms de domaine.For information about prefix naming rules for DNS names, see Assigning Domain Names.

Autorisations WindowsWindows Permissions

AutorisationsPermissions LienLink
Le nom d’objet cluster (CNO) du cluster WSFC qui héberge le groupe de disponibilité doit disposer de l’autorisation de création d’objets ordinateur .The cluster object name (CNO) of WSFC cluster that is hosting the availability group must have Create Computer objects permission.

Dans Active Directory, un CNO ne dispose pas par défaut explicitement de l’autorisation de création d’objets ordinateur et peut créer 10 objets ordinateur virtuel (VCO).In Active Directory, a CNO by default does not have Create Computer objects permission explicitly and can create 10 virtual computer objects (VCOs). Une fois les 10 VCO créés, la création de VCO supplémentaires échoue.After 10 VCOs are created, the creation of additional VCOs will fail. Vous pouvez éviter cela en accordant l'autorisation explicite au CNO du cluster WSFC.You can avoid this by granting the permission explicitly to the WSFC cluster’s CNO. Notez que les VCO des groupes de disponibilité que vous avez supprimé ne sont pas supprimés automatiquement dans Active Directory et sont pris en compte dans le nombre maximal par défaut de 10 VCO, sauf s'ils sont supprimés manuellement.Note that VCOs for availability groups that you have deleted are not automatically deleted in Active Directory and count against your 10 VCO default limit unless they are manually deleted.

Dans certaines organisations, la stratégie de sécurité interdit d’accorder l’autorisation de création d’objets ordinateur aux comptes d’utilisateur individuels.Note: In some organizations, the security policy prohibits granting Create Computer objects permission to individual user accounts.
Étapes pour configurer le compte de la personne qui installe le cluster dans Guide pas à pas du cluster de basculement : Configuration des comptes dans Active DirectorySteps for configuring the account for the person who installs the cluster in Failover Cluster Step-by-Step Guide: Configuring Accounts in Active Directory

Étapes de préconfiguration du nom du compte de cluster dans Guide pas à pas du cluster de basculement : Configuration des comptes dans Active DirectorySteps for prestaging the cluster name account in Failover Cluster Step-by-Step Guide: Configuring Accounts in Active Directory
Si votre organisation requiert la préconfiguration du compte d’ordinateur pour un nom de réseau virtuel d’écouteur, vous devrez être membre du groupe Opérateur de compte ou vous aurez besoin de l’aide de l’administrateur de domaine.If your organization requires that you prestage the computer account for a listener virtual network name, you will need membership in the Account Operator group or your domain administrator's assistance. Étapes de préconfiguration d’un compte pour un service cluster ou une application dans Guide pas à pas du cluster de basculement : Configuration des comptes dans Active Directory.Steps for prestaging an account for a clustered service or application in Failover Cluster Step-by-Step Guide: Configuring Accounts in Active Directory.

Conseil

En général, il est plus simple de ne pas préconfigurer le compte d'ordinateur pour un nom de réseau virtuel d'écouteur.Generally, it is simplest not to prestage the computer account for a listener virtual network name. Si vous le pouvez, laissez le compte être créé et configuré automatiquement lorsque vous exécutez l'Assistant WSFC haute disponibilité.If you can, let the account to be created and configured automatically when you run the WSFC High Availability wizard.

Autorisations SQL ServerSQL Server Permissions

TâcheTask AutorisationsPermissions
Pour créer un écouteur de groupe de disponibilitéTo create an availability group listener Requiert l’appartenance au rôle serveur fixe sysadmin et l’autorisation de serveur CREATE AVAILABILITY GROUP, l’autorisation ALTER ANY AVAILABILITY GROUP ou l’autorisation CONTROL SERVER.Requires membership in the sysadmin fixed server role and either CREATE AVAILABILITY GROUP server permission, ALTER ANY AVAILABILITY GROUP permission, or CONTROL SERVER permission.
Pour modifier un écouteur de groupe de disponibilité existantTo modify an existing availability group listener Requiert l'autorisation ALTER AVAILABILITY GROUP sur le groupe de disponibilité, l'autorisation CONTROL AVAILABILITY GROUP, l'autorisation ALTER ANY AVAILABILITY GROUP ou l'autorisation CONTROL SERVER.Requires ALTER AVAILABILITY GROUP permission on the availability group, CONTROL AVAILABILITY GROUP permission, ALTER ANY AVAILABILITY GROUP permission, or CONTROL SERVER permission.

Utilisation de SQL Server Management StudioUsing SQL Server Management Studio

Conseil

L’ Assistant Nouveau groupe de disponibilité prend en charge la création de l’écouteur pour un nouveau groupe de disponibilité.The New Availability Group wizard supports creation of the listener for a new availability group.

Pour créer ou configurer un écouteur de groupe de disponibilitéTo create or configure an availability group listener

  1. Dans l'Explorateur d'objets, connectez-vous à l'instance de serveur qui héberge le réplica principal du groupe de disponibilité, puis cliquez sur le nom du serveur pour développer l'arborescence du serveur.In Object Explorer, connect to the server instance that hosts the primary replica of the availability group, and click the server name to expand the server tree.

  2. Développez le nœud Haute disponibilité Always On et le nœud Groupes de disponibilité .Expand the Always On High Availability node and the Availability Groups node.

  3. Cliquez sur le groupe de disponibilité dont vous souhaitez configurer l'écouteur, puis choisissez l'une des méthodes suivantes :Click the availability group whose listener you want to configure, and choose one of the following alternatives:

    • Pour créer un écouteur, cliquez avec le bouton droit sur le nœud Écouteurs de groupe de disponibilité , puis sélectionnez la commande Nouvel écouteur .To create a listener, right-click the Availability group Listeners node, and select the New Listener command. Cela ouvre la boîte de dialogue Nouvel écouteur du groupe de disponibilité .This opens the New Availability Group Listener dialog box. Pour plus d’informations, consultez Ajouter l’écouteur du groupe de disponibilité (boîte de dialogue), plus loin dans cette rubrique.For more information, see Add Availability Group Listener (Dialog Box), later in this topic.

    • Pour modifier le numéro de port d’un écouteur existant, développez le nœud Écouteurs de groupe de disponibilité , cliquez avec le bouton droit sur l’écouteur, puis sélectionnez la commande Propriétés .To change the port number of an existing listener, expand the Availability group Listeners node, right-click the listener, and select the Properties command. Entrez le nouveau numéro de port dans le champ Port , puis cliquez sur OK.Enter the new port number into the Port field, and click OK.

Nouvel écouteur du groupe de disponibilité (boîte de dialogue)New Availability Group Listener (Dialog Box)

Nom DNS de l'écouteurListener DNS Name
Spécifie le nom d'hôte DNS de l'écouteur du groupe de disponibilité.Specifies the DNS host name of the availability group listener. Le nom DNS est une chaîne et doit être unique dans le domaine et dans NetBIOS.The DNS name is a string must be unique in the domain and in NetBIOS. Ce nom ne peut contenir que des caractères alphanumériques, des tirets (-) et des caractères de soulignement (), dans n'importe quel ordre.This name can contain only alphanumeric characters, dashes (-), and hyphens (), in any order. Les noms d'hôte DNS ne respectent pas la casse.DNS host names are case insensitive. La longueur maximale autorisée s'élève à 15 caractères.The maximum length is 15 characters.

Pour plus d'informations, consultez Conditions requises pour le nom DNS d'un écouteur de groupe de disponibilité, plus haut dans cette rubrique.For more information, see Requirements for the DNS Name of an Availability Group Listener, earlier in this topic.

PortPort
Port TPC utilisé par cet écouteur.The TPC port used by this listener.

Mode réseauNetwork Mode
Indique le protocole TCP utilisé par l'écouteur, à savoir :Indicates the TCP protocol used by the listener, one of:

DHCPDHCP
L'écouteur utilise une adresse IP dynamique affectée par un serveur exécutant le protocole DHCP (Dynamic Host Configuration Protocol).The listener will us a dynamic IP address that is assigned by a server running the Dynamic Host Configuration Protocol (DHCP). DHCP est limité à un sous-réseau.DHCP is limited to a single subnet.

Important

Nous vous déconseillons d'utiliser DHCP dans un environnement de production.We do not recommend DHCP in production environment. Lorsqu'un temps mort se produit et que le bail IP DHCP arrive à expiration, une période de temps supplémentaire est requise pour enregistrer la nouvelle adresse IP de réseau DHCP associée au nom DNS de l'écouteur et cela a un impact sur la connectivité client.If there is a down time and the DHCP IP lease expires, extra time is required to register the new DHCP network IP address that is associated with the listener DNS name and impact the client connectivity. Toutefois, DHCP peut tout à fait être utilisé pour configurer un environnement de développement et de test dans le but de vérifier les fonctions de base des groupes de disponibilité et l'intégration avec vos applications.However, DHCP is good for setting up your development and testing environment to verify basic functions of availability groups and for integration with your applications.

Adresse IP statiqueStatic IP
L'écouteur utilise une ou plusieurs adresses IP statiques.The listener will use one or more static IP addresses. Les adresses IP supplémentaires sont facultatives.Additional IP addresses are optional. Pour créer un écouteur de groupe de disponibilité sur plusieurs sous-réseaux, vous devez spécifier, pour chaque sous-réseau, une adresse IP statique dans la configuration de l'écouteur.To create an availability group listener across multiple subnets, for each subnet you must specify a static IP address in the listener configuration. Contactez votre administrateur réseau pour obtenir ces adresses IP statiques.Contact your network administrator to get these static IP addresses.

Si vous sélectionnez Adresse IP statique , une grille de sous-réseau apparaît sous le champ Mode réseau .If you select Static IP a subnet grid appears below the Network Mode field. Cette grille affiche des informations sur chaque sous-réseau accessible par cet écouteur de groupe de disponibilité.This grid displays information about each subnet that can be accessed by this availability group listener. Cette grille est vide tant que vous n'avez pas ajouté une adresse IP statique en cliquant sur Ajouter.This grid is empty until you add a static IP address by clicking Add.

Les colonnes sont les suivantes :The columns are as follows:

Sous-réseauSubnet
Affiche l'identificateur de chaque sous-réseau que vous ajoutez à l'écouteur du groupe de disponibilité.Displays the identifier of each subnet that you add to the availability group listener.

Adresse IPIP Address
Affiche l'adresse IP d'un sous-réseau donné.Displays the IP address of a given subnet. Pour un sous-réseau donné, l'adresse IP est une adresse IPv4 ou une adresse IPv6.For a given subnet, the IP address is either an IPv4 address or an IPv6 address.

AjouterAdd
Cliquez pour ajouter une adresse IP statique dans un sous-réseau sélectionné ou un autre sous-réseau pour cet écouteur.Click to add to add a static IP address to a selected subnet or to another subnet for this listener. Cela ouvre la boîte de dialogue Ajouter une adresse IP .This opens the Add IP Address dialog box. Pour plus d’informations, consultez la rubrique d’aide Boîte de dialogue Ajouter une adresse IP (SQL Server Management Studio).For more information, see the Add IP Address Dialog Box (SQL Server Management Studio) help topic.

SupprimerRemove
Cliquez pour supprimer le sous-réseau sélectionné de cet écouteur.Click to remove the selected subnet from this listener.

OKOK
Cliquez pour créer l'écouteur de groupe de disponibilité spécifié.Click to create the specified availability group listener.

Utilisation de Transact-SQLUsing Transact-SQL

Pour créer ou configurer un écouteur de groupe de disponibilitéTo create or configure an availability group listener

  1. Connectez-vous à l'instance de serveur qui héberge le réplica principal.Connect to the server instance that hosts the primary replica.

  2. Utilisez l'option LISTENER de l'instruction CREATE AVAILABILITY GROUP ou de l'option ADD LISTENER de l'instruction ALTER AVAILABILITY GROUP .Use the LISTENER option of the CREATE AVAILABILITY GROUP statement or the ADD LISTENER option of the ALTER AVAILABILITY GROUP statement.

    L'exemple suivant ajoute un écouteur de groupe de disponibilité à un groupe de disponibilité existant nommé MyAg2.The following example adds an availability group listener to an existing availability group named MyAg2. Un seul nom DNS, MyAg2ListenerIvP6, est spécifié pour cet écouteur.A unique DNS name, MyAg2ListenerIvP6, is specified for this listener. Les deux réplicas sont sur des sous-réseaux différents, par conséquent, selon les recommandations, l'écouteur doit utiliser des adresses IP statiques.The two replicas are on different subnets, so , as recommended, the listener uses static IP addresses. Pour les deux réplicas de disponibilité, la clause WITH IP spécifie une adresse IP statique, 2001:4898:f0:f00f::cf3c and 2001:4898:e0:f213::4ce2, qui utilisent le format IPv6.For each of the two availability replicas, the WITH IP clause specifies a static IP address, 2001:4898:f0:f00f::cf3c and 2001:4898:e0:f213::4ce2, which use the IPv6 format. Cet exemple utilise également l'argument facultatif PORT pour spécifier le port 60173 comme port d'écoute.This example also specifies uses the optional PORT argument to specify port 60173 as the listener port.

    ALTER AVAILABILITY GROUP MyAg2   
          ADD LISTENER ‘MyAg2ListenerIvP6’ ( WITH IP ( ('2001:db88:f0:f00f::cf3c'),('2001:4898:e0:f213::4ce2') ) , PORT = 60173 );   
    GO  
    

Utilisation de PowerShellUsing PowerShell

Pour créer ou configurer un écouteur de groupe de disponibilitéTo create or configure an availability group listener

  1. Remplacez le répertoire (cd) par l’instance de serveur qui héberge le réplica principal.Change directory (cd) to the server instance that hosts the primary replica.

  2. Pour créer ou modifier un écouteur de groupe de disponibilité, utilisez l'une des applets de commande suivantes :To create or modify an availability group listener use one of the following cmdlets:

    New-SqlAvailabilityGroupListenerNew-SqlAvailabilityGroupListener
    Crée un écouteur de groupe de disponibilité et l'attache à un groupe de disponibilité existant.Creates a new availability group listener and attaches it to an existing availability group.

    Par exemple, la commande New-SqlAvailabilityGroupListener suivante crée un écouteur de groupe de disponibilité nommé MyListener pour le groupe de disponibilité MyAg.For example, the following New-SqlAvailabilityGroupListener command creates an availability group listener named MyListener for the availability group MyAg. Cet écouteur utilise l’adresse IPv4 passée au paramètre -StaticIp comme adresse IP virtuelle.This listener will use the IPv4 address passed to the -StaticIp parameter as its virtual IP address.

    New-SqlAvailabilityGroupListener -Name MyListener `   
    -StaticIp '192.168.3.1/255.255.252.0' `   
    -Path SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MyAg  
    

    Set-SqlAvailabilityGroupListenerSet-SqlAvailabilityGroupListener
    Modifie le paramètre de port sur un écouteur de groupe de disponibilité existant.Modifies the port setting on an existing availability group listener.

    Par exemple, la commande Set-SqlAvailabilityGroupListener suivante affecte le numéro de port MyListener pour l’écouteur de groupe de disponibilité nommé 1535.For example, the following Set-SqlAvailabilityGroupListener command sets the port number for the availability group listener named MyListener to 1535. Ce port est utilisé pour écouter les connexions à l'écouteur.This port is used to listen for connections to the listener.

    Set-SqlAvailabilityGroupListener -Port 1535 `   
    -Path SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MyAg\AGListeners\MyListener  
    

    Add-SqlAGListenerstaticIpAdd-SqlAGListenerstaticIp
    Ajoute une adresse IP statique à une configuration existante d'écouteur de groupe de disponibilité.Adds a static IP address to an existing availability group listener configuration. L'adresse IP peut être une adresse IPv4 avec sous-réseau ou une adresse IPv6.The IP address can be an IPv4 address with subnet, or an IPv6 address.

    Par exemple, la commande Add-SqlAGListenerstaticIp suivante ajoute une adresse IPv4 statique à l’écouteur de groupe de disponibilité MyListener sur le groupe de disponibilité MyAg.For example, the following Add-SqlAGListenerstaticIp command adds a static IPv4 address to the availability group listener MyListener on the availability group MyAg. Cette adresse IPv6 sert d'adresse IP virtuelle de l'écouteur sur le sous-réseau 255.255.252.0.This IPv6 address serves as the virtual IP address of the listener on the subnet 255.255.252.0. Si le groupe de disponibilité s'étend sur plusieurs sous-réseaux, vous devez ajouter une adresse IP statique pour chaque sous-réseau connecté à l'écouteur.If the availability group spans multiple subnets, you should add a static IP address for each subnet to the listener.

    $path = "SQLSERVER:\SQL\PrimaryServer\InstanceName\AvailabilityGroups\MyAg\AGListeners\ MyListener" `   
    Add-SqlAGListenerstaticIp -Path $path `   
    -StaticIp "2001:0db8:85a3:0000:0000:8a2e:0370:7334"  
    

    Note

    Pour afficher la syntaxe d’une applet de commande, utilisez l’applet de commande Get-Help dans l’environnement PowerShell SQL ServerSQL Server .To view the syntax of a cmdlet, use the Get-Help cmdlet in the SQL ServerSQL Server PowerShell environment. Pour en savoir plus, voir Get Help SQL Server PowerShell.For more information, see Get Help SQL Server PowerShell.

    Pour configurer et utiliser le fournisseur SQL Server PowerShellTo set up and use the SQL Server PowerShell provider

DépannageTroubleshooting

Échec de création d'un écouteur de groupe de disponibilité en raison de quotas Active DirectoryFailure to Create An Availability Group Listener Because of Active Directory Quotas

La création d'un nouvel écouteur de groupe de disponibilité peut échouer parce que vous avez atteint un quota Active Directory pour le compte d'ordinateur participant du nœud de cluster.The creation of a new availability group listener may fail upon creation because you have reached an Active Directory quota for the participating cluster node machine account. Pour plus d'informations, consultez les articles suivants :For more information, see the following articles:

Suivi : après avoir créé un écouteur de groupe de disponibilitéFollow-up: After Creating an Availability Group Listener

Mot clé MultiSubnetFailover et fonctionnalités associéesMultiSubnetFailover Keyword and Associated Features

MultiSubnetFailover est un nouveau mot clé de chaîne de connexion utilisé pour permettre un basculement plus rapide avec les groupes de disponibilité Always On et les instances de cluster de basculement Always On dans SQL Server 2012.MultiSubnetFailover is a new connection string keyword used to enable faster failover with Always On Availability Groups and Always On Failover Cluster Instances in SQL Server 2012. Les trois sous-fonctionnalités suivantes sont activées lorsque MultiSubnetFailover=True est défini dans la chaîne de connexion :The following three sub-features are enabled when MultiSubnetFailover=True is set in connection string:

  • Basculement plus rapide de plusieurs sous-réseaux vers un écouteur de plusieurs sous-réseaux pour un groupe de disponibilité Always On ou des instances de cluster de basculement.Faster multi-subnet failover to a multi-subnet listener for an Always On Availability Group or Failover Cluster Instances.

  • Basculement plus rapide d’un sous-réseau unique vers un écouteur de sous-réseau unique pour un groupe de disponibilité Always On ou des instances de cluster de basculement.Faster single subnet failover to a single subnet listener for an Always On Availability Group or Failover Cluster Instances.

    • Cette fonctionnalité est utilisée pour la connexion à un écouteur comportant une IP unique dans un seul sous-réseau.This feature is used when connecting to a listener that has a single IP in a single subnet. Elle permet d'exécuter des tentatives de connexion TCP plus agressives afin d'accélérer les basculements au sein d'un sous-réseau unique.This performs more aggressive TCP connection retries to speed up single subnet failovers.
  • Résolution d’instance nommée pour une instance de cluster de basculement Always On de plusieurs sous-réseaux.Named instance resolution to a multi-subnet Always On Failover Cluster Instance.

    • Elle permet de prendre en charge la résolution d’instance nommée pour des instances de cluster de basculement Always On avec des points de terminaison de plusieurs sous-réseaux.This is to add named instance resolution support for an Always On Failover Cluster Instances with multiple subnet endpoints.

    MultiSubnetFailover=True non pris en charge par NET Framework 3.5 ou OLEDBMultiSubnetFailover=True Not Supported by NET Framework 3.5 or OLEDB

    Problème : si votre groupe de disponibilité ou votre instance de cluster de basculement comporte un nom d’écouteur (également appelé « nom réseau » ou « point d’accès client » dans le gestionnaire de cluster WSFC) qui dépend de plusieurs adresses IP de plusieurs sous-réseaux, et si vous utilisez soit ADO.NET avec .NET Framework 3.5 SP1, soit SQL Native Client 11.0 OLEDB, 50 % de vos demandes de connexion client à l’écouteur du groupe de disponibilité sont susceptibles de dépasser le délai de connexion.Issue: If your Availability Group or Failover Cluster Instance has a listener name (known as the network name or Client Access Point in the WSFC Cluster Manager) depending on multiple IP addresses from different subnets, and you are using either ADO.NET with .NET Framework 3.5SP1 or SQL Native Client 11.0 OLEDB, potentially 50% of your client-connection requests to the availability group listener will hit a connection timeout.

    Solutions de contournement : nous vous recommandons d'effectuer l'une des tâches suivantes.Workarounds: We recommend that you do one of the following tasks.

  • Si vous n'êtes pas autorisé à manipuler les ressources de cluster, définissez le délai de connexion à 30 secondes (cette valeur correspond au délai TCP de 20 secondes plus un tampon de 10 secondes).If do not have the permission to manipulate cluster resources, change your connection timeout to 30 seconds (this value results in a 20-second TCP timeout period plus a 10-second buffer).

    Avantage: en cas de basculement entre sous-réseaux, la durée de récupération du client est courte.Pros: If a cross-subnet failover occurs, client recovery time is short.

    Inconvénient: la moitié des connexions clientes prendront plus de 20 secondes.Cons: Half of the client connections will take more than 20 seconds

  • Si vous disposez d'une autorisation vous permettant de manipuler les ressources du cluster, l'approche privilégiée consiste à définir le nom du réseau de votre écouteur de groupe de disponibilité en tant que RegisterAllProvidersIP=0.If you have the permission to manipulate cluster resources, the more recommended approach is to set the network name of your availability group listener to RegisterAllProvidersIP=0. Pour plus d'informations, consultez « Paramètre RegisterAllProvidersIP » plus loin dans cette section.For more information, see "RegisterAllProvidersIP Setting” later in this section.

    Avantage : vous n’avez pas besoin d’augmenter la valeur du délai de connexion cliente.Pros: You do not need to increase your client-connection timeout value.

    Inconvénient : en cas de basculement entre sous-réseaux, la durée de récupération du client peut être de 15 minutes ou plus, en fonction du paramètre HostRecordTTL et du paramètre de planification de la réplication DNS/AD entre sites.Cons: If a cross-subnet failover occurs, the client recovery time could be 15 minutes or longer, depending on your HostRecordTTL setting and the setting of your cross-site DNS/AD replication schedule.

Paramètre RegisterAllProvidersIPRegisterAllProvidersIP Setting

Quand vous utilisez SQL Server Management StudioSQL Server Management Studio, Transact-SQLTransact-SQLou PowerShell pour créer un écouteur de groupe de disponibilité, le point d’accès client est créé dans WSFC et la valeur 1 (True) est affectée à la propriété RegisterAllProvidersIP .When you use SQL Server Management StudioSQL Server Management Studio, Transact-SQLTransact-SQL, or PowerShell to create an availability group listener, the Client Access Point is created in WSFC with the RegisterAllProvidersIP property set to 1 (true). L'effet de cette valeur de propriété dépend de la chaîne de connexion du client, comme suit :The effect of this property value depends on the client connection string, as follows:

  • Chaînes de connexion qui affectent la valeur True à MultiSubnetFailoverConnection strings that set MultiSubnetFailover to true

    Groupes de disponibilité Always OnAlways On availability groups affecte la valeur 1 à la propriété RegisterAllProvidersIP pour réduire le temps de reconnexion après un basculement pour les clients dont les chaînes de connexion du client spécifient MultiSubnetFailover = True, comme cela est recommandé. sets the RegisterAllProvidersIP property to 1 in order to reduce re-connection time after a failover for clients whose client connection strings specify MultiSubnetFailover = True, as recommended. Notez que, pour tirer parti des fonctionnalités de plusieurs sous-réseaux d’écouteur, les clients peuvent nécessiter un fournisseur de données qui prend en charge le mot clé MultiSubnetFailover .Note that to take advantage of the listener multi-subnet feature, your clients might require a data provider that supports the MultiSubnetFailover keyword. Pour plus d’informations sur la prise en charge du pilote pour le basculement de plusieurs sous-réseaux, consultez Connectivité client Always On (SQL Server).For information about driver support for multi-subnet failover, see Always On Client Connectivity (SQL Server).

    Pour plus d’informations sur le clustering de sous-réseaux multiples, consultez Clustering de sous-réseaux multiples SQL Server (SQL Server).For information about multi-subnet clustering, see SQL Server Multi-Subnet Clustering (SQL Server).

    Conseil

    Lorsque RegisterAllProvidersIP = 1, si vous exécutez l'Assistant WSFC Validation d'une configuration sur le cluster WSFC, l'Assistant génère le message d'avertissement suivant :When RegisterAllProvidersIP = 1, if you run the WSFC Validate a Configuration Wizard on the WSFC cluster, the wizard generates the following warning message:

    « La propriété RegisterAllProviderIP du nom réseau 'Name:<nom_réseau>' est définie sur 1. Pour la configuration de cluster actuelle, cette valeur doit être définie sur 0. »"The RegisterAllProviderIP property for network name 'Name:<network_name>' is set to 1 For the current cluster configuration this value should be set to 0."

    Veuillez ignorer ce message.Please ignore this message.

  • Chaînes de connexion qui n'affectent pas la valeur True à MultiSubnetFailover Connection strings that do not set MultiSubnetFailover to true

    Lorsque RegisterAllProvidersIP = 1, tous les clients dont les chaînes de connexion n'utilisent pas MultiSubnetFailover = Truerencontreront des connexions à latence élevée.When RegisterAllProvidersIP = 1, any clients whose connection strings do not use MultiSubnetFailover = True, will experience high latency connections. Cela est dû au fait que les clients essaient de se connecter à toutes les adresses IP de manière séquentielle.This occurs because these clients attempt connections to all IPs sequentially. En revanche, si RegisterAllProvidersIP est changé en 0, l'adresse IP active est enregistrée dans le point d'accès client du cluster WSFC, ce qui réduit la latence pour les clients hérités.In contrast, if RegisterAllProvidersIP is changed to 0, the active IP address is registered in the Client Access Point in the WSFC cluster, reducing latency for legacy clients. Par conséquent, si vous possédez des clients hérités qui doivent se connecter à un écouteur du groupe de disponibilité et ne peuvent pas utiliser la propriété MultiSubnetFailover , nous vous recommandons de changer RegisterAllProvidersIP en 0.Therefore, if you have legacy clients that that need to connect to an availability group listener and cannot use the MultiSubnetFailover property, we recommend that you change RegisterAllProvidersIP to 0.

    Important

    Quand vous créez un écouteur de groupe de disponibilité via le cluster WSFC (interface utilisateur graphique du gestionnaire du cluster de basculement), RegisterAllProvidersIP a la valeur 0 (False) par défaut.When you create an availability group listener through the WSFC cluster (Failover Cluster Manager GUI), RegisterAllProvidersIP will be 0 (false) by default.

Paramètre HostRecordTTLHostRecordTTL Setting

Par défaut, le service DNS en cluster du cache des clients enregistre pendant 20 minutes.By default, clients cache cluster DNS records for 20 minutes. En réduisant HostRecordTTL, autrement dit la durée de vie (TTL) de l’enregistrement mis en cache, les clients hérités peuvent se reconnecter plus rapidement.By reducing HostRecordTTL, the Time to Live (TTL), for the cached record, legacy clients may reconnect more quickly. Cependant, la réduction du paramètre HostRecordTTL peut également entraîner une augmentation du trafic vers les serveurs DN.However, reducing the HostRecordTTL setting may also result in increased traffic to the DN servers.

Exemple de script PowerShell pour désactiver RegisterAllProvidersIP et réduire TTLSample PowerShell Script to Disable RegisterAllProvidersIP and Reduce TTL

L'exemple PowerShell suivant explique comment configurer les paramètres de cluster RegisterAllProvidersIP et HostRecordTTL pour la ressource d'écouteur.The following PowerShell example demonstrates how to configure both the RegisterAllProvidersIP and HostRecordTTL cluster parameters for the listener resource. L'enregistrement DNS sera mis en cache pendant 5 minutes plutôt que pendant 20 minutes (valeur par défaut).The DNS record will be cached for 5 minutes rather than the default 20 minutes. La modification des deux paramètres de cluster peut réduire le temps de connexion à l'adresse IP correcte après un basculement pour les clients hérités qui ne peuvent pas utiliser le paramètre MultiSubnetFailover .Modifying both cluster parameters may reduce the time to connect to the correct IP address after a failover for legacy clients that cannot use the MultiSubnetFailover parameter. Remplacez yourListenerName par le nom de l'écouteur que vous modifiez.Replace yourListenerName with the name of the listener that you are changing.

Import-Module FailoverClusters  
Get-ClusterResource yourListenerName | Set-ClusterParameter RegisterAllProvidersIP 0   
Get-ClusterResource yourListenerName|Set-ClusterParameter HostRecordTTL 300  
Stop-ClusterResource yourListenerName  
Start-ClusterResource yourListenerName  

Pour plus d'informations sur les temps de récupération au cours d'un basculement, consultez Client Recovery Latency During Failover.For more information about recovery times during failover, see Client Recovery Latency During Failover.

Recommandations de suiviFollow-up Recommendations

Après avoir créé un écouteur de groupe de disponibilité :After you create an availability group listener:

  • Demandez à votre administrateur réseau de réserver l'adresse IP de l'écouteur pour son utilisation exclusive.Ask your network administrator to reserve the listener's IP address for its exclusive use.

  • Fournissez le nom d'hôte DNS de l'écouteur aux développeurs d'applications pour qu'ils l'utilisent dans les chaînes de connexion lorsqu'ils demandent des connexions clientes vers ce groupe de disponibilité.Give the listener's DNS host name to application developers to use in connection strings when requesting client connections to this availability group.

  • Encouragez les développeurs à mettre à jour les chaînes de connexion du client pour spécifier MultiSubnetFailover = True, si possible.Encourage developers to update client connection strings to specify MultiSubnetFailover = True, if possible. Pour plus d’informations sur la prise en charge du pilote pour le basculement de plusieurs sous-réseaux, consultez Connectivité client Always On (SQL Server).For information about driver support for multi-subnet failover, see Always On Client Connectivity (SQL Server).

Créer un écouteur supplémentaire pour un groupe de disponibilité (facultatif)Create an Additional Listener for an Availability Group (Optional)

Après avoir créé un écouteur via SQL Server, vous pouvez ajouter un écouteur supplémentaire, comme suit :After you create one listener through SQL Server, you can add an additional listener, as follows:

  1. Créez l'écouteur à l'aide de l'un des outils suivants :Create the listener using either of the following tools:

  2. Démarrez l'écoute SQL ServerSQL Server sur le nouvel écouteur.Start SQL ServerSQL Server listening on the new listener. Après avoir créé l'écouteur supplémentaire, connectez-vous à l'instance de SQL ServerSQL Server qui héberge le réplica principal du groupe de disponibilité et utilisez SQL Server Management StudioSQL Server Management Studio, Transact-SQLTransact-SQLou PowerShell pour modifier le port d'écoute.After creating the additional listener, connect to the instance of SQL ServerSQL Server that hosts the primary replica of the availability group and use SQL Server Management StudioSQL Server Management Studio, Transact-SQLTransact-SQL, or PowerShell to modify the listener port.

    Pour plus d’informations, consultez Créer plusieurs écouteurs pour le même groupe de disponibilité (blog de l’équipe de SQL Server Always On).For more information, see How to create multiple listeners for same availability group (a SQL Server Always On team blog).

Tâches associéesRelated Tasks

Contenu connexeRelated Content

Voir aussiSee Also

Vue d’ensemble des groupes de disponibilité Always On (SQL Server) Overview of Always On Availability Groups (SQL Server)
Écouteurs de groupe de disponibilité, connectivité client et basculement d’application (SQL Server) Availability Group Listeners, Client Connectivity, and Application Failover (SQL Server)
Clustering de sous-réseaux multiples SQL Server (SQL Server)SQL Server Multi-Subnet Clustering (SQL Server)