I previously posted up a high level overview of Azure Resource Manager (ARM). The ARM coordinates the provisioning of resources within resource groups inside an Azure subscription. There are different kinds of resources that ARM can provision but right now there isn't a lot of documentation out there about what those resource types are. In the last post on ARM I showed how you could dump a copy of all the templates in the Azure Resource Group Gallery using the following Azure Powershell command:
Get-AzureResourceGroupGalleryTemplate | Save-AzureResourceGroupGalleryTemplate
I wrote a small program that parsed each one of those
*.json files and extracted a discrete set of resources that the Azure Resource Manager currently understands.
microsoft.cache/redis microsoft.classiccompute/domainnames microsoft.classiccompute/virtualmachines microsoft.classicnetwork/virtualnetworks microsoft.classicstorage/storageaccounts microsoft.classicstorage/storageaccounts/services/diagnosticsettings microsoft.datafactory/datafactories microsoft.documentdb/databaseaccounts microsoft.insights/alertrules microsoft.insights/autoscalesettings microsoft.insights/components microsoft.search/searchservices microsoft.sql/servers microsoft.sql/servers/databases microsoft.sql/servers/firewallrules microsoft.visualstudio/account microsoft.visualstudio/account/project microsoft.web/serverfarms microsoft.web/sites microsoft.web/sites/config microsoft.web/sites/extensions newrelic.apm/accounts successbricks.cleardb/databases
This list isn't nearly as big as I would expect representing only a fraction of the services that Azure provides. Keep in mind that this list represents only those resources that exist within pre-baked templates in the gallery. You could potentially get a more complete list by using the Azure Resource Management REST API.