提前感谢,我是ARM模板的新手,还在学习它是如何工作的。我有一个包含资源的VNET,VNET地址空间是10.0。0.0/16,它包含一个子网,地址空间为10.0。0.0/16我正在尝试使用ARM模板更新DNS,它向我抛出了一个错误
"New-AzureRmResourceGroupDeployment : 11.50.14 PM - Error: Code=InvalidTemplate; Message=Deployment template validation failed: 'The provided value for the template parameter 'virtualNetworkSubnetaddress' at line
'26' and column '40' is not valid.'."
这是我的部署文件
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"location": {
"type": "string",
"metadata": {
"Description": "The region to deploy the resources into"
}
},
"virtualNetworkName": {
"type": "string",
"metadata": {
"Description": "The name of the Virtual Network"
}
},
"virtualNetworkAddressRange": {
"type": "string",
"metadata": {
"Description": "The address range of the virtual network in CIDR format"
},
"defaultValue": "10.0.0.0/16"
},
"virtualNetworkSubnetaddress": {
"type": "array",
"metadata": {
"Description": "The subnet definition for the virtual network"
}
},
"dnsAddress": {
"type": "array",
"metadata": {
"Description": "The DNS address(es) of the DNS Server(s) used by the virtual network"
}
},
},
"resources": [
{
"name": "[parameters('virtualNetworkName')]",
"type": "Microsoft.Network/virtualNetworks",
"location": "[parameters('location')]",
"apiVersion": "2018-02-01",
"properties": {
"addressSpace": {
"addressPrefixes": [
"[parameters('virtualNetworkAddressRange')]"
]
},
"dhcpOptions": {
"dnsServers": "[parameters('dnsAddress')]"
},
"subnets": "[parameters('virtualNetworkSubnetaddress')]"
}
}
],
"outputs": {}
}
下面是我的参数文件
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"dnsaddress": {
"value": ["10.0.0.4"]
},
"location": {
"value": "East US"
},
"virtualNetworkAddressRange": {
"value": "10.0.0.0/16"
},
"virtualNetworkName": {
"value": "vnettest"
},
"virtualNetworkSubnetaddress": {
"value": ["10.0.0.0/16"]
}
}
}
我不确定我做错了什么。
我尝试使用[]括号作为参数,并得到了错误信息
“{”代码“:”部署失败“,”消息“:”至少一个资源部署操作失败。有关详细信息,请列出部署操作。请参阅https://aka.ms/arm-debug有关用法的详细信息。“,”详细信息“:[{”代码“:”BADDREQUEST“,”消息“:“{\r\n\”错误“:{\r\n\”代码“:\”无效请求格式“,\r\n\”消息“:\”无法解析请求“,\r\n\”详细信息“:[\r\n{\r\n\”代码“:”无效JSON\”,\r\n\”消息“:”错误转换值““10.0.0/16”\键入“Microsoft.WindowsAzure.Networking.Nrp.Frontend.Contract.Csm.Public.Subnet.”路径“properties.subnets[0]”,第1行,位置153.\“\r\n}\r\n]\r\n}\r\n}]}”
子网定义只是一个数组,但它应该是一个对象数组,如下所示:
"subnets": [
{
"name": "[variables('subnet1Name')]",
"properties": {
"addressPrefix": "10.0.0.0/24"
}
},
{
"name": "[variables('subnet2Name')]",
"properties": {
"addressPrefix": "10.0.1.0/24"
}
}
]
例子:https://github.com/Azure/azure-quickstart-templates/blob/master/101-1vm-2nics-2subnets-1vnet/azuredeploy.json#L139
参考:https://docs.microsoft.com/en-us/azure/templates/microsoft.network/2018-11-01/virtualnetworks
ps.在你的情况下,如果你只想更新你的子网定义的vnet的DNS必须匹配实际的vnet子网定义,否则它会用你的输入覆盖它
部署VNET并将新部署的VNET与其他资源组中的现有VNET对等的Azure ARM模板? 请在下面找到JSON模板: {“$schema”:https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#,“内容版本”:“1.0。0.0", } 这就是我一直得到的错误:
我有: 一个名为VNET_DEV01_CLASSIC2的V1 VNet(经典)。 我也有一个PowerShell脚本,它使用ARM模板创建一个WebApp(AppService)(在这里你可以看到模板)。 新的WebApp创建好,但我需要手动将其连接到V1 VNet 连接之后,它工作得非常好。 如何实现自动化?到目前为止,我尝试了两种方法都没有成功: 1) 正在更新ARM模板以使用连接创建它。我看
我正在尝试创建一个ARM模板,该模板创建两个资源组,然后部署VNET并在它们之间创建对等。模板中的vNet对等资源不工作。我一直收到相同的错误,我相信这是因为我正在尝试使用VNET创建一个对等,该VNET位于与我部署到的VNET/资源组不同的VNET/资源组中。 我使用嵌套模板部署到单独的资源组中。 这就是我收到的错误 新AzureRmDeployment:16:13:36-资源Microsoft
我们正在使用Visual Studio Team Services发布功能,我正在构建一个完全自动化的CI/CD管道。 我应该如何使用VSTS和ARM模板部署这种简单的Azure PaaS/SaaS应用程序,而不让自己陷入极限的角落? 欣赏
我有个奇怪的问题。我有1个ARM模板,我用它部署2个环境。 删除完整的QA资源组后,我能够重新部署完全相同的ARM模板。看来资源组应该创建后的密钥库秘密?知道为什么吗?如果我们在生产中遇到这种情况,我们不希望删除完整的资源组
我已经创建了服务主体,并授予了他对密钥库的所有权限。此外,我还在ARM模板中为密钥库启用了访问秘密。 使用powershell,我可以作为部署SP登录并检索秘密(证书)。 但是,在部署带有密钥存储库引用的ARM模板时,这不起作用。我得到以下错误: