Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Recursos filho são recursos que existem apenas no contexto de outro recurso. Por exemplo, uma extensão de máquina virtual não pode existir sem uma máquina virtual. O recurso de extensão é filho da máquina virtual.
Cada recurso pai aceita somente determinados tipos de recurso como recursos filho. O tipo de recurso para o recurso filho inclui o tipo de recurso para o recurso pai. Por exemplo, Microsoft.Web/sites/config e Microsoft.Web/sites/extensions são recursos filhos de Microsoft.Web/sites. Os tipos de recurso aceitos são especificados no esquema do modelo do recurso pai.
Em um modelo do Azure Resource Manager (modelo ARM), você pode especificar o recurso filho dentro do recurso pai ou fora do recurso pai. Os valores fornecidos para o nome do recurso e tipo do recurso variam com base no fato de o recurso filho ser definido dentro ou fora do recurso pai.
Dica
Recomendamos o Bicep porque ele oferece as mesmas funcionalidades que os modelos do ARM e a sintaxe é mais fácil de usar. Para saber mais, confira recursos filho.
Dentro do recurso pai
O exemplo a seguir mostra o recurso filho incluído na propriedade do recurso pai.
"resources": [
{
<parent-resource>
"resources": [
<child-resource>
]
}
]
Os recursos filho só podem ser definidos em cinco níveis de profundidade.
Quando definido dentro do tipo de recurso pai, você formata os valores de tipo e nome como um único segmento sem barras.
"type": "{child-resource-type}",
"name": "{child-resource-name}",
O exemplo a seguir cria uma rede virtual e uma sub-rede. Observe que a sub-rede está incluída na matriz de recursos para a rede virtual. O nome é definido como Subnet1 e o tipo é definido como sub-redes. O recurso filho é marcado como dependente do recurso pai porque o recurso pai deve existir antes que o recurso filho possa ser implantado.
"resources": [
{
"type": "Microsoft.Network/virtualNetworks",
"apiVersion": "2024-07-01",
"name": "VNet1",
"___location": "[parameters('___location')]",
"properties": {
"addressSpace": {
"addressPrefixes": [
"10.0.0.0/16"
]
}
},
"resources": [
{
"type": "subnets",
"apiVersion": "2024-07-01",
"name": "Subnet1",
"dependsOn": [
"VNet1"
],
"properties": {
"addressPrefix": "10.0.0.0/24"
}
}
]
}
]
O tipo de recurso completo ainda é Microsoft.Network/virtualNetworks/subnets.
Microsoft.Network/virtualNetworks/ não é fornecido porque ele é presumido do tipo de recurso pai.
O nome do recurso filho é definido como Subnet1, mas o nome completo inclui o nome pai. Você não fornece VNet1 porque é assumido a partir do recurso pai.
Recurso pai externo
O exemplo a seguir mostra o recurso filho fora do recurso pai. Você pode usar essa abordagem se o recurso pai não for implantado no mesmo modelo ou se quiser usar a cópia para criar mais de um recurso filho.
"resources": [
{
<parent-resource>
},
{
<child-resource>
}
]
Quando definido fora do recurso pai, você formata os valores de tipo e nome com barras para incluir o tipo e o nome pai.
"type": "{resource-provider-namespace}/{parent-resource-type}/{child-resource-type}",
"name": "{parent-resource-name}/{child-resource-name}",
O exemplo a seguir mostra uma rede virtual e uma sub-rede que são definidas no nível raiz. Observe que a sub-rede não está incluída na matriz de recursos da rede virtual. O nome é definido como VNet1/Subnet1 e o tipo é definido como Microsoft.Network/virtualNetworks/subnets. O recurso filho é marcado como dependente do recurso pai porque o recurso pai deve existir antes que o recurso filho possa ser implantado.
"resources": [
{
"type": "Microsoft.Network/virtualNetworks",
"apiVersion": "2024-07-01",
"name": "VNet1",
"___location": "[parameters('___location')]",
"properties": {
"addressSpace": {
"addressPrefixes": [
"10.0.0.0/16"
]
}
}
},
{
"type": "Microsoft.Network/virtualNetworks/subnets",
"apiVersion": "2024-07-01",
"name": "VNet1/Subnet1",
"dependsOn": [
"VNet1"
],
"properties": {
"addressPrefix": "10.0.0.0/24"
}
}
]
Próximas etapas
- Para saber mais sobre a criação de modelos ARM, consulte Compreender a estrutura e a sintaxe dos modelos ARM.
- Para saber mais sobre o formato do nome do recurso ao referenciar o recurso, consulte a função de referência.