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.
Ao implantar os recursos, especifique que a implantação é uma atualização incremental ou uma atualização completa. A diferença entre esses dois modos é como o Gerenciador de Recursos lida com recursos existentes no grupo de recursos que não estão no modelo.
Importante
Use pilhas de implantação para executar exclusões de recursos ao usar modelos do ARM ou arquivos Bicep, pois o modo completo será gradualmente preterido.
Para ambos os modos, o Resource Manager tenta criar todos os recursos especificados no modelo. Se o recurso já existir no grupo de recursos e suas configurações estiverem inalteradas, nenhuma operação será realizada para esse recurso. Se você alterar os valores de propriedade de um recurso, o recurso será atualizado com esses novos valores. Se você tentar atualizar o local ou o tipo de um recurso existente, a implantação falhará com um erro. Em vez disso, implante um novo recurso com o local ou tipo necessário.
O modo padrão é incremental.
Modo incremental
No modo incremental, o Resource Manager deixa os recursos inalterados que existem no grupo de recursos, mas não são especificados no modelo. Os recursos no modelo são adicionados ao grupo de recursos.
Importante
O modo incremental é o modo de implantação recomendado. Se houver a necessidade de excluir recursos como parte de um arquivo Bicep ou um modelo JSON do ARM, use as pilhas de implantação.
Ao reimplantar um recurso existente no modo incremental, todas as propriedades são reaplicadas. As propriedades não são adicionadas incrementalmente. Um mal-entendido comum é pensar que as propriedades que não são especificadas no modelo são deixadas inalteradas. Se você não especificar certas propriedades, o Resource Manager interpretará que a implantação está substituindo esses valores. As propriedades que não estão incluídas no modelo são redefinidas para os valores padrão. Especifique todos os valores não padrão para o recurso, não apenas os que você está atualizando. A definição de recurso no modelo sempre contém o estado final do recurso. Ele não pode representar uma atualização parcial para um recurso existente.
Aviso
Em casos raros, é possível especificar propriedades em um recurso ou em um dos recursos filho. Dois exemplos comuns são sub-redes em redes virtuais e valores de configuração de site para aplicativos Web. Nesses casos, você deve lidar com atualizações incrementais com cuidado.
Para sub-redes, especifique os valores por meio da subnets propriedade no recurso Microsoft.Network/virtualNetworks . Não defina os valores por meio do recurso filho Microsoft.Network/virtualNetworks/subnets. Desde que as sub-redes sejam definidas na rede virtual, você poderá reimplantar a rede virtual e não perder as sub-redes.
Para valores de configuração do site, os valores são implementados no tipo de recurso filho Microsoft.Web/sites/config. Se você reimplantar o aplicativo Web e especificar um objeto vazio para os valores de configuração do site, o recurso filho não será atualizado. No entanto, se você fornecer novos valores de configuração do site, o tipo de recurso filho será atualizado.
Modo completo
Aviso
O modo completo não é recomendado. Se você deseja executar exclusões com implantações do modelo do ARM ou Bicep, use Pilhas de implantação.
No modo completo, o Resource Manager exclui os recursos que existem no grupo de recursos, mas não são especificados no modelo.
Observação
Sempre use a operação de teste de hipóteses antes de implantar um modelo no modo completo. O teste de hipóteses mostra quais recursos serão criados, excluídos ou modificados. Use o teste de hipóteses para evitar a exclusão acidental de recursos.
Se o modelo incluir um recurso que não é implantado porque a condição é avaliada como false, o resultado depende de qual versão da API REST você usa para implantar o modelo. Se você usar uma versão anterior a 2019-05-10, o recurso não será excluído. A partir de 2019-05-10, o recurso é excluído. As versões mais recentes do Azure PowerShell e da CLI do Azure excluem o recurso.
Tenha cuidado ao usar o modo completo com loops de cópia. Todos os recursos que não são especificados no modelo após a resolução do loop de cópia são excluídos.
Se você implantar em mais de um grupo de recursos em um modelo, os recursos no grupo de recursos especificado na operação de implantação poderão ser excluídos. Os recursos nos grupos de recursos secundários não são excluídos.
Há algumas diferenças na forma como os tipos de recursos lidam com exclusões de modo completo. Os recursos principais são automaticamente excluídos quando não estão em um modelo implantado no modo completo. Alguns recursos filho não são excluídos automaticamente quando não estão no modelo. No entanto, esses recursos filho serão excluídos se o recurso pai for excluído.
Por exemplo, se o grupo de recursos contiver uma zona DNS (Microsoft.Network/dnsZones tipo de recurso) e um registro CNAME (Microsoft.Network/dnsZones/CNAME tipo de recurso), a zona DNS será o recurso pai do registro CNAME. Se você implantar com o modo completo e não incluir a zona DNS em seu modelo, a zona DNS e o registro CNAME serão excluídos. Se você incluir a zona DNS em seu modelo, mas não incluir o registro CNAME, o CNAME não será excluído.
Para obter uma lista de como os tipos de recursos lidam com a exclusão, consulte Exclusão de recursos do Azure para implantações de modo completo.
Se o grupo de recursos estiver bloqueado, o modo completo não excluirá os recursos.
Observação
Somente modelos de nível raiz dão suporte ao modo de implantação completo. Para modelos vinculados ou aninhados, você deve usar o modo incremental.
As implantações no nível da assinatura não dão suporte ao modo completo.
Atualmente, o portal não dá suporte ao modo completo.
Resultados de exemplo
Para ilustrar a diferença entre modos incrementais e completos, considere o cenário a seguir.
O Grupo de Recursos contém:
- Recurso A
- Recurso B
- Recurso C
O modelo contém:
- Recurso A
- Recurso B
- Recurso D
Quando implantado no modo incremental , o grupo de recursos tem:
- Recurso A
- Recurso B
- Recurso C
- Recurso D
Quando implantado no modo completo , o Recurso C é excluído. O grupo de recursos tem:
- Recurso A
- Recurso B
- Recurso D
Definir o modo de implantação
Para definir o modo de implantação ao implantar com o PowerShell, use o Mode parâmetro.
New-AzResourceGroupDeployment `
-Mode Complete `
-Name ExampleDeployment `
-ResourceGroupName ExampleResourceGroup `
-TemplateFile c:\MyTemplates\storage.json
Para definir o modo de implantação ao implantar com a CLI do Azure, use o mode parâmetro.
az deployment group create \
--mode Complete \
--name ExampleDeployment \
--resource-group ExampleResourceGroup \
--template-file storage.json
O exemplo a seguir mostra um modelo vinculado definido como modo de implantação incremental:
"resources": [
{
"type": "Microsoft.Resources/deployments",
"apiVersion": "2025-04-01",
"name": "linkedTemplate",
"properties": {
"mode": "Incremental",
<nested-template-or-external-template>
}
}
]
Próximas etapas
- Para saber mais sobre como criar modelos do Resource Manager, confira como Entender a estrutura e a sintaxe de modelos do ARM.
- Para saber mais sobre como implantar recursos, consulte Implantar recursos com modelos do ARM e o Azure PowerShell.
- Para exibir as operações para um provedor de recursos, consulte API REST do Azure.