Compreender os recursos do Azure
Todos os recursos do Azure são implantados com um tipo específico. O tipo identifica o tipo de recurso que é. Uma ID de recurso é a maneira como o Azure identifica uma instância específica de um recurso. É importante entender como os tipos de recursos e IDs de recursos são estruturados, pois eles fornecem informações importantes quando você está escrevendo modelos de bíceps.
Fornecedores de recursos
O Azure Resource Manager foi projetado para que muitos provedores de recursos diferentes possam ser gerenciados por meio de APIs e modelos ARM do Resource Manager. Um provedor de recursos é um agrupamento lógico de tipos de recursos, que geralmente se relacionam a um ou alguns serviços do Azure. Exemplos de provedores de recursos incluem:
Microsoft.Compute
, que é usado para máquinas virtuais.Microsoft.Network
, que é usado para recursos de rede, como redes virtuais, grupos de segurança de rede e tabelas de rotas.Microsoft.Cache
, que é usado para o Cache do Azure para Redis.Microsoft.Sql
, que é usado para o Azure SQL.Microsoft.Web
, que é usado para o Serviço de Aplicativo do Azure e o Azure Functions.Microsoft.DocumentDB
, que é usado para o Azure Cosmos DB.
Nota
Os nomes do provedor de recursos e os nomes dos tipos de recursos ocasionalmente não correspondem aos nomes dos serviços do Azure para os quais se destinam ou podem ser nomes de produtos ou recursos antigos. Por exemplo, o provedor de recursos para espaços de trabalho do Log Analytics é Microsoft.OperationalInsights
.
A documentação para a sintaxe do modelo ARM de cada tipo de recurso é organizada de acordo com o provedor de recursos.
Os fornecedores de recursos têm de estar registados para a sua subscrição antes de poder utilizar os tipos de recursos que expõem. O registo é geralmente um processo único. Quando você envia uma implantação do Bicep, o Gerenciador de Recursos registra automaticamente os provedores de recursos usados no arquivo. Você também pode registrar um provedor de recursos usando o portal do Azure, a CLI do Azure ou o Azure PowerShell.
Tipos de recursos
Um provedor de recursos expõe vários tipos diferentes. Cada tipo de recurso tem seu próprio conjunto de propriedades e comportamentos que definem o recurso e o que ele pode fazer. Por exemplo, dentro do provedor de Microsoft.Web
recursos, há vários tipos de recursos, incluindo:
sites
: Define um aplicativo do Serviço de Aplicativo ou um aplicativo do Azure Functions. As propriedades incluem as variáveis de ambiente que seu aplicativo usa e os protocolos suportados (HTTP e HTTPS) para acessar o aplicativo.serverFarms
: define um plano do Serviço de Aplicativo, a infraestrutura que executa seus aplicativos. As propriedades incluem o tamanho e a SKU dos servidores e o número de instâncias do seu plano que você deseja implantar.
Ao definir recursos no Bicep, você precisa especificar seu tipo de recurso e a versão da API do provedor de recursos que você deseja que o Bicep use para o recurso. Essas informações ajudam as ferramentas do Bíceps e o Gerenciador de Recursos a entender quais propriedades devem ser fornecidas com a definição de recurso.
Gorjeta
É uma boa ideia usar uma versão recente da API para cada recurso. Às vezes, os novos recursos nos serviços do Azure estão disponíveis apenas em versões mais recentes da API.
Você combina o provedor de recursos e o nome do tipo para criar um nome de tipo de recurso totalmente qualificado. O nome do tipo totalmente qualificado consiste no nome do provedor de recursos, uma barra (/
) e o tipo de recurso. Por exemplo, o nome do tipo totalmente qualificado de uma conta de armazenamento é Microsoft.Storage/storageAccounts
. Nesse caso, o nome do provedor de recursos é Microsoft.Storage
, e o tipo de recurso é storageAccounts
.
IDs de recursos
Cada recurso do Azure tem uma ID de recurso exclusiva. Esse ID inclui informações que ajudam a desambiguar o recurso de qualquer outro recurso do mesmo tipo, ou até mesmo de recursos diferentes que possam compartilhar o mesmo nome. Um ID de recurso para uma conta de armazenamento tem esta aparência:
/subscriptions/A123b4567c-1234-1a2b-2b1a-1234abc12345/resourceGroups/ToyDevelopment/providers/Microsoft.Storage/storageAccounts/secrettoys
Vejamos uma representação visual das mesmas informações:
Você pode ver que um ID de recurso intercala informações sobre o tipo de recurso e o recurso específico que você implantou. Vamos dividir este exemplo de ID de recurso em seus componentes:
subscriptions/A123b4567c-1234-1a2b-2b1a-1234abc12345
indica que esse recurso está dentro da assinatura do Azure com ID.A123b4567c-1234-1a2b-2b1a-1234abc12345
.resourceGroups/ToyDevelopment
Indica que o recurso está dentro do grupo de recursos chamadoToyDevelopment
.providers/Microsoft.Storage
Indica que o recurso está usando um tipo doMicrosoft.Storage
provedor de recursos.storageAccounts
é o tipo de recurso.secrettoys
é o nome da conta de armazenamento.
Gorjeta
Você pode acessar a ID de qualquer recurso no Bicep usando o nome simbólico e a id
propriedade. Por exemplo, se você definir uma conta de armazenamento com o nome toyDesignDocumentsStorageAccount
simbólico , poderá acessar sua ID de recurso usando a expressão toyDesignDocumentsStorageAccount.id
.
Agora que você entende os conceitos básicos de tipos de recursos e IDs de recursos, vamos examinar os recursos filho.