Availability Group Listeners - Create Or Update

Tworzy lub aktualizuje odbiornik grupy dostępności.

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

Parametry identyfikatora URI

Name In Required Type Description
availabilityGroupListenerName
path True
  • string

Nazwa odbiornika grupy dostępności.

resourceGroupName
path True
  • string

Nazwa grupy zasobów zawierającej zasób. Tę wartość można uzyskać z interfejsu API usługi Azure Resource Manager lub portalu.

sqlVirtualMachineGroupName
path True
  • string

Nazwa grupy maszyn wirtualnych SQL.

subscriptionId
path True
  • string

Identyfikator subskrypcji identyfikujący subskrypcję platformy Azure.

api-version
query True
  • string

Wersja interfejsu API do użycia dla żądania.

Treść żądania

Name Type Description
properties.availabilityGroupConfiguration

Konfiguracja grupy dostępności.

properties.availabilityGroupName
  • string

Nazwa grupy dostępności.

properties.createDefaultAvailabilityGroupIfNotExist
  • boolean

Utwórz domyślną grupę dostępności, jeśli nie istnieje.

properties.loadBalancerConfigurations

Lista konfiguracji modułu równoważenia obciążenia dla odbiornika grupy dostępności.

properties.port
  • integer

Port odbiornika.

Odpowiedzi

Name Type Description
200 OK

Pomyślnie zaktualizowano odbiornik grupy dostępności.

201 Created

Pomyślnie utworzono odbiornik grupy dostępności.

Other Status Codes

Odpowiedzi na błędy: ***

  • 400 InvalidParameterValue — podano nieprawidłową wartość parametru.

  • 400 RPGenericUser — błąd użytkownika podczas wywoływania innego dostawcy zasobów.

  • 400 RPResponseMissingAsyncOperationHeader — brak informacji nagłówka operacji asynchronicznych

  • 400 InvalidArgument — nieprawidłowy argument "{0}".

  • 400 ArgumentNotInRange — argument "{0}" nie mieści się w zakresie.

  • 400 ResourceNotProvisioned — jako zasób: {0} nie jest w stanie aprowizacji, nie można kontynuować przesyłania dalej żądania

  • 400 CRPNotAllowedOperation — nie można ukończyć operacji z powodu następującego błędu: {0}

  • 400 AadAppDisabled — aplikacja usługi Microsoft AAD SQLVMResourceProviderAuth ({0}) jest wyłączona w dzierżawie.

  • 400 InvalidRgResourceId — określono nieprawidłowy identyfikator zasobu grupy zasobów.

  • 400 InternalAPIAccessDenied — odmowa dostępu do wewnętrznego interfejsu API. Identyfikator {0} aplikacji jest nieprawidłowy do korzystania z tego interfejsu API.

  • 400 AgDoesNotExist — grupa dostępności nie istnieje.

  • 400 AgListDoesNotMatch — SQL lista grup dostępności nie jest zgodna z listą maszyn wirtualnych w grupie maszyn wirtualnych SQL.

  • 400 NoIpProvided — należy podać co najmniej jeden adres IP.

  • 400 WięcejipProvided — należy podać tylko jeden adres IP.

  • 400 SqlVmGroupDoesNotHaveAGListener — SQL grupa maszyn wirtualnych nie ma odbiornika grupy dostępności.

  • 400 AgListenerUpdateNotAllowed — można zaktualizować tylko kilka właściwości odbiornika grupy dostępności.

  • 400 SqlVmNotInGroup — SQL maszyna wirtualna nie należy do grupy.

  • 400 SqlVmListCannotBeEmpty — lista maszyn wirtualnych SQL nie może być pusta.

  • 400 PublicIpNotIPv4 — publiczny adres IP musi być adresem IPv4.

  • 400 PublicIPDynamicAllocation — tryb alokacji publicznego adresu IP musi być statyczny

  • 400 PublicLBInvalid — określony moduł równoważenia obciążenia nie jest publiczny.

  • 400 SubnetMissingFromPrivateIP — podsieć musi być dostarczana z prywatnym adresem IP.

  • 400 IPNotInSubnet — adres IP nie jest częścią podsieci.

  • 400 NoActivePrimaryInAG — żaden z węzłów w grupie dostępności jest podstawowy

  • 400 MultipleListenerSameAG — wiele odbiorników grupy dostępności dla tej samej grupy dostępności jest niedozwolonych.

  • 400 AgListenerNotEmpty — odbiornik grupy dostępności nie jest pusty.

  • 400 AgListenerVnetMismatch — podana sieć wirtualna dla odbiornika grupy dostępności nie jest zgodna z siecią wirtualną wewnętrznego modułu równoważenia obciążenia.

  • 400 InternalLBInvalid — określony moduł równoważenia obciążenia nie jest wewnętrzny.

  • 400 InvalidSqlVmResourceIdParameterValue — SQL podany identyfikator zasobu maszyny wirtualnej jest nieprawidłowy.

  • 400 DifferentSubSqlVmList — wszystkie maszyny wirtualne SQL powinny znajdować się w tej samej subskrypcji.

  • 400 OnlyStandardPublicIp — każda maszyna wirtualna powinna mieć standardowy publiczny adres IP.

  • 400 ListenerNameTooLong — nazwa odbiornika nie powinna przekraczać 15 znaków.

  • 400 InvalidListenerName — nieprawidłowa nazwa odbiornika.

  • 400 InvalidLBResourceIdParameterValue — identyfikator zasobu modułu równoważenia obciążenia jest nieprawidłowy.

  • 400 InvalidPublicIpResourceIdParameterValue — identyfikator zasobu publicznego adresu IP jest nieprawidłowy.

  • 400 InvalidSubnetIdParameterValue — nieprawidłowy identyfikator zasobu podany dla parametru podsieci.

  • 400 InvalidPrivateIpParameterValue — nieprawidłowy adres podany dla prywatnego adresu IP.

  • 400 ExtVersionNotSupported — maszyna wirtualna: {0} jest uruchomiona starsza wersja rozszerzenia SqlIaasExtension, która nie jest obsługiwana przez tę operację. Zaktualizuj rozszerzenie i ponów próbę wykonania operacji.

  • 400 InvalidReplicaRole — nieprawidłowa rola repliki: {0} określona dla maszyny wirtualnej SQL: {1}.

  • 400 InvalidReplicaFailover — nieprawidłowy tryb failover repliki: {0} dla maszyny wirtualnej SQL: {1}.

  • 400 InvalidReplicaReadableSecondary — nieprawidłowa pomocnicza z możliwością odczytu repliki: {0} dla maszyny wirtualnej SQL: {1}.

  • 400 InvalidReplicaCommit — nieprawidłowy tryb zatwierdzania repliki: {0} dla maszyny wirtualnej SQL: {1}.

  • 400 ExpectedSynchronousCommitForAutomaticFailover — nieprawidłowy tryb zatwierdzania repliki: {0} dla maszyny wirtualnej SQL: {1}. {2} jest oczekiwana dla trybu failover: {3}.

  • 400 NoPrimaryInAg — nie ma replik z rolą podstawową. Powinna istnieć dokładnie jedna replika z rolą podstawową.

  • 400 MoreThanOnePrimaryInAg — istnieje więcej niż jedna replika z rolą podstawową. Powinna istnieć dokładnie jedna replika z rolą podstawową.

  • 400 MoreThanThreeSynchronousCommitInAg — istnieje więcej niż trzy repliki z trybem zatwierdzania jako: {0}. Powinna istnieć co najwyżej trzy repliki z trybem zatwierdzania jako: {0}

  • 400 MoreThanEightSecondariesInAg — istnieje ponad osiem replik pomocniczych z rolą pomocniczą. Powinna istnieć co najwyżej osiem replik z rolą pomocniczą.

  • 400 AlwaysOnNotEnabled — funkcja always on nie jest włączona na maszynie wirtualnej: {0}.

  • 400 ExpectedReplicaNotPrimary — maszyna wirtualna: {0} nie obsługuje repliki podstawowej.

  • 400 LoadBalancerSqlvmsMismatchWithReplicaSqlvms — lista maszyn wirtualnych SQL określonych w grupie dostępności nie jest zgodna z listą maszyn wirtualnych SQL w konfiguracji modułu równoważenia obciążenia.

  • 400 ReplicaSqlvmHasDuplicateEntries — konfiguracja repliki powinna być unikatowa dla każdej SQL maszyny wirtualnej. Znaleźliśmy co najmniej jedną konfigurację dla tego samego zasobu maszyny wirtualnej SQL.

  • 400 ReplicaDeleteNotAllowed — usuwanie repliki za pośrednictwem SQL dostawcy zasobów maszyny wirtualnej nie jest jeszcze obsługiwane.

  • 400 OnlyBasicPublicIP — wszystkie określone maszyny wirtualne powinny zawierać tylko podstawowy publiczny adres IP podczas podawania jednostki SKU usługi Loadbalancer w warstwie Podstawowa.

  • 400 karty sieciowejCannotUseMultipleLBsOfSameType — karta sieciowa: {0} nie może odwoływać się do więcej niż jednego modułu równoważenia obciążenia typu WEWNĘTRZNEgo lub PUBLICZNEGO

  • 400 AGReplicaSQLStartupAccount — konto usługi NT nie może być używane jako konto uruchamiania SQL dla konfiguracji grupy dostępności. Należy użyć konta domeny.

  • 400 AgListenerMultiSubnetUpdateNotAllowed — aktualizacja odbiornika grupy dostępności z wieloma podsieciami jest niedozwolona.

  • 400 ListenerIpSubnetVmSubnetMismatch — podsieć statycznego adresu IP odbiornika i podsieć maszyny wirtualnej powinny być takie same

  • 400 VmNicVnetMismatch — niezgodność sieci wirtualnej karty sieciowej maszyny wirtualnej.

  • 400 NoAvailabilitySet — maszyna wirtualna nie jest skojarzona z żadnym zestawem dostępności.

  • 400 AvailabilitySetMismatch — zestaw dostępności maszyn wirtualnych nie jest zgodny.

  • 400 MismatchVmGroupSubscription — identyfikator subskrypcji dla maszyny wirtualnej SQL i grupa maszyn wirtualnych SQL są różne.

  • 400 VmNotRunning — maszyna wirtualna nie jest w stanie uruchomienia.

  • 400 VmAgentNotRunning — agent maszyny wirtualnej nie jest zainstalowany ani uruchomiony.

  • 400 NoIpAvailable — brak dostępnego adresu IP.

  • 403 AccessDenied — odmowa dostępu.

  • 404 ResourceNotFound — żądany zasób nie został znaleziony.

  • 404 SubscriptionDoesNotExist — identyfikator subskrypcji nie istnieje.

  • 404 ResourceDoesNotExist — zasób nie istnieje.

  • 404 RPOperationNotFound — nie znaleziono operacji

  • 404 OperationIdNotFound — nie można odnaleźć identyfikatora operacji.

  • 404 OperationTypeNotFound — nie znaleziono typu operacji.

  • 404 SubscriptionDoesNotHaveSqlVMGroupInResourceGroup — subskrypcja nie ma SQL grupy maszyn wirtualnych w grupie zasobów.

  • 409 ResourceAlreadyExists — zasób już istnieje.

  • 409 LBGenericErrors — operacja modułu równoważenia obciążenia nie powiodła się

  • 409 karta sieciowaGenericError — operacja karty sieciowej nie powiodła się

  • 409 SqlExtensionNotInstalled — nie zainstalowano rozszerzenia SQL.

  • 409 RPPluginSubstatusMissing — brak podstanu wtyczki rp

  • 409 MissingMoveResources — nie można przenieść zasobów, ponieważ w żądaniu brakuje niektórych zasobów.

  • 409 ResourceExists — wystąpił błąd wewnętrzny podczas czyszczenia zasobów.

  • 409 SubscriptionOperationInProgress — operacja w subskrypcji jest już w toku

  • 409 OperationInProgress — operacja w toku dla zasobu.

  • 409 OperationCanceled — operacja anulowana.

  • 409 ReplicasWithDifferentSqlStartupAccounts — upewnij się, że wszystkie konta uruchamiania serwera SQL w określonych replikach są takie same. Jest to jedno z naszych wymagań wstępnych dotyczących konfigurowania grup dostępności.

  • 409 ReplicasJoinedToMoreThanOneCluster — repliki grupy dostępności są przyłączone do więcej niż jednego klastra trybu failover. Upewnij się, że wszystkie repliki są przyłączone do tego samego klastra trybu failover.

  • 409 IPNotAvailable — adres IP {0} jest niedostępny{1}. Rozważ użycie jednej z ({2})

  • 409 IpAddressAlreadyReserved — adres IP zarezerwowany dla tego odbiornika już istnieje. Użyj adresu IP

  • 429 TooManyRequestsReceived —

  • 500 RPGenericSystem — błąd systemu podczas wywoływania innego dostawcy zasobów.

  • 500 UnExpectedErrorOccurred — wystąpił nieoczekiwany błąd.

  • 500 OperationTimeout — upłynął limit czasu operacji.

  • 500 SqlVmGroupIsBusy — SQL grupa maszyn wirtualnych jest zajęta.

Przykłady

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"
}

Definicje

AgConfiguration

Konfiguracja grupy dostępności.

AgReplica

Konfiguracja repliki grupy dostępności.

AvailabilityGroupListener

Odbiornik grupy dostępności SQL Server.

Commit

Tryb zatwierdzania repliki w grupie dostępności.

createdByType

Typ tożsamości, która utworzyła zasób.

Failover

Tryb trybu failover repliki w grupie dostępności.

LoadBalancerConfiguration

Konfiguracja modułu równoważenia obciążenia dla odbiornika grupy dostępności.

PrivateIPAddress

Prywatny adres IP powiązany z odbiornikiem grupy dostępności.

ReadableSecondary

Tryb pomocniczy z możliwością odczytu repliki w grupie dostępności.

Role

Rola repliki w grupie dostępności.

systemData

Metadane dotyczące tworzenia i ostatniej modyfikacji zasobu.

AgConfiguration

Konfiguracja grupy dostępności.

Name Type Description
replicas

Konfiguracje repliki.

AgReplica

Konfiguracja repliki grupy dostępności.

Name Type Description
commit

Tryb zatwierdzania repliki w grupie dostępności.

failover

Tryb trybu failover repliki w grupie dostępności.

readableSecondary

Tryb pomocniczy z możliwością odczytu repliki w grupie dostępności.

role

Rola repliki w grupie dostępności.

sqlVirtualMachineInstanceId
  • string

Identyfikator wystąpienia sql VirtualMachine.

AvailabilityGroupListener

Odbiornik grupy dostępności SQL Server.

Name Type Description
id
  • string

Identyfikator zasobu.

name
  • string

Nazwa zasobu.

properties.availabilityGroupConfiguration

Konfiguracja grupy dostępności.

properties.availabilityGroupName
  • string

Nazwa grupy dostępności.

properties.createDefaultAvailabilityGroupIfNotExist
  • boolean

Utwórz domyślną grupę dostępności, jeśli nie istnieje.

properties.loadBalancerConfigurations

Lista konfiguracji modułu równoważenia obciążenia dla odbiornika grupy dostępności.

properties.port
  • integer

Port odbiornika.

properties.provisioningState
  • string

Stan aprowizacji w celu śledzenia stanu operacji asynchronicznych.

systemData

Metadane dotyczące tworzenia i ostatniej modyfikacji zasobu.

type
  • string

Typ zasobu.

Commit

Tryb zatwierdzania repliki w grupie dostępności.

Name Type Description
ASYNCHRONOUS_COMMIT
  • string
SYNCHRONOUS_COMMIT
  • string

createdByType

Typ tożsamości, która utworzyła zasób.

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

Failover

Tryb trybu failover repliki w grupie dostępności.

Name Type Description
AUTOMATIC
  • string
MANUAL
  • string

LoadBalancerConfiguration

Konfiguracja modułu równoważenia obciążenia dla odbiornika grupy dostępności.

Name Type Description
loadBalancerResourceId
  • string

Identyfikator zasobu modułu równoważenia obciążenia.

privateIpAddress

Prywatny adres IP.

probePort
  • integer

Port sondy.

publicIpAddressResourceId
  • string

Identyfikator zasobu publicznego adresu IP.

sqlVirtualMachineInstances
  • string[]

Lista identyfikatorów zasobów wystąpienia maszyny wirtualnej SQL zarejestrowanych w odbiorniku grupy dostępności.

PrivateIPAddress

Prywatny adres IP powiązany z odbiornikiem grupy dostępności.

Name Type Description
ipAddress
  • string

Prywatny adres IP powiązany z odbiornikiem grupy dostępności.

subnetResourceId
  • string

Podsieć używana do dołączania prywatnego adresu IP.

ReadableSecondary

Tryb pomocniczy z możliwością odczytu repliki w grupie dostępności.

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

Role

Rola repliki w grupie dostępności.

Name Type Description
PRIMARY
  • string
SECONDARY
  • string

systemData

Metadane dotyczące tworzenia i ostatniej modyfikacji zasobu.

Name Type Description
createdAt
  • string

Sygnatura czasowa tworzenia zasobów (UTC).

createdBy
  • string

Tożsamość, która utworzyła zasób.

createdByType

Typ tożsamości, która utworzyła zasób.

lastModifiedAt
  • string

Sygnatura czasowa ostatniej modyfikacji zasobu (UTC)

lastModifiedBy
  • string

Tożsamość, która ostatnio zmodyfikowała zasób.

lastModifiedByType

Typ tożsamości, która ostatnio zmodyfikowała zasób.