Availability Group Listeners - Create Or Update

가용성 그룹 수신기를 만들거나 업데이트합니다.

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

URI 매개 변수

Name In Required Type Description
availabilityGroupListenerName
path True
  • string

가용성 그룹 수신기의 이름입니다.

resourceGroupName
path True
  • string

리소스를 포함하는 리소스 그룹의 이름 Azure 리소스 관리자 API 또는 포털에서 이 값을 가져올 수 있습니다.

sqlVirtualMachineGroupName
path True
  • string

SQL 가상 머신 그룹의 이름입니다.

subscriptionId
path True
  • string

Azure 구독을 식별하는 구독 ID입니다.

api-version
query True
  • string

요청에 사용할 API 버전입니다.

요청 본문

Name Type Description
properties.availabilityGroupConfiguration

가용성 그룹 구성.

properties.availabilityGroupName
  • string

가용성 그룹의 이름으로,

properties.createDefaultAvailabilityGroupIfNotExist
  • boolean

기본 가용성 그룹이 없는 경우 만듭니다.

properties.loadBalancerConfigurations

가용성 그룹 수신기에 대한 부하 분산 장치 구성 목록입니다.

properties.port
  • integer

수신기 포트입니다.

응답

Name Type Description
200 OK

가용성 그룹 수신기를 성공적으로 업데이트했습니다.

201 Created

가용성 그룹 수신기를 만들었습니다.

Other Status Codes

오류 응답: ***

  • 400 InvalidParameterValue - 매개 변수에 잘못된 값이 지정되었습니다.

  • 400 RPGenericUser - 다른 리소스 공급자를 호출할 때 사용자 오류가 발생했습니다.

  • 400 RPResponseMissingAsyncOperationHeader - 응답에 비동기 작업 헤더 정보가 없습니다.

  • 400 InvalidArgument - 잘못된 인수 '{0}'.

  • 400 ArgumentNotInRange - '' 인수{0}가 범위에 없습니다.

  • 400 ResourceNotProvisioned - 리소스: {0} 프로비전된 상태가 아니으므로 요청을 계속 진행할 수 없습니다.

  • 400 CRPNotAllowedOperation - 다음 오류로 인해 작업을 완료할 수 없습니다. {0}

  • 400 AadAppDisabled - Microsoft AAD 앱 SQLVMResourceProviderAuth({0})가 테넌트에서 비활성화됩니다.

  • 400 InvalidRgResourceId - 잘못된 리소스 그룹 리소스 ID가 지정되었습니다.

  • 400 InternalAPIAccessDenied - 내부 API 액세스가 거부되었습니다. 앱 ID {0} 가 이 API를 사용할 수 없습니다.

  • 400 AgDoesNotExist - 가용성 그룹이 없습니다.

  • 400 AgListDoesNotMatch - SQL 가용성 그룹 목록이 SQL 가상 머신 그룹의 가상 머신 목록과 일치하지 않습니다.

  • 400 NoIpProvided - 하나 이상의 IP를 제공해야 합니다.

  • 400 MoreIpProvided - 하나의 IP만 제공해야 합니다.

  • 400 SqlVmGroupDoesNotHaveAGListener - SQL 가상 머신 그룹에 AG 수신기가 없습니다.

  • 400 AgListenerUpdateNotAllowed - 가용성 그룹 수신기의 소수 속성만 업데이트할 수 있습니다.

  • 400 SqlVmNotInGroup - SQL 가상 머신이 그룹에 속하지 않습니다.

  • 400 SqlVmListCannotBeEmpty - SQL 가상 머신 목록을 비울 수 없습니다.

  • 400 PublicIpNotIPv4 - 공용 IP는 IPv4 주소여야 합니다.

  • 400 PublicIPDynamicAllocation - 공용 IP 할당 모드는 정적이어야 합니다.

  • 400 PublicLBInvalid - 지정된 부하 분산 장치가 공용이 아닙니다.

  • 400 SubnetMissingFromPrivateIP - 서브넷은 개인 IP와 함께 제공되어야 합니다.

  • 400 IPNotInSubnet - IP가 서브넷의 일부가 아닙니다.

  • 400 NoActivePrimaryInAG - AvailabilityGroup의 노드 중 기본 노드가 없음

  • 400 MultipleListenerSameAG - 동일한 가용성 그룹에 대한 여러 가용성 그룹 수신기는 허용되지 않습니다.

  • 400 AgListenerNotEmpty - 가용성 그룹 수신기가 비어 있지 않습니다.

  • 400 AgListenerVnetMismatch - 제공된 가용성 그룹 수신기용 VNet이 내부 부하 분산 장치의 Vnet과 일치하지 않습니다.

  • 400 InternalLBInvalid - 지정된 부하 분산 장치가 내부가 아닙니다.

  • 400 InvalidSqlVmResourceIdParameterValue - 제공된 가상 머신 리소스 ID가 잘못된 SQL.

  • 400 DifferentSubSqlVmList - 모든 SQL 가상 머신이 동일한 구독에 있어야 합니다.

  • 400 OnlyStandardPublicIp - 모든 가상 머신에는 표준 공용 IP가 있어야 합니다.

  • 400 ListenerNameTooLong - 수신기 이름은 15자를 초과하면 안 됩니다.

  • 400 InvalidListenerName - 수신기 이름이 잘못되었습니다.

  • 400 InvalidLBResourceIdParameterValue - 부하 분산 장치 리소스 ID가 잘못되었습니다.

  • 400 InvalidPublicIpResourceIdParameterValue - 공용 IP 리소스 ID가 잘못되었습니다.

  • 400 InvalidSubnetIdParameterValue - 서브넷 매개 변수에 잘못된 리소스 ID가 제공되었습니다.

  • 400 InvalidPrivateIpParameterValue - 개인 IP 주소에 대해 잘못된 주소가 지정되었습니다.

  • 400 ExtVersionNotSupported - 가상 머신: {0} 이 작업에서 지원되지 않는 이전 버전의 SqlIaasExtension을 실행하고 있습니다. 확장을 업데이트하고 작업을 다시 시도하세요.

  • 400 InvalidReplicaRole - 잘못된 복제본 역할: {0} SQL VM에 대해 지정됨: {1}.

  • 400 InvalidReplicaFailover - 잘못된 복제본 장애 조치(failover): {0} SQL VM: {1}.

  • 400 InvalidReplicaReadableSecondary - 잘못된 복제본 읽기 가능한 보조: {0} SQL VM: {1}.

  • 400 InvalidReplicaCommit - 잘못된 복제본 커밋 모드: {0} SQL VM: {1}.

  • 400 ExpectedSynchronousCommitForAutomaticFailover - 잘못된 복제본 커밋 모드: {0} SQL VM: {1}. {2} 는 장애 조치(failover) 모드에 {3}대해 필요합니다.

  • 400 NoPrimaryInAg - 주 역할을 가진 복제본이 없습니다. 역할이 주 복제본인 복제본이 하나만 있어야 합니다.

  • 400 MoreThanOnePrimaryInAg - 주 역할이 있는 복제본이 두 개 이상 있습니다. 역할이 주 복제본인 복제본이 하나만 있어야 합니다.

  • 400 MoreThanThreeSynchronousCommitInAg - 커밋 모드가 다음과 같은 {0}세 개 이상의 복제본이 있습니다. 커밋 모드가 있는 복제본은 최대 3개여야 합니다. {0}

  • 400 MoreThanEightSecondariesInAg - 보조 역할이 있는 8개 이상의 보조 복제본이 있습니다. 보조 역할의 복제본은 최대 8개여야 합니다.

  • 400 AlwaysOnNotEnabled - 가상 머신 {0}에서 Always On 기능을 사용할 수 없습니다.

  • 400 ExpectedReplicaNotPrimary - VM: {0} 주 복제본을 호스트하지 않습니다.

  • 400 LoadBalancerSqlvmsMismatchWithReplicaSqlvms - 가용성 그룹에 지정된 SQL VM 목록이 부하 분산 장치 구성의 SQL VM 목록과 일치하지 않습니다.

  • 400 ReplicaSqlvmHasDuplicateEntries - 복제본 구성은 각 SQL 가상 머신에 대해 고유해야 합니다. 동일한 SQL 가상 머신 리소스에 대한 하나 이상의 구성을 찾았습니다.

  • 400 ReplicaDeleteNotAllowed - SQL VM RP를 통한 복제본 삭제는 아직 지원되지 않습니다.

  • 400 OnlyBasicPublicIP - 지정된 모든 VM은 Loadbalancer Basic Sku를 제공할 때 기본 공용 IP만 포함해야 합니다.

  • 400 NICCannotUseMultipleLBsOfSameType - NIC: {0} INTERNAL 또는 PUBLIC 형식의 부하 분산 장치를 둘 이상 참조할 수 없습니다.

  • 400 AGReplicaSQLStartupAccount - NT 서비스 계정은 AG 설치를 위한 SQL 시작 계정으로 사용할 수 없습니다. 도메인 계정을 사용해야 합니다.

  • 400 AgListenerMultiSubnetUpdateNotAllowed - 다중 서브넷 AG 수신기의 업데이트는 허용되지 않습니다.

  • 400 ListenerIpSubnetVmSubnetMismatch - 수신기 고정 IP 주소 서브넷 및 VM 서브넷은 동일해야 합니다.

  • 400 VmNicVnetMismatch - 가상 머신 NIC VNet 불일치.

  • 400 NoAvailabilitySet - Vm은 가용성 집합과 연결되지 않습니다.

  • 400 AvailabilitySetMismatch - 가상 머신의 가용성 집합이 일치하지 않습니다.

  • 400 MismatchVmGroupSubscription - SQL 가상 머신 및 SQL 가상 머신 그룹에 대한 구독 ID가 다릅니다.

  • 400 VmNotRunning - VM이 실행 중 상태가 아닙니다.

  • 400 VmAgentNotRunning - VM 에이전트가 설치되지 않았거나 실행 중 상태입니다.

  • 400 NoIpAvailable - 사용 가능한 IP가 없습니다.

  • 403 AccessDenied - 액세스가 거부되었습니다.

  • 404 ResourceNotFound - 요청된 리소스를 찾을 수 없습니다.

  • 404 SubscriptionDoesNotExist - 구독 ID가 없습니다.

  • 404 ResourceDoesNotExist - 리소스가 없습니다.

  • 404 RPOperationNotFound - 작업을 찾을 수 없음

  • 404 OperationIdNotFound - 작업 ID를 찾을 수 없습니다.

  • 404 OperationTypeNotFound - 작업 유형을 찾을 수 없습니다.

  • 404 SubscriptionDoesNotHaveSqlVMGroupInResourceGroup - 구독에는 리소스 그룹에 SQL 가상 머신 그룹이 없습니다.

  • 409 ResourceAlreadyExists - 리소스가 이미 있습니다.

  • 409 LBGenericErrors - LB 작업이 실패했습니다.

  • 409 NICGenericError - NIC 작업이 실패했습니다.

  • 409 SqlExtensionNotInstalled - SQL 확장이 설치되지 않았습니다.

  • 409 RPPluginSubstatusMissing - RP 플러그 인 하위 통계가 없습니다.

  • 409 MissingMoveResources - 일부 리소스가 요청에 누락되어 리소스를 이동할 수 없습니다.

  • 409 ResourceExists - 리소스 정리에 내부 오류가 발생했습니다.

  • 409 SubscriptionOperationInProgress - 구독에 대한 작업이 이미 진행 중입니다.

  • 409 OperationInProgress - 이미 리소스에서 진행 중인 작업입니다.

  • 409 OperationCanceled - 작업이 취소되었습니다.

  • 409 ReplicasWithDifferentSqlStartupAccounts - 지정된 복제본의 모든 SQL 서버 시작 계정이 동일한지 확인하세요. 가용성 그룹을 설정하기 위한 필수 구성 요소 중 하나입니다.

  • 409 ReplicasJoinedToMoreThanOneCluster - AG 복제본이 둘 이상의 장애 조치(failover) 클러스터에 조인됩니다. 모든 복제본이 동일한 장애 조치(failover) 클러스터에 조인되어 있는지 확인하세요.

  • 409 IPNotAvailable - IP {0} 를 사용할 수{1} 없습니다. ()에서{2} 하나를 사용하는 것이 좋습니다.

  • 409 IpAddressAlreadyReserved - 이 수신기에 예약된 IP 주소가 이미 있습니다. IP 주소를 사용하세요.

  • 429 TooManyRequestsReceived -

  • 500 RPGenericSystem - 다른 리소스 공급자를 호출할 때 시스템 오류가 발생했습니다.

  • 500 UnExpectedErrorOccurred - 예기치 않은 오류가 발생했습니다.

  • 500 OperationTimeout - 작업 시간이 초과되었습니다.

  • 500 SqlVmGroupIsBusy - SQL 가상 머신 그룹이 사용 중입니다.

예제

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

정의

AgConfiguration

가용성 그룹 구성.

AgReplica

가용성 그룹 복제본 구성.

AvailabilityGroupListener

SQL Server 가용성 그룹 수신기입니다.

Commit

가용성 그룹의 복제본 커밋 모드입니다.

createdByType

리소스를 만든 ID의 형식입니다.

Failover

가용성 그룹의 복제본 장애 조치(failover) 모드입니다.

LoadBalancerConfiguration

가용성 그룹 수신기에 대한 부하 분산 장치 구성입니다.

PrivateIPAddress

가용성 그룹 수신기에 바인딩된 개인 IP 주소입니다.

ReadableSecondary

가용성 그룹의 복제본 읽기 가능한 보조 모드입니다.

Role

가용성 그룹의 복제본 역할입니다.

systemData

리소스 만들기 및 마지막 수정과 관련된 메타데이터입니다.

AgConfiguration

가용성 그룹 구성.

Name Type Description
replicas

복제본 구성.

AgReplica

가용성 그룹 복제본 구성.

Name Type Description
commit

가용성 그룹의 복제본 커밋 모드입니다.

failover

가용성 그룹의 복제본 장애 조치(failover) 모드입니다.

readableSecondary

가용성 그룹의 복제본 읽기 가능한 보조 모드입니다.

role

가용성 그룹의 복제본 역할입니다.

sqlVirtualMachineInstanceId
  • string

Sql VirtualMachine 인스턴스 ID입니다.

AvailabilityGroupListener

SQL Server 가용성 그룹 수신기입니다.

Name Type Description
id
  • string

리소스 ID입니다.

name
  • string

리소스 이름입니다.

properties.availabilityGroupConfiguration

가용성 그룹 구성.

properties.availabilityGroupName
  • string

가용성 그룹의 이름으로,

properties.createDefaultAvailabilityGroupIfNotExist
  • boolean

기본 가용성 그룹이 없는 경우 만듭니다.

properties.loadBalancerConfigurations

가용성 그룹 수신기에 대한 부하 분산 장치 구성 목록입니다.

properties.port
  • integer

수신기 포트입니다.

properties.provisioningState
  • string

비동기 작업 상태를 추적하기 위한 프로비전 상태입니다.

systemData

리소스 만들기 및 마지막 수정과 관련된 메타데이터입니다.

type
  • string

리소스 종류.

Commit

가용성 그룹의 복제본 커밋 모드입니다.

Name Type Description
ASYNCHRONOUS_COMMIT
  • string
SYNCHRONOUS_COMMIT
  • string

createdByType

리소스를 만든 ID의 형식입니다.

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

Failover

가용성 그룹의 복제본 장애 조치(failover) 모드입니다.

Name Type Description
AUTOMATIC
  • string
MANUAL
  • string

LoadBalancerConfiguration

가용성 그룹 수신기에 대한 부하 분산 장치 구성입니다.

Name Type Description
loadBalancerResourceId
  • string

부하 분산 장치의 리소스 ID입니다.

privateIpAddress

개인 IP 주소입니다.

probePort
  • integer

프로브 포트입니다.

publicIpAddressResourceId
  • string

공용 IP의 리소스 ID입니다.

sqlVirtualMachineInstances
  • string[]

가용성 그룹 수신기에 등록된 SQL 가상 머신 인스턴스 리소스 ID 목록입니다.

PrivateIPAddress

가용성 그룹 수신기에 바인딩된 개인 IP 주소입니다.

Name Type Description
ipAddress
  • string

가용성 그룹 수신기에 바인딩된 개인 IP 주소입니다.

subnetResourceId
  • string

개인 IP를 포함하는 데 사용되는 서브넷입니다.

ReadableSecondary

가용성 그룹의 복제본 읽기 가능한 보조 모드입니다.

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

Role

가용성 그룹의 복제본 역할입니다.

Name Type Description
PRIMARY
  • string
SECONDARY
  • string

systemData

리소스 만들기 및 마지막 수정과 관련된 메타데이터입니다.

Name Type Description
createdAt
  • string

리소스 만들기의 타임스탬프(UTC)입니다.

createdBy
  • string

리소스를 만든 ID입니다.

createdByType

리소스를 만든 ID의 형식입니다.

lastModifiedAt
  • string

리소스 마지막 수정의 타임스탬프(UTC)

lastModifiedBy
  • string

리소스를 마지막으로 수정한 ID입니다.

lastModifiedByType

리소스를 마지막으로 수정한 ID의 형식입니다.