SlideShare a Scribd company logo
BASEL BERN BRUGG DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. GENF
HAMBURG KOPENHAGEN LAUSANNE MÜNCHEN STUTTGART WIEN ZÜRICH
Infrastructure as Code on Azure
ARM Templates vs Terraform
Daniel Hillinger, Jonas Wanninger
@daniel8192, @JonasWanninger
Daniel Hillinger
Consultant at Trivadis GmbH Munich
Focus:
Oracle (RAC, Grid Infrastructure, Exadata, Dataguard)
Unix/Linux (OEL, RedHat, Solaris)
Azure (Automation, Design and Security)
daniel8192.wordpress.com
9/26/2018 Infrastructure as Code on Azure2
Jonas Wanninger
Infrastructure as Code on Azure3 9/26/2018
Consultant at Trivadis GmbH Munich
Focus:
Development (.NET, SQL, PowerShell)
Microsoft SQL Server
DevOps (CI/CD, Automated Infrastructure)
Azure (Automation, Design and Security)
@JonasWanninger
Agenda
Infrastructure as Code on Azure4 9/26/2018
1. What is IaC
2. Terraform
3. ARM Templates
4. Advanced IaC concepts
5. Conclusion
What is IaC
Infrastructure as Code on Azure5 9/26/2018
Cloud Operator
What is IaC
Infrastructure as Code on Azure6 9/26/2018
“Infrastructure as code (IaC) is the process of managing and provisioning computer
data centers through machine-readable definition files, rather than physical hardware
configuration or interactive configuration tools” – Wikipedia
Why is IaC is cool?
Infrastructure as Code on Azure7 9/26/2018
Provides consistency across all deployments and stages
Version control
Faster deployments and recovery
Just in time deployments
Documentation is already included to a certain degree
But IaC is not the solution for everything…
Infrastructure as Code on Azure8 9/26/2018
Change Management still needs to be done
Configuration management
Apply IAM inside the Infastructure / Plattform / Service
Automated validation
Infrastructure as Code on Azure9 9/26/2018
Terraform
HashiCorp
Infrastructure as Code on Azure11 9/26/2018
Founded 2012 by Mitchell Hashimoto and Armon Dadgar
Open Source
/hashicorp
Terraform
Infrastructure as Code on Azure12 9/26/2018
Declarative language
Tries to be cloud independent
Dependencies evaluated automatically based on a graph
Tracks cloud resources inside a local state file (.tf.state)
– Contains sensible data
Lacks security features
Agenda
Code 
Plan feature
Terraform and Azure
Infrastructure as Code on Azure13 9/26/2018
Partnership with Microsoft
Based on „azure sdk for go”
Terraform - Code
Infrastructure as Code on Azure14 9/26/2018
Create basic StorageAccount
resource "azurerm_storage_account" "testsa123" {
name = "mytestaccount123"
resource_group_name =
location = "${azurerm_resource_group.testrg.location}"
account_tier =
account_replication_type = "GRS"
tags {
environment = "staging"
}
}
"${azurerm_resource_group.testrg.name}"
"${var.account_tier}"
Terraform - Plans
Infrastructure as Code on Azure15 9/26/2018
Unique test / plan feature
Check syntax
Build dependency graph
Base for validation
Terraform will perform the following actions:
~ azurerm_cosmosdb_account.db
consistency_policy.0.max_interval_in_seconds: "10" => "20"
Plan: 0 to add, 1 to change, 0 to destroy.
Infrastructure as Code on Azure18 9/26/2018
ARM Templates
ARM Templates
Infrastructure as Code on Azure19 9/26/2018
Microsoft native IaC solution
Declarative templates written in JSON format
Azure Cloud and Azure Stack only
Generate ARM templates from the Azure Portal for any resource
Manual dependency handling
Great integration with other Azure services (e.g. KeyVault, StorageAccounts)
ARM Templates and the Azure Resource Manager
Infrastructure as Code on Azure20 9/26/2018
Describe infrastructure inside JSON file
Deployment possible in many different languages
(PowerShell, Bash, .NET, Ruby, Python, JavaScript or via REST API)
ARM Templates and the Azure Resource Manager
Infrastructure as Code on Azure21 9/26/2018
Resource Manager is the core component for all deployments
Resource Manager takes care of
– Provisioning and configuring
– Parallelizing the deployment
– Validating the resources
ARM Templates – Code – Creating a Storage Account
Infrastructure as Code on Azure22 9/26/2018
{
"type": "Microsoft.Storage/storageAccounts",
"apiVersion": "2018-03-01",
"location": "westeurope",
"name": "[parameters('storageAccountName')]",
"kind": "Storage",
"sku": {
"name": "Standard_LRS",
"tier": "Standard"
},
"properties": {
"supportsHttpsTrafficOnly": true,
},
"dependsOn": []
}
ARM Templates – Special Features – Key Vault
Infrastructure as Code on Azure27 9/26/2018
…
"administratorLoginPassword": {
"reference": {
"keyVault": {
"id": "/subscriptions/<subscription-id>/resourceGroups/examplegroup/
providers/Microsoft.KeyVault/vaults/<vault-name>"
},
"secretName": "examplesecret"
}
}
Infrastructure as Code on Azure28 9/26/2018
Advanced IaC concepts
Advanced IaC concepts
Infrastructure as Code on Azure29 9/26/2018
Dev
Staging
Prod
Developer Central Repo Validation Deployment
Infrastructure as Code on Azure30 9/26/2018
Conclusion
Conclusion – ARM vs. Terraform
Infrastructure as Code on Azure31 9/26/2018
Terraform
+ Plan feature
+ Dependency managment
- Statefile
- Security features
ARM
+ Microsoft native
+ Security features
- Plan feature
- Dependency managment
Conclusion - IaC
Infrastructure as Code on Azure32 9/26/2018
Automate your deployment and recovery process
• Speed and simplicity
Provides consistency across all deployments and stages
Minimize risks
Necessary in large environments
Questions and answers …
Daniel Hillinger
Tel. +49 89 992 759 333
Daniel.Hillinger@Trivadis.com
9/26/2018 Infrastructure as Code on Azure33
Jonas Wanninger
Tel. +49 89 992 759 324
Jonas.Wanninger@Trivadis.com
Session Feedback – now
Infrastructure as Code on Azure34 9/26/2018
Please use the Trivadis Events mobile app to give feedback on each session
Use "My schedule" if you have registered for a session
Otherwise use "Agenda" and the search function
If the mobile app does not work (or if you have a Windows smartphone), use your
smartphone browser
– URL: http://trivadis.quickmobileplatform.eu/
– User name: <your_loginname> (such as "svv")
– Password: sent by e-mail...

More Related Content

What's hot (20)

PPTX
Govern your Azure environment through Azure Policy
Microsoft Tech Community
 
PPTX
Microservices Architecture - Bangkok 2018
Araf Karsh Hamid
 
PDF
Azure SQL Database
nj-azure
 
PPTX
Azure Backup Simplifies
Tanawit Chansuchai
 
PDF
Mastering Azure Monitor
Richard Conway
 
PPTX
Azure Web Apps - Introduction
Christopher Gomez
 
PDF
DevOps in AWS with Kubernetes
Oleg Chunikhin
 
PPTX
Azure Migrate
Mustafa
 
PPTX
Azure container instances
Karthikeyan VK
 
PPTX
Azure Synapse Analytics Overview (r2)
James Serra
 
PPTX
Autoscaling in Kubernetes
Hrishikesh Deodhar
 
PDF
Building Data Quality pipelines with Apache Spark and Delta Lake
Databricks
 
PPTX
Lets talk about: Azure Kubernetes Service (AKS)
Pedro Sousa
 
PPTX
Azure kubernetes service (aks)
Akash Agrawal
 
PPTX
Azure Governance
Benjamin Hüpeden
 
PDF
Azure backup v0.7
Luca Mauri
 
PPTX
Azure migration
Arnon Rotem-Gal-Oz
 
PPTX
Azure Data Engineering.pptx
priyadharshini626440
 
PPTX
Azure Synapse Analytics Overview (r1)
James Serra
 
PDF
Azure Monitoring Overview
gjuljo
 
Govern your Azure environment through Azure Policy
Microsoft Tech Community
 
Microservices Architecture - Bangkok 2018
Araf Karsh Hamid
 
Azure SQL Database
nj-azure
 
Azure Backup Simplifies
Tanawit Chansuchai
 
Mastering Azure Monitor
Richard Conway
 
Azure Web Apps - Introduction
Christopher Gomez
 
DevOps in AWS with Kubernetes
Oleg Chunikhin
 
Azure Migrate
Mustafa
 
Azure container instances
Karthikeyan VK
 
Azure Synapse Analytics Overview (r2)
James Serra
 
Autoscaling in Kubernetes
Hrishikesh Deodhar
 
Building Data Quality pipelines with Apache Spark and Delta Lake
Databricks
 
Lets talk about: Azure Kubernetes Service (AKS)
Pedro Sousa
 
Azure kubernetes service (aks)
Akash Agrawal
 
Azure Governance
Benjamin Hüpeden
 
Azure backup v0.7
Luca Mauri
 
Azure migration
Arnon Rotem-Gal-Oz
 
Azure Data Engineering.pptx
priyadharshini626440
 
Azure Synapse Analytics Overview (r1)
James Serra
 
Azure Monitoring Overview
gjuljo
 

Similar to TechEvent Infrastructure as Code on Azure (20)

PDF
Using Splunk/ELK for auditing AWS/GCP/Azure security posture
Jose Hernandez
 
PDF
Using Splunk or ELK for Auditing AWS/GCP/Azure Security posture
CloudVillage
 
PPTX
Azure Key Vault with a PaaS Architecture and ARM Template Deployment
Roy Kim
 
PDF
How to Architect a Serverless Cloud Data Lake for Enhanced Data Analytics
Informatica
 
PDF
.Net development with Azure Machine Learning (AzureML) Nov 2014
Mark Tabladillo
 
PPTX
Azure arm templates
sachinkalia15
 
PDF
Hands-On AWS: Java SDK + CLI for Cloud Developers
Meetu Maltiar
 
PDF
국내 건설 기계사 도입 사례를 통해 보는 AI가 적용된 수요 예측 관리 - 베스핀글로벌 조창윤 AI/ML팀 팀장
BESPIN GLOBAL
 
PPTX
ALT-F1 Techtalk 3 - Google AppEngine
Abdelkrim Boujraf
 
PPTX
PaaS or Fail: Rule the Cloud with Altus
Cloudera, Inc.
 
PPTX
PaaS or Fail: Rule the Cloud with Altus
Cloudera, Inc.
 
PDF
aOS Monaco 2019 - A7 - Sécurisez votre SI et vos services Office 365 partie 2...
aOS Community
 
PPTX
Sky High With Azure
Clint Edmonson
 
PPTX
IBM THINK 2018 - IBM Cloud SQL Query Introduction
Torsten Steinbach
 
PPTX
Cloud Camp: Infrastructure as a service advance workloads
Asaf Nakash
 
PDF
Infrastructure-As-A/From-Code - An Introduction
Alex Tjahjana
 
PPTX
AWS CloudFormation Intrinsic Functions and Mappings
Adam Book
 
PPTX
Azure presentation nnug dec 2010
Ethos Technologies
 
PDF
IaC: Tools of the trade
Michael Pearce
 
PPTX
TechEvent Data Encryption in Azure
Trivadis
 
Using Splunk/ELK for auditing AWS/GCP/Azure security posture
Jose Hernandez
 
Using Splunk or ELK for Auditing AWS/GCP/Azure Security posture
CloudVillage
 
Azure Key Vault with a PaaS Architecture and ARM Template Deployment
Roy Kim
 
How to Architect a Serverless Cloud Data Lake for Enhanced Data Analytics
Informatica
 
.Net development with Azure Machine Learning (AzureML) Nov 2014
Mark Tabladillo
 
Azure arm templates
sachinkalia15
 
Hands-On AWS: Java SDK + CLI for Cloud Developers
Meetu Maltiar
 
국내 건설 기계사 도입 사례를 통해 보는 AI가 적용된 수요 예측 관리 - 베스핀글로벌 조창윤 AI/ML팀 팀장
BESPIN GLOBAL
 
ALT-F1 Techtalk 3 - Google AppEngine
Abdelkrim Boujraf
 
PaaS or Fail: Rule the Cloud with Altus
Cloudera, Inc.
 
PaaS or Fail: Rule the Cloud with Altus
Cloudera, Inc.
 
aOS Monaco 2019 - A7 - Sécurisez votre SI et vos services Office 365 partie 2...
aOS Community
 
Sky High With Azure
Clint Edmonson
 
IBM THINK 2018 - IBM Cloud SQL Query Introduction
Torsten Steinbach
 
Cloud Camp: Infrastructure as a service advance workloads
Asaf Nakash
 
Infrastructure-As-A/From-Code - An Introduction
Alex Tjahjana
 
AWS CloudFormation Intrinsic Functions and Mappings
Adam Book
 
Azure presentation nnug dec 2010
Ethos Technologies
 
IaC: Tools of the trade
Michael Pearce
 
TechEvent Data Encryption in Azure
Trivadis
 
Ad

More from Trivadis (20)

PDF
Azure Days 2019: Azure Chatbot Development for Airline Irregularities (Remco ...
Trivadis
 
PDF
Azure Days 2019: Trivadis Azure Foundation – Das Fundament für den ... (Nisan...
Trivadis
 
PDF
Azure Days 2019: Business Intelligence auf Azure (Marco Amhof & Yves Mauron)
Trivadis
 
PDF
Azure Days 2019: Master the Move to Azure (Konrad Brunner)
Trivadis
 
PDF
Azure Days 2019: Keynote Azure Switzerland – Status Quo und Ausblick (Primo A...
Trivadis
 
PDF
Azure Days 2019: Grösser und Komplexer ist nicht immer besser (Meinrad Weiss)
Trivadis
 
PDF
Azure Days 2019: Get Connected with Azure API Management (Gerry Keune & Stefa...
Trivadis
 
PDF
Azure Days 2019: Infrastructure as Code auf Azure (Jonas Wanninger & Daniel H...
Trivadis
 
PDF
Azure Days 2019: Wie bringt man eine Data Analytics Plattform in die Cloud? (...
Trivadis
 
PDF
Azure Days 2019: Azure@Helsana: Die Erweiterung von Dynamics CRM mit Azure Po...
Trivadis
 
PDF
TechEvent 2019: Kundenstory - Kein Angebot, kein Auftrag – Wie Du ein individ...
Trivadis
 
PDF
TechEvent 2019: Oracle Database Appliance M/L - Erfahrungen und Erfolgsmethod...
Trivadis
 
PDF
TechEvent 2019: Security 101 für Web Entwickler; Roland Krüger - Trivadis
Trivadis
 
PDF
TechEvent 2019: Trivadis & Swisscom Partner Angebote; Konrad Häfeli, Markus O...
Trivadis
 
PDF
TechEvent 2019: DBaaS from Swisscom Cloud powered by Trivadis; Konrad Häfeli ...
Trivadis
 
PDF
TechEvent 2019: Status of the partnership Trivadis and EDB - Comparing Postgr...
Trivadis
 
PDF
TechEvent 2019: More Agile, More AI, More Cloud! Less Work?!; Oliver Dörr - T...
Trivadis
 
PDF
TechEvent 2019: Kundenstory - Vom Hauptmann zu Köpenick zum Polizisten 2020 -...
Trivadis
 
PDF
TechEvent 2019: Vom Rechenzentrum in die Oracle Cloud - Übertragungsmethoden;...
Trivadis
 
PDF
TechEvent 2019: The sleeping Power of Data; Eberhard Lösch - Trivadis
Trivadis
 
Azure Days 2019: Azure Chatbot Development for Airline Irregularities (Remco ...
Trivadis
 
Azure Days 2019: Trivadis Azure Foundation – Das Fundament für den ... (Nisan...
Trivadis
 
Azure Days 2019: Business Intelligence auf Azure (Marco Amhof & Yves Mauron)
Trivadis
 
Azure Days 2019: Master the Move to Azure (Konrad Brunner)
Trivadis
 
Azure Days 2019: Keynote Azure Switzerland – Status Quo und Ausblick (Primo A...
Trivadis
 
Azure Days 2019: Grösser und Komplexer ist nicht immer besser (Meinrad Weiss)
Trivadis
 
Azure Days 2019: Get Connected with Azure API Management (Gerry Keune & Stefa...
Trivadis
 
Azure Days 2019: Infrastructure as Code auf Azure (Jonas Wanninger & Daniel H...
Trivadis
 
Azure Days 2019: Wie bringt man eine Data Analytics Plattform in die Cloud? (...
Trivadis
 
Azure Days 2019: Azure@Helsana: Die Erweiterung von Dynamics CRM mit Azure Po...
Trivadis
 
TechEvent 2019: Kundenstory - Kein Angebot, kein Auftrag – Wie Du ein individ...
Trivadis
 
TechEvent 2019: Oracle Database Appliance M/L - Erfahrungen und Erfolgsmethod...
Trivadis
 
TechEvent 2019: Security 101 für Web Entwickler; Roland Krüger - Trivadis
Trivadis
 
TechEvent 2019: Trivadis & Swisscom Partner Angebote; Konrad Häfeli, Markus O...
Trivadis
 
TechEvent 2019: DBaaS from Swisscom Cloud powered by Trivadis; Konrad Häfeli ...
Trivadis
 
TechEvent 2019: Status of the partnership Trivadis and EDB - Comparing Postgr...
Trivadis
 
TechEvent 2019: More Agile, More AI, More Cloud! Less Work?!; Oliver Dörr - T...
Trivadis
 
TechEvent 2019: Kundenstory - Vom Hauptmann zu Köpenick zum Polizisten 2020 -...
Trivadis
 
TechEvent 2019: Vom Rechenzentrum in die Oracle Cloud - Übertragungsmethoden;...
Trivadis
 
TechEvent 2019: The sleeping Power of Data; Eberhard Lösch - Trivadis
Trivadis
 
Ad

Recently uploaded (20)

PDF
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PDF
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
PPTX
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
PDF
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
PDF
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
PDF
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
PPTX
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
PDF
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
PDF
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
PDF
HCIP-Data Center Facility Deployment V2.0 Training Material (Without Remarks ...
mcastillo49
 
PDF
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
PPTX
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
PDF
Timothy Rottach - Ramp up on AI Use Cases, from Vector Search to AI Agents wi...
AWS Chicago
 
PDF
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
PDF
Blockchain Transactions Explained For Everyone
CIFDAQ
 
PPTX
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
PDF
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
PDF
Log-Based Anomaly Detection: Enhancing System Reliability with Machine Learning
Mohammed BEKKOUCHE
 
PDF
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
PDF
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
HCIP-Data Center Facility Deployment V2.0 Training Material (Without Remarks ...
mcastillo49
 
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
Timothy Rottach - Ramp up on AI Use Cases, from Vector Search to AI Agents wi...
AWS Chicago
 
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
Blockchain Transactions Explained For Everyone
CIFDAQ
 
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
Log-Based Anomaly Detection: Enhancing System Reliability with Machine Learning
Mohammed BEKKOUCHE
 
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 

TechEvent Infrastructure as Code on Azure

  • 1. BASEL BERN BRUGG DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. GENF HAMBURG KOPENHAGEN LAUSANNE MÜNCHEN STUTTGART WIEN ZÜRICH Infrastructure as Code on Azure ARM Templates vs Terraform Daniel Hillinger, Jonas Wanninger @daniel8192, @JonasWanninger
  • 2. Daniel Hillinger Consultant at Trivadis GmbH Munich Focus: Oracle (RAC, Grid Infrastructure, Exadata, Dataguard) Unix/Linux (OEL, RedHat, Solaris) Azure (Automation, Design and Security) daniel8192.wordpress.com 9/26/2018 Infrastructure as Code on Azure2
  • 3. Jonas Wanninger Infrastructure as Code on Azure3 9/26/2018 Consultant at Trivadis GmbH Munich Focus: Development (.NET, SQL, PowerShell) Microsoft SQL Server DevOps (CI/CD, Automated Infrastructure) Azure (Automation, Design and Security) @JonasWanninger
  • 4. Agenda Infrastructure as Code on Azure4 9/26/2018 1. What is IaC 2. Terraform 3. ARM Templates 4. Advanced IaC concepts 5. Conclusion
  • 5. What is IaC Infrastructure as Code on Azure5 9/26/2018 Cloud Operator
  • 6. What is IaC Infrastructure as Code on Azure6 9/26/2018 “Infrastructure as code (IaC) is the process of managing and provisioning computer data centers through machine-readable definition files, rather than physical hardware configuration or interactive configuration tools” – Wikipedia
  • 7. Why is IaC is cool? Infrastructure as Code on Azure7 9/26/2018 Provides consistency across all deployments and stages Version control Faster deployments and recovery Just in time deployments Documentation is already included to a certain degree
  • 8. But IaC is not the solution for everything… Infrastructure as Code on Azure8 9/26/2018 Change Management still needs to be done Configuration management Apply IAM inside the Infastructure / Plattform / Service Automated validation
  • 9. Infrastructure as Code on Azure9 9/26/2018 Terraform
  • 10. HashiCorp Infrastructure as Code on Azure11 9/26/2018 Founded 2012 by Mitchell Hashimoto and Armon Dadgar Open Source /hashicorp
  • 11. Terraform Infrastructure as Code on Azure12 9/26/2018 Declarative language Tries to be cloud independent Dependencies evaluated automatically based on a graph Tracks cloud resources inside a local state file (.tf.state) – Contains sensible data Lacks security features Agenda Code  Plan feature
  • 12. Terraform and Azure Infrastructure as Code on Azure13 9/26/2018 Partnership with Microsoft Based on „azure sdk for go”
  • 13. Terraform - Code Infrastructure as Code on Azure14 9/26/2018 Create basic StorageAccount resource "azurerm_storage_account" "testsa123" { name = "mytestaccount123" resource_group_name = location = "${azurerm_resource_group.testrg.location}" account_tier = account_replication_type = "GRS" tags { environment = "staging" } } "${azurerm_resource_group.testrg.name}" "${var.account_tier}"
  • 14. Terraform - Plans Infrastructure as Code on Azure15 9/26/2018 Unique test / plan feature Check syntax Build dependency graph Base for validation Terraform will perform the following actions: ~ azurerm_cosmosdb_account.db consistency_policy.0.max_interval_in_seconds: "10" => "20" Plan: 0 to add, 1 to change, 0 to destroy.
  • 15. Infrastructure as Code on Azure18 9/26/2018 ARM Templates
  • 16. ARM Templates Infrastructure as Code on Azure19 9/26/2018 Microsoft native IaC solution Declarative templates written in JSON format Azure Cloud and Azure Stack only Generate ARM templates from the Azure Portal for any resource Manual dependency handling Great integration with other Azure services (e.g. KeyVault, StorageAccounts)
  • 17. ARM Templates and the Azure Resource Manager Infrastructure as Code on Azure20 9/26/2018 Describe infrastructure inside JSON file Deployment possible in many different languages (PowerShell, Bash, .NET, Ruby, Python, JavaScript or via REST API)
  • 18. ARM Templates and the Azure Resource Manager Infrastructure as Code on Azure21 9/26/2018 Resource Manager is the core component for all deployments Resource Manager takes care of – Provisioning and configuring – Parallelizing the deployment – Validating the resources
  • 19. ARM Templates – Code – Creating a Storage Account Infrastructure as Code on Azure22 9/26/2018 { "type": "Microsoft.Storage/storageAccounts", "apiVersion": "2018-03-01", "location": "westeurope", "name": "[parameters('storageAccountName')]", "kind": "Storage", "sku": { "name": "Standard_LRS", "tier": "Standard" }, "properties": { "supportsHttpsTrafficOnly": true, }, "dependsOn": [] }
  • 20. ARM Templates – Special Features – Key Vault Infrastructure as Code on Azure27 9/26/2018 … "administratorLoginPassword": { "reference": { "keyVault": { "id": "/subscriptions/<subscription-id>/resourceGroups/examplegroup/ providers/Microsoft.KeyVault/vaults/<vault-name>" }, "secretName": "examplesecret" } }
  • 21. Infrastructure as Code on Azure28 9/26/2018 Advanced IaC concepts
  • 22. Advanced IaC concepts Infrastructure as Code on Azure29 9/26/2018 Dev Staging Prod Developer Central Repo Validation Deployment
  • 23. Infrastructure as Code on Azure30 9/26/2018 Conclusion
  • 24. Conclusion – ARM vs. Terraform Infrastructure as Code on Azure31 9/26/2018 Terraform + Plan feature + Dependency managment - Statefile - Security features ARM + Microsoft native + Security features - Plan feature - Dependency managment
  • 25. Conclusion - IaC Infrastructure as Code on Azure32 9/26/2018 Automate your deployment and recovery process • Speed and simplicity Provides consistency across all deployments and stages Minimize risks Necessary in large environments
  • 26. Questions and answers … Daniel Hillinger Tel. +49 89 992 759 333 [email protected] 9/26/2018 Infrastructure as Code on Azure33 Jonas Wanninger Tel. +49 89 992 759 324 [email protected]
  • 27. Session Feedback – now Infrastructure as Code on Azure34 9/26/2018 Please use the Trivadis Events mobile app to give feedback on each session Use "My schedule" if you have registered for a session Otherwise use "Agenda" and the search function If the mobile app does not work (or if you have a Windows smartphone), use your smartphone browser – URL: http://trivadis.quickmobileplatform.eu/ – User name: <your_loginname> (such as "svv") – Password: sent by e-mail...