gpt4 book ai didi

Terraform DSC 配置与节点配置中的 Azure 自动化

转载 作者:行者123 更新时间:2023-12-03 03:58:41 26 4
gpt4 key购买 nike

背景

我正在尝试使用 Azure 自动化将一些 Azure Windows VM 配置为 DNS 服务器。

我想使用 Terraform 来配置自动化帐户、DSC 配置和 DSC 节点配置,但我被困在 DSC 节点配置上。

我有以下内容,它可以工作,但前提是我通过单击门户手动编译它:

resource "azurerm_automation_dsc_configuration" "configuration" {
name = "DNSConfig"
resource_group_name = "my_rg"
location = "uksouth"
automation_account_name = "my_aa_account"
content_embedded = <<-CONTENT
Configuration DNSConfig
{
Node 'localhost'
{
WindowsFeature DNS
{
Ensure = 'Present'
Name = 'DNS'
}

# plus some more stuff

}
}

CONTENT
}

我想自动化编译,所以我尝试了:

resource "azurerm_automation_dsc_nodeconfiguration" "node" {
automation_account_name = "my_aa_account"
resource_group_name = "my_rg"
name = "DNSConfig.localhost"
content_embedded = "# what goes here?"
}

问题

我对此没有很强的背景,所以不确定我是否正确理解了它。我不知道 nodeconfigurationcontent_embedded 应该包含什么。

我是否应该从 dsc_configuration 中删除 Node block 并将其移至 dsc_nodeconfiguration 中?或者也许是节点 block 的内容(即排除Node 'localhost' {}包装器)?

(我不太确定“localhost”是否是节点所代表的一个好名字)。

例如,类似:

resource "azurerm_automation_dsc_nodeconfiguration" "node" {
content_embedded = "Node 'localhost' { WindowsFeature DNS {...} }"
...
}

resource "azurerm_automation_dsc_nodeconfiguration" "node" {
content_embedded = "WindowsFeature DNS {...}"`
...
}

还是别的什么?

我觉得我已经尝试了其中一些选项,但反馈循环非常慢,因此我可能找到了正确的答案,但在调试时被另一个错误绊倒了!

有人有一个可行的示例吗?或者可以解释一下它是如何工作的吗?

最佳答案

content_embedded 中,您应该包含 MOF 文件的内容,请参阅 an example来自 azurerm_automation_dsc_nodeconfiguration 文档。
或者您可以使用 terraform file function加载 MOF 内容并将其用于您的脚本。请记住以 Unicode 或 UTF-8 格式对 MOF 内容进行编码。

关于Terraform DSC 配置与节点配置中的 Azure 自动化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63466110/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com