Share via


Microsoft.AzureArcData sqlManagedInstances 2024-01-01

Bicep resource definition

The sqlManagedInstances resource type can be deployed with operations that target:

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.AzureArcData/sqlManagedInstances resource, add the following Bicep to your template.

resource symbolicname 'Microsoft.AzureArcData/sqlManagedInstances@2024-01-01' = {
  extendedLocation: {
    name: 'string'
    type: 'string'
  }
  location: 'string'
  name: 'string'
  properties: {
    activeDirectoryInformation: {
      keytabInformation: {
        keytab: 'string'
      }
    }
    admin: 'string'
    basicLoginInformation: {
      password: 'string'
      username: 'string'
    }
    clusterId: 'string'
    dataControllerId: 'string'
    endTime: 'string'
    extensionId: 'string'
    k8sRaw: {
      spec: {
        replicas: int
        scheduling: {
          default: {
            resources: {
              limits: {
                {customized property}: 'string'
              }
              requests: {
                {customized property}: 'string'
              }
            }
          }
        }
        security: {
          activeDirectory: {
            accountName: 'string'
            connector: {
              name: 'string'
              namespace: 'string'
            }
            encryptionTypes: [
              'string'
            ]
            keytabSecret: 'string'
          }
          adminLoginSecret: 'string'
          serviceCertificateSecret: 'string'
          transparentDataEncryption: {
            mode: 'string'
            protectorSecret: 'string'
          }
        }
        settings: {
          network: {
            forceencryption: int
            tlsciphers: 'string'
            tlsprotocols: 'string'
          }
        }
      }
    }
    lastUploadedDate: 'string'
    licenseType: 'string'
    startTime: 'string'
  }
  sku: {
    capacity: int
    dev: bool
    family: 'string'
    name: 'vCore'
    size: 'string'
    tier: 'string'
  }
  tags: {
    {customized property}: 'string'
  }
}

Property Values

Microsoft.AzureArcData/sqlManagedInstances

Name Description Value
extendedLocation The extendedLocation of the resource. ExtendedLocation
location The geo-location where the resource lives string (required)
name The resource name string (required)
properties null SqlManagedInstanceProperties (required)
sku Resource sku. SqlManagedInstanceSku
tags Resource tags Dictionary of tag names and values. See Tags in templates

ActiveDirectoryInformation

Name Description Value
keytabInformation Keytab information that is used for the Sql Managed Instance when Active Directory authentication is used. KeytabInformation

BasicLoginInformation

Name Description Value
password Login password. string

Constraints:
Sensitive value. Pass in as a secure parameter.
username Login username. string

ExtendedLocation

Name Description Value
name The name of the extended location. string
type The type of the extended location. 'CustomLocation'

K8SActiveDirectory

Name Description Value
accountName Account name for AAD string
connector K8SActiveDirectoryConnector
encryptionTypes An array of encryption types string[]
keytabSecret Keytab secret used to authenticate with Active Directory. string

K8SActiveDirectoryConnector

Name Description Value
name Name of the connector string
namespace Name space of the connector string

K8SNetworkSettings

Name Description Value
forceencryption If 1, then SQL Server forces all connections to be encrypted. By default, this option is 0 int
tlsciphers Specifies which ciphers are allowed by SQL Server for TLS string
tlsprotocols A comma-separated list of which TLS protocols are allowed by SQL Server string

K8SResourceRequirements

Name Description Value
limits Limits for a kubernetes resource type (e.g 'cpu', 'memory'). The 'cpu' request must be less than or equal to 'cpu' limit. Default 'cpu' is 2, minimum is 1. Default 'memory' is '4Gi', minimum is '2Gi. If sku.tier is GeneralPurpose, maximum 'cpu' is 24 and maximum 'memory' is '128Gi'. K8SResourceRequirementsLimits
requests Requests for a kubernetes resource type (e.g 'cpu', 'memory'). The 'cpu' request must be less than or equal to 'cpu' limit. Default 'cpu' is 2, minimum is 1. Default 'memory' is '4Gi', minimum is '2Gi. If sku.tier is GeneralPurpose, maximum 'cpu' is 24 and maximum 'memory' is '128Gi'. K8SResourceRequirementsRequests

K8SResourceRequirementsLimits

Name Description Value

K8SResourceRequirementsRequests

Name Description Value

K8SScheduling

Name Description Value
default The kubernetes scheduling options. It describes restrictions used to help Kubernetes select appropriate nodes to host the database service K8SSchedulingOptions

K8SSchedulingOptions

Name Description Value
resources The kubernetes resource limits and requests used to restrict or reserve resource usage. K8SResourceRequirements

K8SSecurity

Name Description Value
activeDirectory The kubernetes active directory information. K8SActiveDirectory
adminLoginSecret Admin login secret key string
serviceCertificateSecret Service certificate secret used string
transparentDataEncryption Transparent data encryption information. K8StransparentDataEncryption

K8SSettings

Name Description Value
network The kubernetes network settings information. K8SNetworkSettings

K8StransparentDataEncryption

Name Description Value
mode Transparent data encryption mode. Can be Service Managed, Customer managed or disabled string
protectorSecret Protector secret for customer managed Transparent data encryption mode string

KeytabInformation

Name Description Value
keytab A base64-encoded keytab. string

Constraints:
Sensitive value. Pass in as a secure parameter.

SqlManagedInstanceK8SRaw

Name Description Value
spec The kubernetes spec information. SqlManagedInstanceK8SSpec

SqlManagedInstanceK8SSpec

Name Description Value
replicas This option specifies the number of SQL Managed Instance replicas that will be deployed in your Kubernetes cluster for high availability purposes. If sku.tier is BusinessCritical, allowed values are '2' or '3' with default of '3'. If sku.tier is GeneralPurpose, replicas must be '1'. int
scheduling The kubernetes scheduling information. K8SScheduling
security The kubernetes security information. K8SSecurity
settings The kubernetes settings information. K8SSettings

SqlManagedInstanceProperties

Name Description Value
activeDirectoryInformation Active Directory information related to this SQL Managed Instance. ActiveDirectoryInformation
admin The instance admin user string
basicLoginInformation Username and password for basic authentication. BasicLoginInformation
clusterId If a CustomLocation is provided, this contains the ARM id of the connected cluster the custom location belongs to. string
dataControllerId null string
endTime The instance end time string
extensionId If a CustomLocation is provided, this contains the ARM id of the extension the custom location belongs to. string
k8sRaw The raw kubernetes information SqlManagedInstanceK8SRaw
lastUploadedDate Last uploaded date from Kubernetes cluster. Defaults to current date time string
licenseType The license type to apply for this managed instance. 'BasePrice'
'DisasterRecovery'
'LicenseIncluded'
startTime The instance start time string

SqlManagedInstanceSku

Name Description Value
capacity The SKU capacity int
dev Whether dev/test is enabled. When the dev field is set to true, the resource is used for dev/test purpose. bool
family The SKU family string
name The name of the SKU. 'vCore' (required)
size The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code. string
tier The pricing tier for the instance. 'BusinessCritical'
'GeneralPurpose'

TrackedResourceTags

Name Description Value

ARM template resource definition

The sqlManagedInstances resource type can be deployed with operations that target:

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.AzureArcData/sqlManagedInstances resource, add the following JSON to your template.

{
  "type": "Microsoft.AzureArcData/sqlManagedInstances",
  "apiVersion": "2024-01-01",
  "name": "string",
  "extendedLocation": {
    "name": "string",
    "type": "string"
  },
  "location": "string",
  "properties": {
    "activeDirectoryInformation": {
      "keytabInformation": {
        "keytab": "string"
      }
    },
    "admin": "string",
    "basicLoginInformation": {
      "password": "string",
      "username": "string"
    },
    "clusterId": "string",
    "dataControllerId": "string",
    "endTime": "string",
    "extensionId": "string",
    "k8sRaw": {
      "spec": {
        "replicas": "int",
        "scheduling": {
          "default": {
            "resources": {
              "limits": {
                "{customized property}": "string"
              },
              "requests": {
                "{customized property}": "string"
              }
            }
          }
        },
        "security": {
          "activeDirectory": {
            "accountName": "string",
            "connector": {
              "name": "string",
              "namespace": "string"
            },
            "encryptionTypes": [ "string" ],
            "keytabSecret": "string"
          },
          "adminLoginSecret": "string",
          "serviceCertificateSecret": "string",
          "transparentDataEncryption": {
            "mode": "string",
            "protectorSecret": "string"
          }
        },
        "settings": {
          "network": {
            "forceencryption": "int",
            "tlsciphers": "string",
            "tlsprotocols": "string"
          }
        }
      }
    },
    "lastUploadedDate": "string",
    "licenseType": "string",
    "startTime": "string"
  },
  "sku": {
    "capacity": "int",
    "dev": "bool",
    "family": "string",
    "name": "vCore",
    "size": "string",
    "tier": "string"
  },
  "tags": {
    "{customized property}": "string"
  }
}

Property Values

Microsoft.AzureArcData/sqlManagedInstances

Name Description Value
apiVersion The api version '2024-01-01'
extendedLocation The extendedLocation of the resource. ExtendedLocation
location The geo-location where the resource lives string (required)
name The resource name string (required)
properties null SqlManagedInstanceProperties (required)
sku Resource sku. SqlManagedInstanceSku
tags Resource tags Dictionary of tag names and values. See Tags in templates
type The resource type 'Microsoft.AzureArcData/sqlManagedInstances'

ActiveDirectoryInformation

Name Description Value
keytabInformation Keytab information that is used for the Sql Managed Instance when Active Directory authentication is used. KeytabInformation

BasicLoginInformation

Name Description Value
password Login password. string

Constraints:
Sensitive value. Pass in as a secure parameter.
username Login username. string

ExtendedLocation

Name Description Value
name The name of the extended location. string
type The type of the extended location. 'CustomLocation'

K8SActiveDirectory

Name Description Value
accountName Account name for AAD string
connector K8SActiveDirectoryConnector
encryptionTypes An array of encryption types string[]
keytabSecret Keytab secret used to authenticate with Active Directory. string

K8SActiveDirectoryConnector

Name Description Value
name Name of the connector string
namespace Name space of the connector string

K8SNetworkSettings

Name Description Value
forceencryption If 1, then SQL Server forces all connections to be encrypted. By default, this option is 0 int
tlsciphers Specifies which ciphers are allowed by SQL Server for TLS string
tlsprotocols A comma-separated list of which TLS protocols are allowed by SQL Server string

K8SResourceRequirements

Name Description Value
limits Limits for a kubernetes resource type (e.g 'cpu', 'memory'). The 'cpu' request must be less than or equal to 'cpu' limit. Default 'cpu' is 2, minimum is 1. Default 'memory' is '4Gi', minimum is '2Gi. If sku.tier is GeneralPurpose, maximum 'cpu' is 24 and maximum 'memory' is '128Gi'. K8SResourceRequirementsLimits
requests Requests for a kubernetes resource type (e.g 'cpu', 'memory'). The 'cpu' request must be less than or equal to 'cpu' limit. Default 'cpu' is 2, minimum is 1. Default 'memory' is '4Gi', minimum is '2Gi. If sku.tier is GeneralPurpose, maximum 'cpu' is 24 and maximum 'memory' is '128Gi'. K8SResourceRequirementsRequests

K8SResourceRequirementsLimits

Name Description Value

K8SResourceRequirementsRequests

Name Description Value

K8SScheduling

Name Description Value
default The kubernetes scheduling options. It describes restrictions used to help Kubernetes select appropriate nodes to host the database service K8SSchedulingOptions

K8SSchedulingOptions

Name Description Value
resources The kubernetes resource limits and requests used to restrict or reserve resource usage. K8SResourceRequirements

K8SSecurity

Name Description Value
activeDirectory The kubernetes active directory information. K8SActiveDirectory
adminLoginSecret Admin login secret key string
serviceCertificateSecret Service certificate secret used string
transparentDataEncryption Transparent data encryption information. K8StransparentDataEncryption

K8SSettings

Name Description Value
network The kubernetes network settings information. K8SNetworkSettings

K8StransparentDataEncryption

Name Description Value
mode Transparent data encryption mode. Can be Service Managed, Customer managed or disabled string
protectorSecret Protector secret for customer managed Transparent data encryption mode string

KeytabInformation

Name Description Value
keytab A base64-encoded keytab. string

Constraints:
Sensitive value. Pass in as a secure parameter.

SqlManagedInstanceK8SRaw

Name Description Value
spec The kubernetes spec information. SqlManagedInstanceK8SSpec

SqlManagedInstanceK8SSpec

Name Description Value
replicas This option specifies the number of SQL Managed Instance replicas that will be deployed in your Kubernetes cluster for high availability purposes. If sku.tier is BusinessCritical, allowed values are '2' or '3' with default of '3'. If sku.tier is GeneralPurpose, replicas must be '1'. int
scheduling The kubernetes scheduling information. K8SScheduling
security The kubernetes security information. K8SSecurity
settings The kubernetes settings information. K8SSettings

SqlManagedInstanceProperties

Name Description Value
activeDirectoryInformation Active Directory information related to this SQL Managed Instance. ActiveDirectoryInformation
admin The instance admin user string
basicLoginInformation Username and password for basic authentication. BasicLoginInformation
clusterId If a CustomLocation is provided, this contains the ARM id of the connected cluster the custom location belongs to. string
dataControllerId null string
endTime The instance end time string
extensionId If a CustomLocation is provided, this contains the ARM id of the extension the custom location belongs to. string
k8sRaw The raw kubernetes information SqlManagedInstanceK8SRaw
lastUploadedDate Last uploaded date from Kubernetes cluster. Defaults to current date time string
licenseType The license type to apply for this managed instance. 'BasePrice'
'DisasterRecovery'
'LicenseIncluded'
startTime The instance start time string

SqlManagedInstanceSku

Name Description Value
capacity The SKU capacity int
dev Whether dev/test is enabled. When the dev field is set to true, the resource is used for dev/test purpose. bool
family The SKU family string
name The name of the SKU. 'vCore' (required)
size The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code. string
tier The pricing tier for the instance. 'BusinessCritical'
'GeneralPurpose'

TrackedResourceTags

Name Description Value

Usage Examples

Terraform (AzAPI provider) resource definition

The sqlManagedInstances resource type can be deployed with operations that target:

  • Resource groups

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.AzureArcData/sqlManagedInstances resource, add the following Terraform to your template.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.AzureArcData/sqlManagedInstances@2024-01-01"
  name = "string"
  parent_id = "string"
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    extendedLocation = {
      name = "string"
      type = "string"
    }
    properties = {
      activeDirectoryInformation = {
        keytabInformation = {
          keytab = "string"
        }
      }
      admin = "string"
      basicLoginInformation = {
        password = "string"
        username = "string"
      }
      clusterId = "string"
      dataControllerId = "string"
      endTime = "string"
      extensionId = "string"
      k8sRaw = {
        spec = {
          replicas = int
          scheduling = {
            default = {
              resources = {
                limits = {
                  {customized property} = "string"
                }
                requests = {
                  {customized property} = "string"
                }
              }
            }
          }
          security = {
            activeDirectory = {
              accountName = "string"
              connector = {
                name = "string"
                namespace = "string"
              }
              encryptionTypes = [
                "string"
              ]
              keytabSecret = "string"
            }
            adminLoginSecret = "string"
            serviceCertificateSecret = "string"
            transparentDataEncryption = {
              mode = "string"
              protectorSecret = "string"
            }
          }
          settings = {
            network = {
              forceencryption = int
              tlsciphers = "string"
              tlsprotocols = "string"
            }
          }
        }
      }
      lastUploadedDate = "string"
      licenseType = "string"
      startTime = "string"
    }
    sku = {
      capacity = int
      dev = bool
      family = "string"
      name = "vCore"
      size = "string"
      tier = "string"
    }
  }
}

Property Values

Microsoft.AzureArcData/sqlManagedInstances

Name Description Value
extendedLocation The extendedLocation of the resource. ExtendedLocation
location The geo-location where the resource lives string (required)
name The resource name string (required)
properties null SqlManagedInstanceProperties (required)
sku Resource sku. SqlManagedInstanceSku
tags Resource tags Dictionary of tag names and values.
type The resource type "Microsoft.AzureArcData/sqlManagedInstances@2024-01-01"

ActiveDirectoryInformation

Name Description Value
keytabInformation Keytab information that is used for the Sql Managed Instance when Active Directory authentication is used. KeytabInformation

BasicLoginInformation

Name Description Value
password Login password. string

Constraints:
Sensitive value. Pass in as a secure parameter.
username Login username. string

ExtendedLocation

Name Description Value
name The name of the extended location. string
type The type of the extended location. 'CustomLocation'

K8SActiveDirectory

Name Description Value
accountName Account name for AAD string
connector K8SActiveDirectoryConnector
encryptionTypes An array of encryption types string[]
keytabSecret Keytab secret used to authenticate with Active Directory. string

K8SActiveDirectoryConnector

Name Description Value
name Name of the connector string
namespace Name space of the connector string

K8SNetworkSettings

Name Description Value
forceencryption If 1, then SQL Server forces all connections to be encrypted. By default, this option is 0 int
tlsciphers Specifies which ciphers are allowed by SQL Server for TLS string
tlsprotocols A comma-separated list of which TLS protocols are allowed by SQL Server string

K8SResourceRequirements

Name Description Value
limits Limits for a kubernetes resource type (e.g 'cpu', 'memory'). The 'cpu' request must be less than or equal to 'cpu' limit. Default 'cpu' is 2, minimum is 1. Default 'memory' is '4Gi', minimum is '2Gi. If sku.tier is GeneralPurpose, maximum 'cpu' is 24 and maximum 'memory' is '128Gi'. K8SResourceRequirementsLimits
requests Requests for a kubernetes resource type (e.g 'cpu', 'memory'). The 'cpu' request must be less than or equal to 'cpu' limit. Default 'cpu' is 2, minimum is 1. Default 'memory' is '4Gi', minimum is '2Gi. If sku.tier is GeneralPurpose, maximum 'cpu' is 24 and maximum 'memory' is '128Gi'. K8SResourceRequirementsRequests

K8SResourceRequirementsLimits

Name Description Value

K8SResourceRequirementsRequests

Name Description Value

K8SScheduling

Name Description Value
default The kubernetes scheduling options. It describes restrictions used to help Kubernetes select appropriate nodes to host the database service K8SSchedulingOptions

K8SSchedulingOptions

Name Description Value
resources The kubernetes resource limits and requests used to restrict or reserve resource usage. K8SResourceRequirements

K8SSecurity

Name Description Value
activeDirectory The kubernetes active directory information. K8SActiveDirectory
adminLoginSecret Admin login secret key string
serviceCertificateSecret Service certificate secret used string
transparentDataEncryption Transparent data encryption information. K8StransparentDataEncryption

K8SSettings

Name Description Value
network The kubernetes network settings information. K8SNetworkSettings

K8StransparentDataEncryption

Name Description Value
mode Transparent data encryption mode. Can be Service Managed, Customer managed or disabled string
protectorSecret Protector secret for customer managed Transparent data encryption mode string

KeytabInformation

Name Description Value
keytab A base64-encoded keytab. string

Constraints:
Sensitive value. Pass in as a secure parameter.

SqlManagedInstanceK8SRaw

Name Description Value
spec The kubernetes spec information. SqlManagedInstanceK8SSpec

SqlManagedInstanceK8SSpec

Name Description Value
replicas This option specifies the number of SQL Managed Instance replicas that will be deployed in your Kubernetes cluster for high availability purposes. If sku.tier is BusinessCritical, allowed values are '2' or '3' with default of '3'. If sku.tier is GeneralPurpose, replicas must be '1'. int
scheduling The kubernetes scheduling information. K8SScheduling
security The kubernetes security information. K8SSecurity
settings The kubernetes settings information. K8SSettings

SqlManagedInstanceProperties

Name Description Value
activeDirectoryInformation Active Directory information related to this SQL Managed Instance. ActiveDirectoryInformation
admin The instance admin user string
basicLoginInformation Username and password for basic authentication. BasicLoginInformation
clusterId If a CustomLocation is provided, this contains the ARM id of the connected cluster the custom location belongs to. string
dataControllerId null string
endTime The instance end time string
extensionId If a CustomLocation is provided, this contains the ARM id of the extension the custom location belongs to. string
k8sRaw The raw kubernetes information SqlManagedInstanceK8SRaw
lastUploadedDate Last uploaded date from Kubernetes cluster. Defaults to current date time string
licenseType The license type to apply for this managed instance. 'BasePrice'
'DisasterRecovery'
'LicenseIncluded'
startTime The instance start time string

SqlManagedInstanceSku

Name Description Value
capacity The SKU capacity int
dev Whether dev/test is enabled. When the dev field is set to true, the resource is used for dev/test purpose. bool
family The SKU family string
name The name of the SKU. 'vCore' (required)
size The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code. string
tier The pricing tier for the instance. 'BusinessCritical'
'GeneralPurpose'

TrackedResourceTags

Name Description Value