我正在尝试使用 ARM 模板和所需状态配置 (DSC) 将虚拟机规模集部署到 Azure。我已经创建了 DSC 配置并在它正在工作的单独 VM 上对其进行了验证。在 ARM 模板中,我对 DSC 扩展有以下定义:
{
"name": "Microsoft.Powershell.DSC",
"properties": {
"publisher": "Microsoft.Powershell",
"type": "DSC",
"typeHandlerVersion": "2.9",
"autoUpgradeMinorVersion": true,
"settings": {
"configuration": {
"url": "publicstoragebloburi/DSC/DSC.zip",
"script": "Main.ps1",
"function": "Main"
},
"configurationArguments": {
"MachineName": "localhost",
"WebDeployPackagePath": PublicStorageBlobPath_App.zip",
"UserName": "[parameters('adminUsername')]",
"Password": "[parameters('adminPassword')]",
"AppName": "FileScanApp",
"AppPath": "C:\\inetpub\\dev\\MyWebApp"
}
}
Main.ps1 文件以及名称为 Main 的配置确实存在。Main.ps1 位于 ZIP 存档的根目录中。当扩展在 VM 上运行时,它会尝试在以下目录中找到 Main.ps1 文件:C:\Packages\Plugins\Microsoft.Powershell.DSC\2.71.1.0\bin..\DSCWork\DSC.1\Main .ps1 ,但是当我远程到机器时 Main.ps1 不在文件夹中,我收到以下错误:
{"code":"DeploymentFailed","message":"至少一项资源部署操作失败。请列出部署操作以了解详细信息。请参阅https://aka.ms/arm-debug不被识别为 cmdlet、函数、脚本文件或可运行程序的名称。检查名称的拼写,或者如果包含路径,请验证路径是否正确并重试。\n请更正输入并重试执行扩展。\\"。\"\r\n }\r\ n ]\r\n }\r\n}"}]}
请有人告诉我,我做错了什么?我按照方法,这是在github上提供的官方示例 ARM 模板中实现的。谢谢!