问题标签 [azure-rm]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
227 浏览

azure - 无法使用 terraform 将带有计数值的 NIC 附加 Azure 网络安全组

我已经编写了下面的代码来使用 terraform 将安全组与网络接口连接起来。

当我执行 terraform 计划时,我遇到了错误。

在此处输入图像描述

如何为多个网卡附加网络安全组?

0 投票
1 回答
253 浏览

terraform - Terraform Azure 流分析作业 - 开始/停止

我在 terraform 中定义了一个流分析作业,但是如果对作业进行了更改并且它当前正在运行,则会terraform apply失败。有没有办法检测 terraform 中作业的更改,如果有,请停止作业,然后在完成后重新启动作业apply

我可以运行一个 powershell 脚本来停止和启动它apply,但如果可能的话,我想避免每次运行时停止/启动作业。我正在看这篇文章,但它看起来不适用于这种情况。

0 投票
1 回答
1106 浏览

list - Terraform:如何使用列表或地图在 azurerm 中配置多个存储容器?

我正在尝试创建多个存储容器来存储 Terraform 中多个组件组的远程状态。

我的环境中有基础设施、前端、后端和堡垒 vm,每个都有自己的 .tf 模板,因此我可以将它们单独部署为基础设施的功能单元。

稍后我可能需要添加更多类型,这表明我需要将组件/环境列表存储为变量,然后将其分块以创建后端存储容器。

这里的主要假设是我可以使用相同的存储帐户,但我需要为每个远程状态提供单独的容器,否则它们会混合在一起。

  1. 那个评价是真的吗?
  2. 如何使用列表或其他可以最大限度地减少代码重复的设备在语法上完成它?

诚然,我是 Terraform 初学者,所以我希望我没有掌握 HCL 的一些基本原理。这是我的代码的摘录:

我尝试了各种符号,包括“计数”(在上面的示例中注释掉)和引用 azurerm_storage_container.ct.name 中的元素等,但没有得到任何牵引力。我在这里想念什么?

0 投票
0 回答
704 浏览

powershell - 为什么我会收到 VMExtensionProvisioningError。无法下载所有指定文件?

我正在尝试通过运行 AzureRM 的 customscriptextension 来配置 vm 并通过 powershell 脚本将其提升到域控制器,但它给出了意外的网络关闭错误。我正在从 github 存储库导入 powershell 脚本以在部署后运行这里是代码:

这是我收到的错误:

Code="VMExtensionProvisioningError" Message="VM 在处理扩展 'hostname' 时报告失败。错误消息:\"无法下载所有指定文件。退出。错误消息:请求已中止:连接意外关闭。\"\r\n\r\n有关疑难解答的更多信息,请访问https://aka.ms/VMExtensionCSEWindowsTroubleshoot "

为什么我会收到 VMExtensionProvisioningError。无法下载所有指定文件?

0 投票
2 回答
1879 浏览

azure - Terraform azurerm schedule start_time 总是在新部署时重置

我试图让资源在每月发生azurerm_automation_schedule的特定时间进行部署。(ex: 18:00)

我正在使用以下代码:

"${local.update_date}T${local.update_time}:00+02:00"当前时间增加 2 小时并将日期提前 1。这是确保计划在未来开始所必需的。

这很好用,除了下次我回来运行部署时,它会检测到由于日期更改而导致的新更改,即使没有发生真正的更改。start_time 将始终向前打勾。

我似乎找不到任何可以提供帮助的地形逻辑。有没有办法在变量中设置静态开始时间,并且只有在它改变时才更新?(不是日期)。

伪代码将是:

更新

我的最终工作代码(奖励:使用 Windows 更新调度程序,这很难开始工作!)

0 投票
1 回答
154 浏览

azure - 如何更新 azurerm_network_interface 的 ip_configuration 以添加 azurerm_public_ip?

我在带有 terraformazurerm_hdinsight_kafka_cluster的 VNet ( azurerm_virtual_network) 上使用 kafka 创建了一个 HDInsight 群集。因此,我获得了由 Azure 管理服务隐式创建的 Azure 网络接口的实例。

我还创建了azurerm_public_ip打算与如上所述隐式创建的网络接口相关联的资源。

这意味着,我需要通过属性使用IP 地址更新隐式创建azurerm_network_interface的资源。azurerm_public_ippublic_ip_address_id

我在网上搜索了有关更新(隐式创建ip_configuration)的嵌套属性的任何文档,但不幸的是,没有找到任何文档。azurerm_network_interface

有人可以帮我吗?我在 azurerm 中也没有找到任何其他资源可以帮助我实现这一目标。

如果有人可以将我指向一个 azurerm 资源,我将不胜感激,我可以通过它或任何其他可能的方式来关联它。

提前致谢 :)

如何更新 azurerm_network_interface 的 ip_configuration 以添加 azurerm_public_ip?

0 投票
1 回答
482 浏览

terraform - 为主题创建事件网格订阅时获取“ID 包含的段数超出了要求”

创建了用于部署事件网格订阅的代码(订阅现有主题,使用现有存储帐户和资源组)。

订阅将消息推送到存储队列。很简单的案例。Terraform 计划第一次正确执行。当我运行应用时,它出错了:

现在我看到应用后效果很好(订阅在那里并将消息保存到存储队列)。但是应用它后无法运行 terraform 计划,因为上述错误。

有谁知道如何解决它?Terraform 0.12.25 + provider.azurerm v.2.10.0

0 投票
1 回答
434 浏览

azure - Get-AzSubscription 不工作,但 Get-AzureRMSubscription 工作

当我尝试执行一些 Powershell 命令(如 Get-AzSubscription)时,它不起作用,但当我使用 Get-AzureRMSubscription 时会得到输出。其他命令也是如此,例如 Get-AzVM、New-AzSnapshotConfig、New-AzSnapshot。

我的机器上安装的 Azure RM 版本是:-

为什么会这样?当我在 Azure 门户 cloudshell 上尝试时,它与 Get-AzSubscription、Get-AzVM、New-AzSnapshotConfig、New-AzSnapshot 等配合使用得很好。

0 投票
0 回答
303 浏览

windows - terraform azurerm 下载并运行 powershell 脚本

我正在寻找下载此 powershell 脚本并将其应用于我的 windows VM 的最佳方法:https ://raw.githubusercontent.com/ansible/ansible/devel/examples/scripts/ConfigureRemotingForAnsible.ps1

最好的方法是什么?扩大 ?本地执行?

谢谢。

编辑:这里有这个主题解释如何通过客户脚本执行此操作:在 Terraform 中定义 Azure VM CustomScriptExtension(期望状态'元素'..遇到名称为'',命名空间''的'文本'。\“。”) . 我的问题是根据给定的用例知道什么是最好的。

0 投票
1 回答
350 浏览

terraform - 在 Terraform 中为 azurerm_app_service_plan 创建 azurerm_sql_firewall_rule

我想将托管 Sql Server 上的应用服务计划的 IP 地址列入白名单。
问题是,资源azurerm_app_service_plan在属性possible_outbound_ip_addresses上将其 ip 地址公开为逗号分隔值。

我需要为这些 ips 中的每一个创建一个azurerm_sql_firewall_rule
如果我尝试以下方法,Terraform 会出现异常:

然后我得到错误:

“for_each”值取决于在应用之前无法确定的资源属性,因此 Terraform 无法预测将创建多少个实例。要解决此问题,请使用 -target 参数首先仅应用 for_each 所依赖的资源。

我不确定如何解决这个问题。
目前,我已将 ip 地址添加为变量,并手动设置变量的值。

创建这些防火墙规则的正确方法是什么?