gpt4 book ai didi

azure - 使用 azurerm_virtual_machine_extension 时,PowerShell 脚本不执行

转载 作者:行者123 更新时间:2023-12-01 18:59:10 25 4
gpt4 key购买 nike

我正在尝试在我的 terraform 执行中使用以下内容:

resource "azurerm_virtual_machine_extension" "vmex" {
name = "myVM"
location = "eastus"
resource_group_name = "${azurerm_resource_group.rg.name}"
virtual_machine_name = "${azurerm_virtual_machine.vm.name}"
publisher = "Microsoft.Compute"
type = "CustomScriptExtension"
type_handler_version = "1.9"
settings = <<SETTINGS
{
"fileUris": [
"https://example.com/scripts/test.ps1"
],
"commandToExecute": "powershell -ExecutionPolicy Unrestricted -File 'test.ps1'"
}
SETTINGS
}

执行时,我得到以下输出:

Error: Error applying plan:

1 error(s) occurred:

  • azurerm_virtual_machine_extension.vmex: 1 error(s) occurred:

  • azurerm_virtual_machine_extension.vmex: Long running operation terminated with status 'Failed': Code="VMExtensionProvisioningError" Message="VM has reported a failure when processing extension 'myVM'. Error message: \"Finished executing command\"."

Terraform does not automatically rollback in the face of errors. Instead, your Terraform state file has been partially updated with any resources that successfully completed. Please address the error above and apply again to incrementally change your infrastructure.

当我通过 RDP 进入虚拟机时,我可以看到该文件已正确下载到预期位置,但是,commandToExecute 似乎从未执行过。

如果我直接从下载文件夹运行脚本,它会成功完成。

任何人都可以就如何解决此问题提供任何建议吗?

注意:我尝试了尝试引用该文件的各种组合,但所有这些组合似乎都有相同的结果。

更新:按照评论中的建议检查日志后,尝试运行此代码段时出现的错误是:

"message": "Processing -File ''test.ps1'' failed because the file does not have a '.ps1' extension. Specify a valid Windows PowerShell script file name, and then try again."

最佳答案

我遇到了这类问题,就我而言,问题与脚本和参数的内容有关。但因为它可能是许多其他事情,所以您需要检索一些额外的数据。

尝试查明扩展程序本身是否有更多信息。转到您的 Azure 帐户并按照以下路径操作:主页 > 虚拟机 > [your_virtual_machine]。在包含所有选项的边栏选项卡中,选择“扩展”以查看您的扩展及其状态(应该是“配置失败”。单击该扩展。您将看到有关它的一些信息。检查状态和详细状态。

详细状态是一个链接,它将向您显示一个 JSON,其中可能包含有关正在发生的情况的重要信息。可能它会包含 PS1 脚本的错误输出。

请告诉我这是否有帮助,如果该信息还不够,请将其发布到此处,以便我可以获得更多信息,以便我能够检查并尝试提供帮助。

问候,劳尔。

编辑:因此,在检查了我们的代码示例之间的差异之后,最终单引号导致了您的问题。很高兴您发现了这个问题。

关于azure - 使用 azurerm_virtual_machine_extension 时,PowerShell 脚本不执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49131353/

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