操作系统类型"Linux 不支持每个处理程序的多个 VMExtension"



我使用 ARM 模板创建了 Azure VM。现在我想在Azure VM上安装Java和Mongodb。

当我尝试使用多个自定义脚本时,出现以下错误。

Multiple VMExtensions per handler not supported for OS type 'Linux

以下是我的配置:-

参数:-

"javaPackageName": {
    "type": "string",
    "defaultValue": "openjdk-7-jdk",
    "allowedValues": [
        "openjdk-6-jdk",
        "openjdk-7-jdk",
        "openjdk-8-jdk"
    ]
},
"tomcatPackageName": {
    "type": "string",
    "defaultValue": "tomcat7",
    "allowedValues": [
    "tomcat6",
    "tomcat7",
    "tomcat8"
    ]
}

变量:-

"mongoInstallCentos": "https:/..install-mongo.json">

{
    "type": "Microsoft.Compute/virtualMachines/extensions",
    "name": "[concat(parameters('virtualMachineName'),'/javainstall')]",
    "apiVersion": "2015-05-01-preview",
    "location": "[variables('location')]",
    "dependsOn": [
        "[concat('Microsoft.Compute/virtualMachines/', parameters('virtualMachineName'))]"
    ],
    "properties": {
        "publisher": "Microsoft.Azure.Extensions",
        "type": "CustomScript",
        "typeHandlerVersion": "2.0",
        "autoUpgradeMinorVersion": true,
        "settings": {
        "fileUris": ["https://..java-tomcat-install.sh"],
        "commandToExecute": "[concat('sh java-tomcat-install.sh',' ',parameters('javaPackageName'),' ',parameters('tomcatPackageName'))]"
        }
    }
},
{
    "type": "Microsoft.Compute/virtualMachines/extensions",
    "name": "[concat(parameters('virtualMachineName'),'/mongoinstall')]",
    "apiVersion": "2015-05-01-preview",
    "location": "[variables('location')]",
    "dependsOn": [
        "[concat('Microsoft.Compute/virtualMachines/', parameters('virtualMachineName'))]"
    ],
    "properties": {
        "publisher": "Microsoft.Azure.Extensions",
        "type": "CustomScript",
        "typeHandlerVersion": "2.0",
        "autoUpgradeMinorVersion": true,
        "settings": {
        "fileUris": ["https://..mongo-install.sh"],
        "commandToExecute": "sh mongo-install.sh"
        }
    }
},

是否有任何解决方案在 ARM 模板中使用多个自定义脚本?请帮我解决这个问题。

操作系统类型"Linux 不支持每个处理程序的多个 VMExtension

">

目前,在部署时无法运行多个自定义脚本扩展。

根据你的方案,可以创作调用依赖脚本的入口点脚本,然后将入口点脚本、依赖脚本和任何其他依赖二进制文件上传到脚本位置(Azure 存储 blob 或 GitHub(。更多信息请参阅此链接。

另外,您可以参考这个类似的问题。

最新更新