Availability Group Listeners - Create Or Update
Creates or updates an availability group listener.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/{sqlVirtualMachineGroupName}/availabilityGroupListeners/{availabilityGroupListenerName}?api-version=2023-10-01
URI Parameters
Name | In | Required | Type | Description |
---|---|---|---|---|
availability
|
path | True |
string |
Name of the availability group listener. |
resource
|
path | True |
string |
Name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal. |
sql
|
path | True |
string |
Name of the SQL virtual machine group. |
subscription
|
path | True |
string |
Subscription ID that identifies an Azure subscription. |
api-version
|
query | True |
string |
API version to use for the request. |
Request Body
Name | Type | Description |
---|---|---|
properties.availabilityGroupConfiguration |
Availability Group configuration. |
|
properties.availabilityGroupName |
string |
Name of the availability group. |
properties.createDefaultAvailabilityGroupIfNotExist |
boolean |
Create a default availability group if it does not exist. |
properties.loadBalancerConfigurations |
List of load balancer configurations for an availability group listener. |
|
properties.multiSubnetIpConfigurations |
List of multi subnet IP configurations for an AG listener. |
|
properties.port |
integer |
Listener port. |
Responses
Name | Type | Description |
---|---|---|
200 OK |
Successfully updated the availability group listener. |
|
201 Created |
Successfully created the availability group listener. |
|
Other Status Codes |
*** Error Responses: ***
|
Examples
Creates or updates an availability group listener using load balancer. This is used for VMs present in single subnet.
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=2023-10-01
{
"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"
}
Creates or updates an availability group listener. This is used for VMs present in multi subnet
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=2023-10-01
{
"properties": {
"availabilityGroupName": "ag-test",
"multiSubnetIpConfigurations": [
{
"privateIpAddress": {
"ipAddress": "10.0.0.112",
"subnetResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default"
},
"sqlVirtualMachineInstance": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm2"
},
{
"privateIpAddress": {
"ipAddress": "10.0.1.112",
"subnetResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/alternate"
},
"sqlVirtualMachineInstance": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm1"
}
],
"port": 1433
}
}
Sample Response
{
"properties": {
"provisioningState": "Updating",
"multiSubnetIpConfigurations": [
{
"privateIpAddress": {
"ipAddress": "10.0.0.112",
"subnetResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default"
},
"sqlVirtualMachineInstance": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm2"
},
{
"privateIpAddress": {
"ipAddress": "10.0.1.112",
"subnetResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/alternate"
},
"sqlVirtualMachineInstance": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm1"
}
],
"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",
"multiSubnetIpConfigurations": [
{
"privateIpAddress": {
"ipAddress": "10.0.0.112",
"subnetResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default"
},
"sqlVirtualMachineInstance": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm2"
},
{
"privateIpAddress": {
"ipAddress": "10.0.1.112",
"subnetResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/alternate"
},
"sqlVirtualMachineInstance": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm1"
}
],
"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"
}
Definitions
Name | Description |
---|---|
Ag |
Availability group configuration. |
Ag |
Availability group replica configuration. |
Availability |
A SQL Server availability group listener. |
Commit |
Replica commit mode in availability group. |
created |
The type of identity that created the resource. |
Error |
The resource management error additional info. |
Error |
The error detail. |
Error |
Error response |
Failover |
Replica failover mode in availability group. |
Load |
A load balancer configuration for an availability group listener. |
Multi |
Multi subnet ip configuration for an availability group listener. |
Private |
A private IP address bound to the availability group listener. |
Readable |
Replica readable secondary mode in availability group. |
Role |
Replica Role in availability group. |
system |
Metadata pertaining to creation and last modification of the resource. |
AgConfiguration
Availability group configuration.
Name | Type | Description |
---|---|---|
replicas |
Replica configurations. |
AgReplica
Availability group replica configuration.
Name | Type | Description |
---|---|---|
commit |
Replica commit mode in availability group. |
|
failover |
Replica failover mode in availability group. |
|
readableSecondary |
Replica readable secondary mode in availability group. |
|
role |
Replica Role in availability group. |
|
sqlVirtualMachineInstanceId |
string |
Sql VirtualMachine Instance Id. |
AvailabilityGroupListener
A SQL Server availability group listener.
Name | Type | Description |
---|---|---|
id |
string |
Resource ID. |
name |
string |
Resource name. |
properties.availabilityGroupConfiguration |
Availability Group configuration. |
|
properties.availabilityGroupName |
string |
Name of the availability group. |
properties.createDefaultAvailabilityGroupIfNotExist |
boolean |
Create a default availability group if it does not exist. |
properties.loadBalancerConfigurations |
List of load balancer configurations for an availability group listener. |
|
properties.multiSubnetIpConfigurations |
List of multi subnet IP configurations for an AG listener. |
|
properties.port |
integer |
Listener port. |
properties.provisioningState |
string |
Provisioning state to track the async operation status. |
systemData |
Metadata pertaining to creation and last modification of the resource. |
|
type |
string |
Resource type. |
Commit
Replica commit mode in availability group.
Name | Type | Description |
---|---|---|
Asynchronous_Commit |
string |
|
Synchronous_Commit |
string |
createdByType
The type of identity that created the resource.
Name | Type | Description |
---|---|---|
Application |
string |
|
Key |
string |
|
ManagedIdentity |
string |
|
User |
string |
ErrorAdditionalInfo
The resource management error additional info.
Name | Type | Description |
---|---|---|
info |
object |
The additional info. |
type |
string |
The additional info type. |
ErrorDetail
The error detail.
Name | Type | Description |
---|---|---|
additionalInfo |
The error additional info. |
|
code |
string |
The error code. |
details |
The error details. |
|
message |
string |
The error message. |
target |
string |
The error target. |
ErrorResponse
Error response
Name | Type | Description |
---|---|---|
error |
The error object. |
Failover
Replica failover mode in availability group.
Name | Type | Description |
---|---|---|
Automatic |
string |
|
Manual |
string |
LoadBalancerConfiguration
A load balancer configuration for an availability group listener.
Name | Type | Description |
---|---|---|
loadBalancerResourceId |
string |
Resource id of the load balancer. |
privateIpAddress |
Private IP address. |
|
probePort |
integer |
Probe port. |
publicIpAddressResourceId |
string |
Resource id of the public IP. |
sqlVirtualMachineInstances |
string[] |
List of the SQL virtual machine instance resource id's that are enrolled into the availability group listener. |
MultiSubnetIpConfiguration
Multi subnet ip configuration for an availability group listener.
Name | Type | Description |
---|---|---|
privateIpAddress |
Private IP address. |
|
sqlVirtualMachineInstance |
string |
SQL virtual machine instance resource id that are enrolled into the availability group listener. |
PrivateIPAddress
A private IP address bound to the availability group listener.
Name | Type | Description |
---|---|---|
ipAddress |
string |
Private IP address bound to the availability group listener. |
subnetResourceId |
string |
Subnet used to include private IP. |
ReadableSecondary
Replica readable secondary mode in availability group.
Name | Type | Description |
---|---|---|
All |
string |
|
No |
string |
|
Read_Only |
string |
Role
Replica Role in availability group.
Name | Type | Description |
---|---|---|
Primary |
string |
|
Secondary |
string |
systemData
Metadata pertaining to creation and last modification of the resource.
Name | Type | Description |
---|---|---|
createdAt |
string |
The timestamp of resource creation (UTC). |
createdBy |
string |
The identity that created the resource. |
createdByType |
The type of identity that created the resource. |
|
lastModifiedAt |
string |
The timestamp of resource last modification (UTC) |
lastModifiedBy |
string |
The identity that last modified the resource. |
lastModifiedByType |
The type of identity that last modified the resource. |