尝试在 Terraform 文件中设置参数来备份 Azure SQL 服务器。
\n\n在AWS中我可以添加一个密钥,例如:
\n\n allocated_storage = 1000\n engine_version = \xe2\x80\x9c13.00.4451.0.v1\xe2\x80\x9d\n backup_window = \xe2\x80\x9c18:00-18:30\xe2\x80\x9d\n backup_retention_period = 14\nRun Code Online (Sandbox Code Playgroud)\n\n我找不到类似的密钥来备份 Azure SQL。以下是我在 Terraform Docs 和网络上找到的备份密钥:
\n\n resource "azurerm_sql_server" "some_erver" {\n administrator_login = "some_login"\n administrator_login_password = "some_password"\n location ="some_location"\n name = "some_server"\n resource_group_name = "some_resource"\n version = "some_version"\n\n tags = {\n environment = "t"\n stack-name = "name"\n stack-number = "number"\n app-number = "app-number"\n logicmonitor = "bool"\n }\n backup {\n frequency = "Daily"\n time = "04:00"\n }\n\n retention_daily {\n …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 Terraform helm 提供程序和 Azure DevOps 容器作业将 helm 图表从 ACR 部署到 AKS 集群,但从 ACR 获取 helm 图表时失败。请让我知道出了什么问题。
helm 提供者 tf 模块:
data "helm_repository" "cluster_rbac_helm_chart_repo" {
name = "mcp-rbac-cluster"
url = "https://mcpshareddcr.azurecr.io"
}
# Deploy Cluster RBAC helm chart onto the cluster
resource "helm_release" "cluster_rbac_helm_chart_release" {
name = "mcp-rbac-cluster"
repository = data.helm_repository.cluster_rbac_helm_chart_repo.metadata[0].name
chart = "mcp-rbac-cluster"
}
Run Code Online (Sandbox Code Playgroud)
提供者:
version = "=1.36.0"
tenant_id = var.ARM_TENANT_ID
subscription_id = var.ARM_SUBSCRIPTION_ID
client_id = var.ARM_CLIENT_ID
client_secret = var.ARM_CLIENT_SECRET
skip_provider_registration = true
}
data "azurerm_kubernetes_cluster" "aks_cluster" {
name …Run Code Online (Sandbox Code Playgroud) terraform azure-devops kubernetes-helm azure-container-registry terraform-provider-azure
我正在尝试使用Terraform和Terraform provider for Azure在 Azure 中创建以下资源。
运行 terraform 脚本时出现以下错误
错误:创建/更新 EventGrid 事件订阅“evtFileReceived”时出错(范围“/subscriptions/c17cf5ee-d3d7-4f64-b863-f2a4d6948594/resourceGroups/dominos-doodle”):eventgrid.EventSubscriptionsClient#CreateOrUpdate:发送请求失败:StatusCode=400 - - 原始错误:代码 =“InvalidRequest”消息 =“指定的主题属性与事件订阅范围中的预期主题不匹配。”
我该如何解决它?谷歌搜索没有给出任何结果。
生成错误的脚本如下。引发错误的步骤是terraform apply
显然,一种方法是使用 ARM 模板来实现此目的,但我正在尝试查看是否可以使用本机 Terraform 脚本创建它。我参考了Terraform Docs并创建了以下内容。
variable "inp_resource_group_name" { }
variable "inp_geo_location" { }
variable "inp_account_name" { }
variable "inp_az_subscription_id" { }
variable "inp_resource_group_id" { }
resource "azurerm_storage_account" "cave" {
name = var.inp_account_name
resource_group_name = var.inp_resource_group_name
location = var.inp_geo_location
account_tier = "Standard"
account_replication_type = "LRS"
account_kind = "StorageV2" …Run Code Online (Sandbox Code Playgroud) 我正在尝试将使用 Azure DevOps 的 terraform 部署生成的 databricks 工作区名称作为变量传递到另一个步骤,但不知道该怎么做。
所以我在我的output.tf中定义了输出
output "workspace_name" {
value = azurerm_databricks_workspace.databricks.name
}
Run Code Online (Sandbox Code Playgroud)
我可以看到输出:
通过 stackoverflow,有一个解决方案可以自动将所有输出作为变量:
1-配置输出变量:
2-配置powershell脚本来获取它们并填充它
3-现在怎么办?变量名称是什么?如何在 Databricks Bearer Token 解决方案中使用它?
azure azure-devops azure-pipelines terraform-provider-azure azure-databricks
执行时我突然意外地出现以下错误terraform plan。
Error: Error building account: Error getting authenticated object ID: Error parsing json result from the Azure CLI: Error retrieving running Azure CLI: Unable to encode the output with ANSI_X3.4-1968 encoding. U
nsupported characters are discarded.
on main.tf line 4, in provider "azurerm":
4: provider "azurerm" {
Run Code Online (Sandbox Code Playgroud)
记录附近的错误如下所示:
2020-04-14T10:22:53.257Z [DEBUG] plugin.terraform-provider-azurerm_v2.5.0_x5: Testing if Service Principal / Client Certificate is applicable for Authentication..
2020-04-14T10:22:53.257Z [DEBUG] plugin.terraform-provider-azurerm_v2.5.0_x5: Testing if Multi Tenant Service Principal / Client Secret is applicable for …Run Code Online (Sandbox Code Playgroud) 我正在尝试按照此示例创建一个azure file share直通通道,但是我想为此获取. 我如何得到它,对此的任何帮助将不胜感激。terraformAccess Keystorage account
我正在尝试使用 azuremrm 资源storage_share实例化 azure storage_share 映射。根据设计,我需要能够使用同一块实例化多个存储共享;每个共享可能有也可能没有“acl”部分。
我正在考虑使用 for_each 与动态块结合使用来解决这个问题,如相关的 SE 问题中所示:
主.tf
resource "azurerm_storage_share" "storage_share" {
for_each = var.storage_share_map
name = each.key
storage_account_name = azurerm_storage_account.sa.name
quota = each.value.quota
dynamic "acl" {
for_each = each.value.acl
content {
id = acl.value.id
access_policy {
permissions = acl.value.access_policy.permissions
start = acl.value.access_policy.start
expiry = acl.value.access_policy.expiry
}
}
}
Run Code Online (Sandbox Code Playgroud)
该变量将定义为:
variable "storage_share_map" {
type = map(object({
quota = number,
acl = object({
id = string,
access_policy = object({
expiry = string,
permissions = string,
start …Run Code Online (Sandbox Code Playgroud) 您能帮我使用 terraform 实现以下场景吗?我需要在字符串值中的每个特殊字符前加上 // 前缀。
示例:mysplchr="test O'riel*abc"这必须更改为"test O//'riel//*abc"
谢谢
terraform terraform-provider-azure terraform-provider-aws terraform-provider-gcp terraform0.12+
我有下面的代码,在 for_each 块中创建 vnet:
provider "azurerm" {
features {}
}
variable "vnets" {
type = map(object({
name = string
address_space = list(string)
}))
default = {
"vnet1" = {
"name" = "vnet1",
"address_space" = ["10.0.0.0/16"]
},
"vnet2" = {
"name" = "vnet2",
"address_space" = ["10.1.0.0/16"]
}
}
}
resource "azurerm_resource_group" "vnets" {
name = "vnets"
location = "WestEurope"
}
resource "azurerm_virtual_network" "virtual_network" {
for_each = var.vnets
name = each.value.name
location = "West Europe"
resource_group_name = azurerm_resource_group.vnets.name
address_space = each.value.address_space
} …Run Code Online (Sandbox Code Playgroud) 我创建了一个模块来部署以下azurerm_automation_schedule资源:
resource "azurerm_automation_schedule" "example" {
name = var.aaname
resource_group_name = azurerm_resource_group.example.name
automation_account_name = azurerm_automation_account.example.name
frequency = var.frequency
interval = var.interval
timezone = "Australia/Perth"
start_time = "2014-04-15T18:00:15+02:00"
description = "This is an example schedule"
monthly_occurrence {
day = monthly_occurrence.value.day
occurrence = monthly_occurrence.value.occurrence
}
}
Run Code Online (Sandbox Code Playgroud)
Monthly_occurrence块参数的存在必须是有条件的,因为仅当频率为“月”时才需要它,否则会引发错误。
有没有办法有条件地创建这个monthly_occurrence块参数?我正在使用 terraform 0.13.5 和 azurerm 2.38.0
我尝试过for_each但找不到解决方案。有什么办法可以做到吗?
azure conditional-statements terraform terraform-provider-azure