Compartir a través de


Servidores Microsoft.Sql/grupos de conmutación por error 01/08/2023

Definición de recursos de Bicep

El tipo de recurso servers/failoverGroups se puede implementar con operaciones destinadas a:

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un recurso Microsoft.Sql/servers/failoverGroups, agregue el siguiente bicep a la plantilla.

resource symbolicname 'Microsoft.Sql/servers/failoverGroups@2023-08-01' = {
  parent: resourceSymbolicName
  name: 'string'
  properties: {
    databases: [
      'string'
    ]
    partnerServers: [
      {
        id: 'string'
      }
    ]
    readOnlyEndpoint: {
      failoverPolicy: 'string'
      targetServer: 'string'
    }
    readWriteEndpoint: {
      failoverPolicy: 'string'
      failoverWithDataLossGracePeriodMinutes: int
    }
    secondaryType: 'string'
  }
  tags: {
    {customized property}: 'string'
  }
}

Valores de propiedad

Microsoft.Sql/servers/failoverGroups

Name Description Value
name El nombre del recurso string (obligatorio)
parent En Bicep, puede especificar el recurso primario para un recurso secundario. Solo tiene que agregar esta propiedad cuando el recurso secundario se declara fuera del recurso primario.

Para obtener más información, consulte recurso secundario fuera del recurso primario.
Nombre simbólico del recurso de tipo: servidores
properties Propiedades de recursos. FailoverGroupProperties
tags Etiquetas de recursos Diccionario de nombres y valores de etiqueta. Consulte etiquetas de en plantillas

FailoverGroupProperties

Name Description Value
databases Lista de bases de datos del grupo de conmutación por error. string[]
partnerServers Lista de información del servidor asociado para el grupo de conmutación por error. PartnerInfo[] (obligatorio)
readOnlyEndpoint Punto de conexión de solo lectura de la instancia del grupo de conmutación por error. FailoverGroupReadOnlyEndpoint
readWriteEndpoint Punto de conexión de lectura y escritura de la instancia del grupo de conmutación por error. FailoverGroupReadWriteEndpoint (obligatorio)
secondaryType Tipo secundario de bases de datos en el servidor asociado. 'Geo'
'Standby'

FailoverGroupReadOnlyEndpoint

Name Description Value
failoverPolicy Directiva de conmutación por error del punto de conexión de solo lectura para el grupo de conmutación por error. 'Disabled'
'Enabled'
targetServer Servidor asociado de destino al que apunta el punto de conexión de solo lectura. string

FailoverGroupReadWriteEndpoint

Name Description Value
failoverPolicy Directiva de conmutación por error del punto de conexión de lectura y escritura para el grupo de conmutación por error. Si failoverPolicy es Automático, se requiere conmutación por errorWithDataLossGracePeriodMinutes. 'Automatic'
'Manual' (obligatorio)
failoverWithDataLossGracePeriodMinutes Período de gracia antes de la conmutación por error con pérdida de datos se intenta para el punto de conexión de lectura y escritura. Si failoverPolicy es Automático, se requiere conmutación por errorWithDataLossGracePeriodMinutes. int

FailoverGroupTags

Name Description Value

PartnerInfo

Name Description Value
id Identificador de recursos del servidor asociado. string (obligatorio)

Ejemplos de uso

Ejemplos de Bicep

Un ejemplo básico de implementación del grupo de conmutación por error de Microsoft Azure SQL.

param resourceName string = 'acctest0001'
param location string = 'westus'
param secondaryLocation string = 'eastus'
@secure()
@description('The administrator login password for the SQL server')
param administratorLoginPassword string

resource server 'Microsoft.Sql/servers@2023-08-01-preview' = {
  name: '${resourceName}-primary'
  location: location
  properties: {
    administratorLogin: 'mradministrator'
    administratorLoginPassword: null
    minimalTlsVersion: '1.2'
    publicNetworkAccess: 'Enabled'
    restrictOutboundNetworkAccess: 'Disabled'
    version: '12.0'
  }
}

resource server1 'Microsoft.Sql/servers@2023-08-01-preview' = {
  name: '${resourceName}-secondary'
  properties: {
    administratorLogin: 'mradministrator'
    administratorLoginPassword: null
    minimalTlsVersion: '1.2'
    publicNetworkAccess: 'Enabled'
    restrictOutboundNetworkAccess: 'Disabled'
    version: '12.0'
  }
}

resource database 'Microsoft.Sql/servers/databases@2023-08-01-preview' = {
  parent: server
  name: '${resourceName}-db'
  location: location
  properties: {
    autoPauseDelay: 0
    collation: 'SQL_Latin1_General_CP1_CI_AS'
    createMode: 'Default'
    elasticPoolId: ''
    encryptionProtectorAutoRotation: false
    highAvailabilityReplicaCount: 0
    isLedgerOn: false
    licenseType: ''
    maxSizeBytes: 214748364800
    minCapacity: 0
    readScale: 'Disabled'
    requestedBackupStorageRedundancy: 'Geo'
    sampleName: ''
    secondaryType: ''
    zoneRedundant: false
  }
  sku: {
    name: 'S1'
  }
}

resource failoverGroup 'Microsoft.Sql/servers/failoverGroups@2023-08-01-preview' = {
  parent: server
  name: '${resourceName}-fg'
  properties: {
    databases: [
      database.id
    ]
    partnerServers: [
      {
        id: server1.id
      }
    ]
    readOnlyEndpoint: {
      failoverPolicy: 'Disabled'
    }
    readWriteEndpoint: {
      failoverPolicy: 'Automatic'
      failoverWithDataLossGracePeriodMinutes: 60
    }
  }
}

Definición de recursos de plantilla de ARM

El tipo de recurso servers/failoverGroups se puede implementar con operaciones destinadas a:

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un recurso Microsoft.Sql/servers/failoverGroups, agregue el siguiente JSON a la plantilla.

{
  "type": "Microsoft.Sql/servers/failoverGroups",
  "apiVersion": "2023-08-01",
  "name": "string",
  "properties": {
    "databases": [ "string" ],
    "partnerServers": [
      {
        "id": "string"
      }
    ],
    "readOnlyEndpoint": {
      "failoverPolicy": "string",
      "targetServer": "string"
    },
    "readWriteEndpoint": {
      "failoverPolicy": "string",
      "failoverWithDataLossGracePeriodMinutes": "int"
    },
    "secondaryType": "string"
  },
  "tags": {
    "{customized property}": "string"
  }
}

Valores de propiedad

Microsoft.Sql/servers/failoverGroups

Name Description Value
apiVersion La versión de api '2023-08-01'
name El nombre del recurso string (obligatorio)
properties Propiedades de recursos. FailoverGroupProperties
tags Etiquetas de recursos Diccionario de nombres y valores de etiqueta. Consulte etiquetas de en plantillas
type El tipo de recurso 'Microsoft.Sql/servers/failoverGroups'

FailoverGroupProperties

Name Description Value
databases Lista de bases de datos del grupo de conmutación por error. string[]
partnerServers Lista de información del servidor asociado para el grupo de conmutación por error. PartnerInfo[] (obligatorio)
readOnlyEndpoint Punto de conexión de solo lectura de la instancia del grupo de conmutación por error. FailoverGroupReadOnlyEndpoint
readWriteEndpoint Punto de conexión de lectura y escritura de la instancia del grupo de conmutación por error. FailoverGroupReadWriteEndpoint (obligatorio)
secondaryType Tipo secundario de bases de datos en el servidor asociado. 'Geo'
'Standby'

FailoverGroupReadOnlyEndpoint

Name Description Value
failoverPolicy Directiva de conmutación por error del punto de conexión de solo lectura para el grupo de conmutación por error. 'Disabled'
'Enabled'
targetServer Servidor asociado de destino al que apunta el punto de conexión de solo lectura. string

FailoverGroupReadWriteEndpoint

Name Description Value
failoverPolicy Directiva de conmutación por error del punto de conexión de lectura y escritura para el grupo de conmutación por error. Si failoverPolicy es Automático, se requiere conmutación por errorWithDataLossGracePeriodMinutes. 'Automatic'
'Manual' (obligatorio)
failoverWithDataLossGracePeriodMinutes Período de gracia antes de la conmutación por error con pérdida de datos se intenta para el punto de conexión de lectura y escritura. Si failoverPolicy es Automático, se requiere conmutación por errorWithDataLossGracePeriodMinutes. int

FailoverGroupTags

Name Description Value

PartnerInfo

Name Description Value
id Identificador de recursos del servidor asociado. string (obligatorio)

Ejemplos de uso

Definición de recursos de Terraform (proveedor AzAPI)

El tipo de recurso servers/failoverGroups se puede implementar con operaciones destinadas a:

  • Grupos de recursos

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un recurso Microsoft.Sql/servers/failoverGroups, agregue el siguiente terraform a la plantilla.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Sql/servers/failoverGroups@2023-08-01"
  name = "string"
  parent_id = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    properties = {
      databases = [
        "string"
      ]
      partnerServers = [
        {
          id = "string"
        }
      ]
      readOnlyEndpoint = {
        failoverPolicy = "string"
        targetServer = "string"
      }
      readWriteEndpoint = {
        failoverPolicy = "string"
        failoverWithDataLossGracePeriodMinutes = int
      }
      secondaryType = "string"
    }
  }
}

Valores de propiedad

Microsoft.Sql/servers/failoverGroups

Name Description Value
name El nombre del recurso string (obligatorio)
parent_id Identificador del recurso que es el elemento primario de este recurso. Identificador del recurso de tipo: servidores
properties Propiedades de recursos. FailoverGroupProperties
tags Etiquetas de recursos Diccionario de nombres y valores de etiqueta.
type El tipo de recurso "Microsoft.Sql/servers/failoverGroups@2023-08-01"

FailoverGroupProperties

Name Description Value
databases Lista de bases de datos del grupo de conmutación por error. string[]
partnerServers Lista de información del servidor asociado para el grupo de conmutación por error. PartnerInfo[] (obligatorio)
readOnlyEndpoint Punto de conexión de solo lectura de la instancia del grupo de conmutación por error. FailoverGroupReadOnlyEndpoint
readWriteEndpoint Punto de conexión de lectura y escritura de la instancia del grupo de conmutación por error. FailoverGroupReadWriteEndpoint (obligatorio)
secondaryType Tipo secundario de bases de datos en el servidor asociado. 'Geo'
'Standby'

FailoverGroupReadOnlyEndpoint

Name Description Value
failoverPolicy Directiva de conmutación por error del punto de conexión de solo lectura para el grupo de conmutación por error. 'Disabled'
'Enabled'
targetServer Servidor asociado de destino al que apunta el punto de conexión de solo lectura. string

FailoverGroupReadWriteEndpoint

Name Description Value
failoverPolicy Directiva de conmutación por error del punto de conexión de lectura y escritura para el grupo de conmutación por error. Si failoverPolicy es Automático, se requiere conmutación por errorWithDataLossGracePeriodMinutes. 'Automatic'
'Manual' (obligatorio)
failoverWithDataLossGracePeriodMinutes Período de gracia antes de la conmutación por error con pérdida de datos se intenta para el punto de conexión de lectura y escritura. Si failoverPolicy es Automático, se requiere conmutación por errorWithDataLossGracePeriodMinutes. int

FailoverGroupTags

Name Description Value

PartnerInfo

Name Description Value
id Identificador de recursos del servidor asociado. string (obligatorio)

Ejemplos de uso

Ejemplos de Terraform

Un ejemplo básico de implementación del grupo de conmutación por error de Microsoft Azure SQL.

terraform {
  required_providers {
    azapi = {
      source = "Azure/azapi"
    }
  }
}

provider "azapi" {
  skip_provider_registration = false
}

data "azapi_client_config" "current" {}

variable "resource_name" {
  type    = string
  default = "acctest0001"
}

variable "location" {
  type    = string
  default = "westus"
}

variable "secondary_location" {
  type    = string
  default = "eastus"
}

variable "administrator_login_password" {
  type        = string
  sensitive   = true
  description = "The administrator login password for the SQL server"
}

resource "azapi_resource" "resourceGroup" {
  type     = "Microsoft.Resources/resourceGroups@2020-06-01"
  name     = var.resource_name
  location = var.location
}

resource "azapi_resource" "server" {
  type      = "Microsoft.Sql/servers@2023-08-01-preview"
  parent_id = azapi_resource.resourceGroup.id
  name      = "${var.resource_name}-primary"
  location  = var.location
  body = {
    properties = {
      administratorLogin            = "mradministrator"
      administratorLoginPassword    = var.administrator_login_password
      minimalTlsVersion             = "1.2"
      publicNetworkAccess           = "Enabled"
      restrictOutboundNetworkAccess = "Disabled"
      version                       = "12.0"
    }
  }
}

resource "azapi_resource" "server_1" {
  type      = "Microsoft.Sql/servers@2023-08-01-preview"
  parent_id = azapi_resource.resourceGroup.id
  name      = "${var.resource_name}-secondary"
  location  = var.secondary_location
  body = {
    properties = {
      administratorLogin            = "mradministrator"
      administratorLoginPassword    = var.administrator_login_password
      minimalTlsVersion             = "1.2"
      publicNetworkAccess           = "Enabled"
      restrictOutboundNetworkAccess = "Disabled"
      version                       = "12.0"
    }
  }
}

resource "azapi_resource" "database" {
  type      = "Microsoft.Sql/servers/databases@2023-08-01-preview"
  parent_id = azapi_resource.server.id
  name      = "${var.resource_name}-db"
  location  = var.location
  body = {
    properties = {
      autoPauseDelay                   = 0
      collation                        = "SQL_Latin1_General_CP1_CI_AS"
      createMode                       = "Default"
      elasticPoolId                    = ""
      encryptionProtectorAutoRotation  = false
      highAvailabilityReplicaCount     = 0
      isLedgerOn                       = false
      licenseType                      = ""
      maxSizeBytes                     = 214748364800
      minCapacity                      = 0
      readScale                        = "Disabled"
      requestedBackupStorageRedundancy = "Geo"
      sampleName                       = ""
      secondaryType                    = ""
      zoneRedundant                    = false
    }
    sku = {
      name = "S1"
    }
  }
}

resource "azapi_resource" "failoverGroup" {
  type      = "Microsoft.Sql/servers/failoverGroups@2023-08-01-preview"
  parent_id = azapi_resource.server.id
  name      = "${var.resource_name}-fg"
  body = {
    properties = {
      databases = [azapi_resource.database.id]
      partnerServers = [{
        id = azapi_resource.server_1.id
      }]
      readOnlyEndpoint = {
        failoverPolicy = "Disabled"
      }
      readWriteEndpoint = {
        failoverPolicy                         = "Automatic"
        failoverWithDataLossGracePeriodMinutes = 60
      }
    }
  }
}