![](/img/trans.png)
[英]Is it safe to apply Terraform plan when it says the database instance must be replaced?
[英]How to set Azure SQL database instance with Min 0,5 vCores with Terraform?
正如接受的答案所回答的那樣,SQL 數據庫有兩個 terraform API,但請注意,它是azurerm_sql_database (已棄用)和現在標准的azurerm_mssql_database 。
與接受的答案不同,我建議要小心, azurerm_mssql_elasticpool完全是另外一回事,它允許您將資源分布在多個數據庫上。 從你的問題來看,我認為你不需要設置它,因為它只會增加你的成本。
使用官方模塊,我可以毫不費力地指定最小容量0.5
,為此有一個設置min_capacity
,這對我來說似乎很實用。 不過,它默認為0
,這不是一個可接受的值,所以一定要設置它。 例如以下配置:
resource "azurerm_mssql_server" "this" {
name = "demo-min-capacity"
resource_group_name = azurerm_resource_group.this.name
location = azurerm_resource_group.this.location
version = "12.0"
administrator_login = "..."
administrator_login_password = "..."
}
resource "azurerm_mssql_database" "this" {
name = "demo"
server_id = azurerm_mssql_server.this.id
collation = "SQL_Latin1_General_CP1_CI_AS"
max_size_gb = 20
sku_name = "GP_S_Gen5_1"
zone_redundant = false
auto_pause_delay_in_minutes = 60
min_capacity = 0.5
storage_account_type = "LRS"
}
資源azurerm_mssql_database
沒有設置最大 vcores 的屬性,它在sku_name
的最后部分指定。 因此,如果您想擁有更多的最大 vcores,請增加 sku。 將min_capacity
設置為您需要的最小 vcore 數量。 設置auto_pause_delay_in_minutes
以強制數據庫 go 在 x 分鍾不活動后進入暫停模式。 此變量應為 60 分鍾或更長,您也可以將其設置為 -1,這將使數據庫以最小容量運行。
如果您需要普通的 sql 數據庫,我不建議使用azurerm_mssql_elasticpool
,它有其他用途。 請參閱下文或閱讀文檔:
一些一般性建議/指南:
有兩個 terraform API, azurerm_mssql_database
和azurerm_mssql_elasticpool
。
azurerm_mssql_database
不支持基於 vCore 或 DTU 的數據庫配置。 只有azurerm_mssql_elasticpool
v3.0 API 允許基於 vCore 和 DTU 的配置。
因此,要使用 terraform 聲明 vCore,您需要在 Elastic Pool 中部署數據庫並使用以下示例代碼。
resource "azurerm_mssql_elasticpool" "example" {
name = "test-epool"
resource_group_name = azurerm_resource_group.example.name
location = azurerm_resource_group.example.location
server_name = azurerm_sql_server.example.name
license_type = "LicenseIncluded"
max_size_gb = 756
sku {
name = "BasicPool"
tier = "Basic"
family = "Gen4"
capacity = 4
}
per_database_settings {
min_capacity = 0.25
max_capacity = 4
}
}
此處參考azurerm_mssql_database官方文檔。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.