Availability Group Listeners - Create Or Update

Crea o aggiorna un listener del gruppo di disponibilità.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/{sqlVirtualMachineGroupName}/availabilityGroupListeners/{availabilityGroupListenerName}?api-version=2021-11-01-preview

Parametri dell'URI

Name In Required Type Description
availabilityGroupListenerName
path True
  • string

Nome del listener del gruppo di disponibilità.

resourceGroupName
path True
  • string

Nome del gruppo di risorse che contiene la risorsa. È possibile ottenere questo valore dall'API di Gestione risorse di Azure o dal portale.

sqlVirtualMachineGroupName
path True
  • string

Nome del gruppo di macchine virtuali SQL.

subscriptionId
path True
  • string

ID sottoscrizione che identifica una sottoscrizione di Azure.

api-version
query True
  • string

Versione dell'API da usare per la richiesta.

Corpo della richiesta

Name Type Description
properties.availabilityGroupConfiguration

Configurazione del gruppo di disponibilità.

properties.availabilityGroupName
  • string

Nome del gruppo di disponibilità.

properties.createDefaultAvailabilityGroupIfNotExist
  • boolean

Creare un gruppo di disponibilità predefinito se non esiste.

properties.loadBalancerConfigurations

Elenco delle configurazioni del servizio di bilanciamento del carico per un listener del gruppo di disponibilità.

properties.port
  • integer

Porta del listener.

Risposte

Name Type Description
200 OK

Aggiornato correttamente il listener del gruppo di disponibilità.

201 Created

È stato creato correttamente il listener del gruppo di disponibilità.

Other Status Codes

Risposte agli errori: **

  • 400 InvalidParameterValue : è stato assegnato un valore non valido al parametro.

  • 400 RPGenericUser - Errore utente quando si chiama altro provider di risorse.

  • 400 RPResponseMissingAsyncOperationHeader - Risposta mancante informazioni sull'intestazione dell'operazione asincrona

  • 400 InvalidArgument - Argomento non valido '{0}'.

  • 400 ArgumentNotInRange - Argomento '{0}' non compreso nell'intervallo.

  • 400 ResourceNotProvisioned - Come risorsa: {0} non è in uno stato di provisioning, la richiesta non può essere inoltrata

  • 400 CRPNotAllowedOperation - Operazione non può essere completata a causa dell'errore seguente: {0}

  • 400 AadAppDisabled - L'app MICROSOFT AAD SQLVMResourceProviderAuth ({0}) è disabilitata nel tenant.

  • 400 InvalidRgResourceId - ID risorsa Resourcegroup non valido specificato.

  • 400 InternalAPIAccessDenied - Accesso api interno negato. L'ID {0} app non è valido per l'uso di questa API.

  • 400 AgDoesNotExist - Gruppo di disponibilità non esiste.

  • 400 AgListDoesNotMatch: SQL elenco gruppo di disponibilità non corrisponde all'elenco delle macchine virtuali nel gruppo di macchine virtuali SQL gruppo di macchine virtuali.

  • 400 NoIpProvided - È necessario specificare almeno un INDIRIZZO IP.

  • 400 MoreIpProvided : è necessario specificare un solo INDIRIZZO IP.

  • 400 SqlVmGroupDoesNotHaveAGListener - SQL gruppo di macchine virtuali non dispone del listener del gruppo di disponibilità.

  • 400 AgListenerUpdateNotAllowed: è possibile aggiornare solo alcune proprietà del listener del gruppo di disponibilità.

  • 400 SqlVmNotInGroup : SQL macchina virtuale non fa parte del gruppo.

  • 400 SqlVmListCannotBeEmpty: SQL elenco di macchine virtuali non può essere vuoto.

  • 400 PublicIpNotIPv4: l'indirizzo IP pubblico deve essere IPv4.

  • 400 PublicIPDynamicAllocation - La modalità di allocazione IP pubblica deve essere statica

  • 400 PublicLBInvalid: il servizio di bilanciamento del carico specificato non è pubblico.

  • 400 SubnetMissingFromPrivateIP : la subnet deve essere fornita con l'INDIRIZZO IP privato.

  • 400 IPNotInSubnet - IP non parte della subnet.

  • 400 NoActivePrimaryInAG - Nessuno dei nodi in AvailabilityGroup è primario

  • 400 MultipleListenerSameAG : non sono consentiti più listener del gruppo di disponibilità per lo stesso gruppo di disponibilità.

  • 400 AgListenerNotEmpty - Listener del gruppo di disponibilità non vuoto.

  • 400 AgListenerVnetMismatch - La rete virtuale fornita per il listener del gruppo di disponibilità non corrisponde alla rete virtuale del servizio di bilanciamento del carico interno.

  • 400 InternalLBInvalid : il servizio di bilanciamento del carico specificato non è interno.

  • 400 InvalidSqlVmResourceIdParameterValue : SQL ID risorsa macchina virtuale fornito non è valido.

  • 400 DifferentSubSqlVmList: tutte le macchine virtuali SQL devono essere sotto la stessa sottoscrizione.

  • 400 OnlyStandardPublicIp: ogni macchina virtuale deve avere un INDIRIZZO IP pubblico standard.

  • 400 ListenerNameTooLong : il nome del listener non deve superare 15 caratteri.

  • 400 InvalidListenerName - Nome listener non valido.

  • 400 InvalidLBResourceIdParameterValue - ID risorsa load balancer non è valido.

  • 400 InvalidPublicIpResourceIdParameterValue - ID risorsa IP pubblico non è valido.

  • 400 InvalidSubnetIdParameterValue - ID risorsa non valido fornito per il parametro subnet.

  • 400 InvalidPrivateIpParameterValue - Indirizzo non valido per l'indirizzo IP privato.

  • 400 ExtVersionNotSupported - La macchina virtuale: {0} esegue la versione precedente di SqlIaasExtension che non è supportata da questa operazione. Aggiornare l'estensione e riprovare l'operazione.

  • 400 InvalidReplicaRole - Ruolo di replica non valido: {0} specificato per SQL VM: {1}.

  • 400 InvalidReplicaFailover - Failover di replica non valido: per SQL macchina virtuale: {0}{1}.

  • 400 InvalidReplicaReadableSecondary - Replica non valida leggibile secondaria: per SQL VM: {0}{1}.

  • 400 InvalidReplicaCommit - Modalità commit di replica non valida: per SQL macchina virtuale: {0}{1}.

  • 400 ExpectedSynchronousCommitForAutomaticFailover - Modalità di commit di replica non valida: per SQL macchina virtuale: {0}{1}. {2} è previsto per la modalità di failover: {3}.

  • 400 NoPrimaryInAg: non sono presenti repliche con ruolo primario. Dovrebbe essere presente esattamente una replica con ruolo primario.

  • 400 MoreThanOnePrimaryInAg: sono presenti più repliche con ruolo primario. Dovrebbe essere presente esattamente una replica con ruolo primario.

  • 400 MoreThanThreeSynchronousCommitInAg: sono presenti più di tre repliche con modalità commit come : {0}. È necessario che siano presenti al massimo tre repliche con modalità commit come: {0}

  • 400 MoreThanEightSecondariesInAg: sono presenti più di otto repliche secondarie con ruolo secondario. Dovrebbe essere presente al massimo otto repliche con ruolo secondario.

  • 400 AlwaysOnNotEnabled - La funzionalità AlwaysOnNotEnabled non è abilitata nella macchina virtuale: {0}.

  • 400 ExpectedReplicaNotPrimary - Macchina virtuale: {0} non ospita la replica primaria.

  • 400 LoadBalancerSqlvmsMismatchWithReplicaSqlvms - Elenco di macchine virtuali SQL specificate nel gruppo di disponibilità non corrisponde all'elenco di macchine virtuali SQL nella configurazione del servizio di bilanciamento del carico.

  • 400 ReplicaSqlvmHasDuplicateEntries - La configurazione della replica deve essere univoca per ogni macchina virtuale SQL. È stata trovata una o più configurazioni per la stessa risorsa macchina virtuale SQL.

  • 400 ReplicaDeleteNotAllowed : l'eliminazione della replica tramite SQL VM RP non è ancora supportata.

  • 400 OnlyBasicPublicIP: tutte le macchine virtuali specificate devono contenere solo l'INDIRIZZO IP pubblico di base, quando si specifica loadbalancer Basic Sku.

  • 400 NICCannotUseMultipleLBsOfSameType - NIC: {0} non può fare riferimento a più di un servizio di bilanciamento del carico di TIPO INTERNAL o PUBLIC

  • 400 AGReplicaSQLStartupAccount - L'account del servizio NT non può essere usato come account di avvio SQL per la configurazione del gruppo di disponibilità. È consigliabile usare un account di dominio.

  • 400 AgListenerMultiSubnetUpdateNotAllowed - L'aggiornamento del listener del gruppo di disponibilità multi subnet non è consentito.

  • 400 ListenerIpSubnetVmSubnetMismatch - Subnet indirizzo IP statico listener e subnet della macchina virtuale devono essere uguali

  • 400 VmNicVnetMismatch - Mancata corrispondenza della rete virtuale della macchina virtuale della macchina virtuale.

  • 400 NoAvailabilitySet: la macchina virtuale non è associata a alcun set di disponibilità.

  • 400 AvailabilitySetMismatch - Set di disponibilità di macchine virtuali non corrisponde.

  • 400 MismatchVmGroupSubscription - ID sottoscrizione per SQL macchina virtuale e SQL gruppo di macchine virtuali sono diversi.

  • 400 VmNotRunning: la macchina virtuale non è in esecuzione.

  • 400 VmAgentNotRunning: l'agente della macchina virtuale non è installato o in esecuzione.

  • 400 NoIpAvailable - Nessun INDIRIZZO IP disponibile.

  • 403 AccessDenied - Accesso negato.

  • 404 ResourceNotFound : la risorsa richiesta non è stata trovata.

  • 404 SubscriptionDoesNotExist - ID sottoscrizione non esiste.

  • 404 ResourceDoesNotExist : la risorsa non esiste.

  • 404 RPOperationNotFound - Operazione non trovata

  • 404 OperationIdNotFound - Impossibile trovare l'ID operazione.

  • 404 OperationTypeNotFound - Tipo di operazione non trovato.

  • 404 SubscriptionDoesNotHaveSqlVMGroupInResourceGroup - La sottoscrizione non ha SQL gruppo di macchine virtuali nel gruppo di risorse.

  • 409 ResourceAlreadyExists - La risorsa esiste già.

  • 409 LBGenericErrors - Operazione LB non riuscita

  • 409 NICGenericError - Operazione di interfaccia di interfaccia di rete non riuscita

  • 409 SqlExtensionNotInstalled - estensione SQL non installata.

  • 409 RPPluginSubstatusMissing - Substatus plug-in RP mancante

  • 409 MissingMoveResources - Impossibile spostare le risorse perché alcune risorse mancano nella richiesta.

  • 409 ResourceExists: si è verificato un errore interno nella pulizia delle risorse.

  • 409 SubscriptionOperationInProgress - Un'operazione sulla sottoscrizione è già in corso

  • 409 OperationInProgress - Operazione in corso già sulla risorsa.

  • 409 OperationCanceled - Operazione annullata.

  • 409 ReplicheWithDifferentSqlStartupAccounts: assicurarsi che tutti gli account di avvio del server di SQL nelle repliche specificate siano uguali. Si tratta di uno dei prerequisiti per la configurazione dei gruppi di disponibilità.

  • 409 ReplicheJoinedToMoreThanOneCluster - Le repliche del gruppo di disponibilità vengono unite a più cluster di failover. Assicurarsi che tutte le repliche vengano unite allo stesso cluster di failover.

  • 409 IPNotAvailable : IP {0} non disponibile{1}. Prendere in considerazione l'uso di uno da ({2})

  • 409 IpAddressAlreadyReserved : l'indirizzo IP riservato per questo listener esiste già. Usare l'indirizzo IP

  • 429 TooManyRequestsReceived -

  • 500 RPGenericSystem - Errore di sistema quando si chiama altro provider di risorse.

  • 500 UnExpectedErrorOccurred - Si è verificato un errore imprevisto.

  • 500 OperationTimeout - Timeout dell'operazione.

  • 500 SqlVmGroupIsBusy : SQL gruppo di macchine virtuali è occupato.

Esempio

Creates or updates an availability group listener.

Sample Request

PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup/availabilityGroupListeners/agl-test?api-version=2021-11-01-preview

{
  "properties": {
    "availabilityGroupName": "ag-test",
    "loadBalancerConfigurations": [
      {
        "privateIpAddress": {
          "ipAddress": "10.1.0.112",
          "subnetResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default"
        },
        "loadBalancerResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb-test",
        "probePort": 59983,
        "sqlVirtualMachineInstances": [
          "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm2",
          "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm3"
        ]
      }
    ],
    "port": 1433
  }
}

Sample Response

{
  "properties": {
    "provisioningState": "Updating",
    "loadBalancerConfigurations": [
      {
        "privateIpAddress": {
          "ipAddress": "10.1.0.113",
          "subnetResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default"
        },
        "sqlVirtualMachineInstances": [
          "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm2",
          "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm3"
        ]
      }
    ],
    "port": 1433
  },
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup/availabilityGroupListeners/agl-test",
  "name": "agl-test",
  "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/availabilityGroupListeners"
}
{
  "properties": {
    "provisioningState": "Provisioning",
    "loadBalancerConfigurations": [
      {
        "privateIpAddress": {
          "ipAddress": "10.1.0.112",
          "subnetResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default"
        },
        "sqlVirtualMachineInstances": [
          "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm2",
          "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm3"
        ]
      }
    ],
    "port": 1433
  },
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup/availabilityGroupListeners/agl-test",
  "name": "agl-test",
  "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/availabilityGroupListeners"
}

Definizioni

AgConfiguration

Configurazione del gruppo di disponibilità.

AgReplica

Configurazione della replica del gruppo di disponibilità.

AvailabilityGroupListener

Listener del gruppo di disponibilità SQL Server.

Commit

Modalità di commit della replica nel gruppo di disponibilità.

createdByType

Tipo di identità che ha creato la risorsa.

Failover

Modalità di failover della replica nel gruppo di disponibilità.

LoadBalancerConfiguration

Configurazione del servizio di bilanciamento del carico per un listener del gruppo di disponibilità.

PrivateIPAddress

Indirizzo IP privato associato al listener del gruppo di disponibilità.

ReadableSecondary

Modalità secondaria leggibile della replica nel gruppo di disponibilità.

Role

Ruolo di replica nel gruppo di disponibilità.

systemData

Metadati relativi alla creazione e all'ultima modifica della risorsa.

AgConfiguration

Configurazione del gruppo di disponibilità.

Name Type Description
replicas

Configurazioni di replica.

AgReplica

Configurazione della replica del gruppo di disponibilità.

Name Type Description
commit

Modalità di commit della replica nel gruppo di disponibilità.

failover

Modalità di failover della replica nel gruppo di disponibilità.

readableSecondary

Modalità secondaria leggibile della replica nel gruppo di disponibilità.

role

Ruolo di replica nel gruppo di disponibilità.

sqlVirtualMachineInstanceId
  • string

ID istanza di Sql VirtualMachine.

AvailabilityGroupListener

Listener del gruppo di disponibilità SQL Server.

Name Type Description
id
  • string

ID risorsa.

name
  • string

Nome risorsa.

properties.availabilityGroupConfiguration

Configurazione del gruppo di disponibilità.

properties.availabilityGroupName
  • string

Nome del gruppo di disponibilità.

properties.createDefaultAvailabilityGroupIfNotExist
  • boolean

Creare un gruppo di disponibilità predefinito se non esiste.

properties.loadBalancerConfigurations

Elenco delle configurazioni del servizio di bilanciamento del carico per un listener del gruppo di disponibilità.

properties.port
  • integer

Porta del listener.

properties.provisioningState
  • string

Stato di provisioning per tenere traccia dello stato dell'operazione asincrona.

systemData

Metadati relativi alla creazione e all'ultima modifica della risorsa.

type
  • string

Tipo di risorsa.

Commit

Modalità di commit della replica nel gruppo di disponibilità.

Name Type Description
ASYNCHRONOUS_COMMIT
  • string
SYNCHRONOUS_COMMIT
  • string

createdByType

Tipo di identità che ha creato la risorsa.

Name Type Description
Application
  • string
Key
  • string
ManagedIdentity
  • string
User
  • string

Failover

Modalità di failover della replica nel gruppo di disponibilità.

Name Type Description
AUTOMATIC
  • string
MANUAL
  • string

LoadBalancerConfiguration

Configurazione del servizio di bilanciamento del carico per un listener del gruppo di disponibilità.

Name Type Description
loadBalancerResourceId
  • string

ID risorsa del servizio di bilanciamento del carico.

privateIpAddress

Indirizzo IP privato.

probePort
  • integer

Porta probe.

publicIpAddressResourceId
  • string

ID risorsa dell'INDIRIZZO IP pubblico.

sqlVirtualMachineInstances
  • string[]

Elenco dell'ID risorsa dell'istanza di macchina virtuale SQL registrato nel listener del gruppo di disponibilità.

PrivateIPAddress

Indirizzo IP privato associato al listener del gruppo di disponibilità.

Name Type Description
ipAddress
  • string

Indirizzo IP privato associato al listener del gruppo di disponibilità.

subnetResourceId
  • string

Subnet usata per includere l'INDIRIZZO IP privato.

ReadableSecondary

Modalità secondaria leggibile della replica nel gruppo di disponibilità.

Name Type Description
ALL
  • string
NO
  • string
READ_ONLY
  • string

Role

Ruolo di replica nel gruppo di disponibilità.

Name Type Description
PRIMARY
  • string
SECONDARY
  • string

systemData

Metadati relativi alla creazione e all'ultima modifica della risorsa.

Name Type Description
createdAt
  • string

Timestamp della creazione di risorse (UTC).

createdBy
  • string

Identità che ha creato la risorsa.

createdByType

Tipo di identità che ha creato la risorsa.

lastModifiedAt
  • string

Timestamp dell'ultima modifica della risorsa (UTC)

lastModifiedBy
  • string

Identità che ha modificato l'ultima risorsa.

lastModifiedByType

Tipo di identità che ha modificato l'ultima risorsa.