当前位置: 首页 > 知识库问答 >
问题:

Azure ARM模板未定义?

杨和蔼
2023-03-14

Azure新手,创建了一个非常基本的ARM模板。有人能告诉我为什么我经常收到以下错误:“部署模板验证失败:'模板中未定义资源'Microsoft.Network/virtualNetworks/vNet'。请参阅https://aka.ms/arm-template有关用法的详细信息。(代码:InvalidTemplate)”

我试图删除“依赖”条目,但没有成功。

谢谢

{

"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
    "VMname": {
        "type": "string",
        "metadata": {
            "description": "Name of the VM"
        }
    },
    "vNet": {
        "type": "string",
        "maxLength": 10,
        "metadata": {
            "description": "Name of the Virtual Network"
        }
    },
    "StorageAccountName": {
        "type": "string",
        "maxLength": 50,
        "metadata": {
            "description": "Name of Storage Account"
        }
    }        
},
"functions": [],
"variables": {},
"resources": [{
    "type": "Microsoft.Storage/storageAccounts",
    "name": "[parameters('StorageAccountName')]",
    "apiVersion": "2019-06-01",
    "location": "[resourceGroup().location]",
    "tags": {
        "displayName": "[parameters('StorageAccountName')]"
    },
    "sku": {
        "name": "Standard_LRS"
    },
    "kind": "Storage"
},

{
    "name": "VMname-PublicIP",
    "type": "Microsoft.Network/publicIPAddresses",
    "apiVersion": "2019-11-01",
    "location": "[resourceGroup().location]",
    "tags": {
        "displayName": "PublicIPAddress"
    },
    "properties": {
        "publicIPAllocationMethod": "Dynamic",
        "dnsSettings": {
            "domainNameLabel": "[toLower('VMname')]"
        }
    }
},
{
    "name": "VMname-nsg",
    "type": "Microsoft.Network/networkSecurityGroups",
    "apiVersion": "2018-08-01",
    "location": "[resourceGroup().location]",
    "properties": {
        "securityRules": [
            {
                "name": "nsgRule1",
                "properties": {
                    "description": "description",
                    "protocol": "Tcp",
                    "sourcePortRange": "*",
                    "destinationPortRange": "3389",
                    "sourceAddressPrefix": "*",
                    "destinationAddressPrefix": "*",
                    "access": "Allow",
                    "priority": 100,
                    "direction": "Inbound"
                }
            }
        ]
    }
},
{
    "name": "[parameters('vNet')]",
    "type": "Microsoft.Network/virtualNetworks",
    "apiVersion": "2019-11-01",
    "location": "[resourceGroup().location]",
    "dependsOn": [
        "[resourceId('Microsoft.Network/networkSecurityGroups', 'VMname-nsg')]"
    ],
    "tags": {
        "displayName": "vNet"
    },
    "properties": {
        "addressSpace": {
            "addressPrefixes": [
                "10.0.0.0/16"
            ]
        },
        "subnets": [
            {
                "name": "vNet-Subnet",
                "properties": {
                    "addressPrefix": "10.0.0.0/24",
                    "networkSecurityGroup": {
                        "id": "[resourceId('Microsoft.Network/networkSecurityGroups', 'VMname-nsg')]"
                    }
                }
            }
        ]
    }
},
{
    "name": "VMname-NetworkInterface",
    "type": "Microsoft.Network/networkInterfaces",
    "apiVersion": "2019-11-01",
    "location": "[resourceGroup().location]",
    "dependsOn": [
        "[resourceId('Microsoft.Network/publicIPAddresses', 'VMname-PublicIP')]",
        "[resourceId('Microsoft.Network/virtualNetworks', 'vNet')]"
    ],
    "tags": {
        "displayName": "VMname Network Interface"
    },
    "properties": {
        "ipConfigurations": [
            {
                "name": "ipConfig1",
                "properties": {
                    "privateIPAllocationMethod": "Dynamic",
                    "publicIPAddress": {
                        "id": "[resourceId('Microsoft.Network/publicIPAddresses', 'VMname-PublicIP')]"
                    },
                    "subnet": {
                        "id": "[resourceId('Microsoft.Network/virtualNetworks/subnets', 'vNet', 'vNet-Subnet')]"
                    }
                }
            }
        ]
    }
},
{
    "name": "[parameters('VMname')]",
    "type": "Microsoft.Compute/virtualMachines",
    "apiVersion": "2019-07-01",
    "location": "[resourceGroup().location]",
    "dependsOn": [
        "[resourceId('Microsoft.Storage/storageAccounts', toLower('StorageAccountName'))]",
        "[resourceId('Microsoft.Network/networkInterfaces', 'VMname-NetworkInterface')]"
    ],
    "tags": {
        "displayName": "VMname"
    },
    "properties": {
        "hardwareProfile": {
            "vmSize": "Standard_A2_v2"
        },
        "osProfile": {
            "computerName": "VMname",
            "adminUsername": "adminUsername",
            "adminPassword": "adminPassword"
        },
        "storageProfile": {
            "imageReference": {
                "publisher": "MicrosoftWindowsServer",
                "offer": "WindowsServer",
                "sku": "2012-R2-Datacenter",
                "version": "latest"
            },
            "osDisk": {
                "name": "VMnameOSDisk",
                "caching": "ReadWrite",
                "createOption": "FromImage"
            }
        },
        "networkProfile": {
            "networkInterfaces": [
                {
                    "id": "[resourceId('Microsoft.Network/networkInterfaces', 'VMname-NetworkInterface')]"
                }
            ]
        },
        "diagnosticsProfile": {
            "bootDiagnostics": {
                "enabled": true,
                "storageUri": "[reference(resourceId('Microsoft.Storage/storageAccounts/', toLower('StorageAccountName'))).primaryEndpoints.blob]"
            }
        }
    }
}],
"outputs": {}

}

共有1个答案

游高杰
2023-03-14

这:

"[resourceId('Microsoft.Network/virtualNetworks', 'vNet')]"

应该是这样的:

"[resourceId('Microsoft.Network/virtualNetworks', parameters('vNet'))]"
 类似资料:
  • 以下模板部署: https://gist.github.com/rnkhouse/aea0a8fd395da37b19466348b919d620 错误: “部署失败,状态代码为400,消息:部署模板验证失败:'模板中未定义资源'Microsoft.Network/virtualNetworks/mtes dev VNET'。请参阅。”https://aka.ms/arm-template有关用法

  • 在 cmf中模板就是一个 html 文件,可分为前台模板文件和后台模板文件; 前台模板位于 themes 目录下,后台模板位于 admin/themes 目录下,前后台都是多主题机制的,可以分开设置不同的主题; 前台默认模板是 simplebootx,以后也可能会换,我们先以这个为例; 这是前台模板的结构;应用之间彼此分开,Portal目录下就对应的是application/Portal应用的模板

  • 问题内容: 使用我正在尝试在模板中使用自己的功能之一。不幸的是,我无法使用go模板的功能映射功能。我得到的只是以下错误: 简化的测试用例如下所示(): 我有以下简单模板(): 这是1.1.1。 问题答案: IIRC,必须在解析模板之前定义模板功能图。下面的代码似乎有效。

  • 从MinDoc v0.13及以上版本开始支持自定义模板(仅Markdown编辑器)。 创建自定义模板 用户可在编辑项目时将编辑器内的内容报错为模板: 点击保存按钮右侧的公文包按钮会弹出保存为模板的界面: 填写模板名称点击立即保存即可。 全局模板是指,在其他项目中可用,目前仅支持管理员保存全局模板,非管理员及时选中了全局,保存时也是仅项目内可用。 使用自定义模板 点击编辑器上的模板按钮可以显示选择模

  • 下面的程序可以编译(请参见godbolt上的),但是如果我们取消对< code>Buffer的定义的注释,它将不会编译。 原因是,未注释的版本无法编译: 触发器ADL,并且要收集的所有候选项,必须检查所有关联的类是否有元函数。

  • 问题内容: 我刚刚开始使用Twitter的Bootstrap,并且想知道自定义的“最佳实践”是什么。我想开发一种系统,该系统将利用css模板(Bootstrap或其他)的所有功能,完全(轻松)地进行修改,具有可持续性(即–从Twitter发布下一版本的Bootstrap时,我不会)不必重新开始。 例如,我想将背景图像添加到顶部导航中。看来有3种方法可以解决此问题: 修改bootstrap.css中