Skip to content

databases/mssql_managed_instance_v1

Overview

This page documents the Terraform module implementation, key configuration surfaces, and how it integrates with CAF.

Dependency diagram (Mermaid)

graph TD azurerm_key_vault_secret.sqlmi_admin_password["azurerm_key_vault_secret.sqlmi_admin_password"] azurerm_mssql_managed_instance.mssqlmi["azurerm_mssql_managed_instance.mssqlmi"] data.azurecaf_name.mssqlmi["data.azurecaf_name.mssqlmi"] data.azurerm_resource_group.mi["data.azurerm_resource_group.mi"] module.private_endpoint["module.private_endpoint"] module.var_identity["module.var_identity"] module.var_login["module.var_login"] module.var_settings["module.var_settings"] random_password.sqlmi_admin["random_password.sqlmi_admin"] azurerm_key_vault_secret.sqlmi_admin_password --> azurerm_mssql_managed_instance.mssqlmi azurerm_key_vault_secret.sqlmi_admin_password --> random_password.sqlmi_admin azurerm_mssql_managed_instance.mssqlmi --> data.azurecaf_name.mssqlmi azurerm_mssql_managed_instance.mssqlmi --> module.var_identity azurerm_mssql_managed_instance.mssqlmi --> module.var_settings azurerm_mssql_managed_instance.mssqlmi --> random_password.sqlmi_admin module.private_endpoint --> azurerm_mssql_managed_instance.mssqlmi module.var_identity --> module.var_settings module.var_login --> random_password.sqlmi_admin

Module Reference

Category: databases
Path: modules/databases/mssql_managed_instance_v1
Azure Resources: azurerm_key_vault_secret, azurerm_mssql_managed_instance, random_password

Inputs

Name Description Type Required Default Validation
"global_settings" "Global settings object (see module README.md)" any yes - -
"client_config" "Client configuration object (see module README.md)." any yes - -
"inherit_tags" "Base tags for the resource to be inherited from the resource group." bool yes - -
"subnet_id" any yes - -
"resource_group_name" "(Required) The name of the resource group where to create the resource." string yes - -
"resource_group" "(Required) The resource group where to create the resource." any no {} -
"location" "(Required) Specifies the supported Azure location where to create the resource. Changing this forces a new resource ... string yes - -
"managed_identities" any yes - -
"group_id" "The ID of the Azure Active Directory Group that should be granted access to the Managed Instance Administrators." string no - -
"keyvault" any yes - -
"resource_groups" any yes - -
"vnets" any yes - -
"private_endpoints" any yes - -
"base_tags" "Base tags for the resource to be inherited from the resource group." map(any) yes - -
"private_dns" any no {} -
"primary_server_id" any yes - -
"settings" any yes - format("The following attributes are not supported. Adjust your configuration file: %s", join(", ", setsubtract(keys(var.settings), ["administrator_login_password", "administrator_login", "administrators", "authentication_mode", "backup_storage_redundancy", "collation", "identity", "instance_pool_id", "keyvault", "license_type", "maintenance_configuration_name", "mi_create_mode", "minimal_tls_version", "name", "networking", "primary_server", "proxy_override", "public_data_endpoint_enabled", "region", "resource_group", "restore_point_in_time", "service_principal", "sku", "storage_size_in_gb", "tags", "timezone_id", "transparent_data_encryption", "vcores", "version", "zone_redundant"])))

Outputs

Name Description Sensitive Value
"id" "SQL Managed instance Id" - azurerm_mssql_managed_instance.mssqlmi.id
"fqdn" "The fully qualified domain name of the Azure Managed SQL Instance" - azurerm_mssql_managed_instance.mssqlmi.fqdn
"name" "SQL MI Name" - data.azurecaf_name.mssqlmi.result
"location" - local.location
"principal_id" "SQL Managed Instance Principal Id" - can(var.settings.identity) ? azurerm_mssql_managed_instance.mssqlmi.identity.0.principal_id : null
"identity" "SQL Managed Instance identities" - can(var.settings.identity) ? azurerm_mssql_managed_instance.mssqlmi.identity : null
"dns_zone_id" "this is the zone id extracted from sql managed instance server fqdn and can be used while creating private dns zone ... - local.dns_zone_id
"resource_group_id" "Resource group id of the sql mi server." - local.resource_group_id

Sources

  • modules/databases/mssql_managed_instance_v1/data.tf
  • modules/databases/mssql_managed_instance_v1/locals.tf
  • modules/databases/mssql_managed_instance_v1/main.tf
  • modules/databases/mssql_managed_instance_v1/managed_identities.tf
  • modules/databases/mssql_managed_instance_v1/managed_instance.tf
  • modules/databases/mssql_managed_instance_v1/outputs.tf
  • modules/databases/mssql_managed_instance_v1/private_endpoints.tf
  • modules/databases/mssql_managed_instance_v1/variables.tf