Learn how to use Terraform to provision and manage Azure infrastructure. Discover the patterns and best-practices for writing infrastructure code to manage Azure IaaS and PaaS resources.
Mike Pfeiffer is a twenty-year tech industry veteran who’s worked for some of the largest technology companies in the world including Microsoft and Amazon Web Services (AWS). Mike is a published author, international conference speaker, Microsoft Azure MVP, and host of the CloudSkills.fm podcast.@mike_pfeiffer
Learn the foundations of Terraform and the patterns and practices used to automate infrastructure management. In this first session we'll discuss Terraform's template-based configuration files and how they enable you to define, provision, and configure Azure resources in a repeatable and predictable manner.
To use Terraform you will need to install it on your machine. In this session we'll show you how to install the Terraform binary package on your machine manually, along with using popular package managers, and we'll explore how to run Terraform in the Azure Cloud Shell.
In this session you'll learn how Terraform uses a declarative model for defining infrastructure, and you'll see how to write a configuration that declares your desired state. From there, you'll see how to use your configurations to create and configure Azure to match your desired state.
Learn the three steps used to build infrastructure with Terraform on Azure. In this session you'll see how to initialize your Terraform configuration directory using terraform init, how to create an execution plan, and how to modify infrastructure using terraform apply.
Changes to infrastructure often need to be done in a specific order which is typically determined by resource dependencies. In this session you'll learn how to manage a diverse collection of interdependent resources and how to manage their dependencies.
We can use Terraform provisioners to perform additional setup and configuration when a resource is created or destroyed. In this session you'll see how to use provisioners to run shell scripts, install software, and much more.
In this session we'll transition from using literals and see how to add variables to our configurations. We'll also explore the concept of output variables that can be used to organize and return data to Terraform operators.
In this session you'll learn how to effectively us Terraform state, which includes the settings for all of the resources maintained in your configurations. You'll see how to implement remote state storage and patterns used in Terraform such as team-based workflows using remote backends.
When creating production-grade Terraform configurations, modules are an absolute must. One of the more apparent benefits of using them is that they allow our code to be DRY. DRY is a software development term that stands for Don't Repeat Yourself. In this session you'll learn how to create modules and integrate them into your Terraform configurations.
In this session you'll learn how to create a module and that implements functions, expressions, and loops in your Terraform configurations. Understanding how to create loops and advanced expressions can give your code a cleaner look and it provides teammates with a more precise understanding of the infrastructure when reading the Terraform configuration.
Learn how to leverage pre-existing infrastructure and how to import it into Terraform. We'll start off by deploying some infrastructure with Azure CLI and then you'll see how to import those resources into a state file that can be managed by Terraform.
In this final session you'll see real-world examples of how to implement Continuous Integration and Continous Delivery (CI/CD) with Terraform and Azure DevOps, and you'll see how teams can collaborate on projects with Terraform Cloud.
Feedback from active members of the CloudSkills Community
Wondering if training with CloudSkills.io is
going to be the right fit?
Here are answers to common questions.
What the prerequisites for this course?
We recommend that you have basic sysadmin skills, along with a high-level understanding of software development. You do not need to be a programmer to succeed in this course.
Who is this for?
Our courses are for anybody working in the IT industry who wants to achieve the Microsoft Certified DevOps Engineer certification and make a career transition into DevOps, regardless if you come from an "ops" or "dev" background.
Do I need an Azure subscription to follow along?
We are big believers in hands-on practice, however, having an Azure subscription is not a requirement for this course. Sit back and watch, and feel free to follow along if you'd like.
How long will I have access to the course?
You will have full access to the recordings with your subscription. You watch videos, follow our proven step-by-step process, get results.
The network of individuals I have connected with because of CloudSkills.io is outstanding. The value of the classes, both for networking and for course content was very good. The opportunities I have had because I was enrolled have been astounding to me.@derekschauland
Enjoy unlimited access to all of the courses in our video library. This includes new content every single month, plus live community calls for Q&A and professional networking.
Become part of our online Slack community and engage with your peers, network with like-minded people, and get mentorship from others who are further along in their careers.
Your CloudSkills.io subscription includes access to monthly office hours calls so you can engage with your peers and get your questions answered. Get feedback from Microsoft MVP's and other industry experts.