Gentle introduction to Azure ARM templates and other deployment options, both imperative and declarative, such as Terraform, Ansible, or even azcli or PowerShell.
6. “Infrastructure as code is the approach to
defining computing and network
infrastructure through source code that can
then be treated just like any software
system.”
Martin Fowler
https://martinfowler.com/bliki/InfrastructureAsCode.html
8. API ENDPOINT (MANAGEMENT.AZURE.COM)
ACTIVITY LOGS, ACCESS CONTROL, POLICY, LOCKS,
TEMPLATE ENGINE, DEPLOYMENTS, RESOURCE GROUP
PROVIDER CONTRACT (RPC)
RESOURCE
PROVIDERS
Data
Plane
Control
Plane
Clients
The big picture
10. A service that supplies the resources you can
deploy and manage through Resource Manager.
Each resource provider offers operations for
working with the resources that are deployed.
Resource Provider
25. How to test an ARM template
https://blog.mexia.com.au/testing-arm-templates-with-pester
https://blogs.technet.microsoft.com/stefan_stranger/2017/08/02/testing-
azure-resource-manager-template-functions/
Some more examples:
40. •User defined functions in templates
•Subscription based deployments
Deploy subscription-level resources
Role definitions
Role assignments
•Rollback
To previous deployment on fail
(Next) improvements in ARM Templates
41. ARM Template
Terraform
OSS RP
Resource
• As an ARM resource
• Sign up for private preview:
https://aka.ms/tfossrp
Terraform config
TF Azure
Resource
TF Azure
module
Make Azure a first class provider in Terraform
• Increased Azure resource coverage
• More TF Azure modules
(Next) Improved Terraform Support