InfraCode's Terraform Content Guide
In the past year, we’ve published a number of articles on different subtopics on Terraform and DevOps. If you’re looking for a quick summary of our content, use this guide as a quick-start.
At InfraCode, we’re dedicated to providing you with up-to-date content about Terraform and DevOps. In the past year, we’ve published a number of articles on different subtopics on Terraform and DevOps. If you’re new to InfraCode and looking for a quick summary of our content, use this guide as a quick-start to find exactly what you’re looking for.
This guide will be updated periodically to include new content, so be sure to bookmark it!
In this guide, we’ll give a brief overview of each piece of content we’ve written along with the most important details for each.
-Terraform Tutorial Guides
-Terraform for Business
-Stay up-to-date with the latest Terraform news
-What we’re working on at InfraCode
If you’re looking to get started with Terraform, you’ll need a good guide. Unfortunately, much of the current information about Terraform that’s available is either poorly organized or poorly explained. We’ve taken each of these Terraform topics, and broken them down into easy to digest pieces.
Best Tutorial Guides
Terraform is an open-source tool that allows users to create, modify, and delete infrastructure on the cloud, using the declarative HashiCorp Configuration Language (HCL). Infrastructure as Code (IaC) uses a descriptive model to manage infrastructure. The most important commands to know to deploy infrastructure include:
Terraform Tutorials: Frequently Asked Questions
In this introduction to the world of Terraform, we break down frequently asked questions into short questions and answers. These questions include “what is Terraform?”; adding sensitive information to a configuration file, and “what is a Terraform state file?” It’s even possible for you to contribute towards the development of Terraform since Terraform is open-source.
An Introduction to Terraform Templates
“What is a Terraform template?” is a question that we’ve seen asked a lot. And we’re here to help. A Terraform template defines the state of your infrastructure and consists of variables, resources, and modules. Terraform templates have blocks (containers), comments (self-explanatory--the ability to add comments to define the function of your code), arguments (name and value pairs within a block), and functions (pre-built by Terraform).
Find the full article.
An Introduction to Terraform Variables
There are three types of Terraform variables: input variables, output values, and local values. Input variables act as pairs are found in either the root or child modules, and allow for customization of the Terraform module. Output values are the opposite of input variables and are values that are returned to a parent module from a child module. Local values are “local” to a module. We also dive into how to assign values to your Terraform variables, in different ways.
Continue reading about Terraform variables.
Beyond the Basics
An Introduction to the Terraform State File
A Terraform state file stores the configurations or resources that you create or modify on a cloud provider, in JSON format. You’ll find it during the “apply”; “plan”; and “destroy” commands. The Terraform state file keeps track of resource changes, as well as resource dependencies, and can be modified and inspected. There’s also the option to work off a remote Terraform state, which can solve problems between teams that are updating files, and may end up with mismatched updates.
Check out the full piece on Terraform state files.
Terraform AWS Beginner’s Guide
If you’re looking to spin up your infrastructure using AWS, this is the guide for you. While AWS provides you with the platform/features to get started building your infrastructure, you’ll still need to choose a tool to spin it up--and that tool is Terraform. We go over the basics of setting up your infrastructure with AWS, creating Terraform templates specifically for AWS, how to allow for HTTP traffic, as well as the commands to spin up an AWS server.
Complete Guides to Terraform
If you’re still looking for more information on Terraform, we’ve put together “complete guides,” which are the most important parts of the articles above, summarized in one piece. These are resources for you to bookmark and come back to, as you build your infrastructure and learn about Terraform.
For an in-depth look at Terraform, check out our:
Complete Guide to Terraform, Part 1 (The Basics)
Complete Guide to Terraform Templates and TfVars, Part 2 (Beyond the Basics)
Terraform Best Practices- 5 Pieces of Advice for DevOps
While for many organizations, it’s tempting to jump into Terraform (after all, it will improve your IT infrastructure). However, before taking the leap, there are a few best practices to consider, such as making sure your team has ample buy-in around the concept of DevOps, as well as modularizing your environment before implementing Terraform. If you’re an organizational leader in the process or considering integrating Terraform into their infrastructure, check out this article.
Terraform Tooling for Small and Medium Businesses
As a SMB, there are a number of Terraform tools available for you to utilize. We take a critical lens and examine Cloudcraft’s tool to diagram AWS infrastructure, Gruntwork’s suite (and the accidental technical debt that may accompany it), Scalr’s controversial release, and InfraRapid, our first attempt at an Alpha open-source library to generate custom Terraform templates from YAML files. These are our opinions on the current state of the tools and the pros and cons of each. We encourage you to check out the article and let us know your thoughts.
Putting It All Together--A Basic Theory
While this article isn’t meant to give you a technical overview to spin up your own configuration, it goes over the core components of Terraform--a must-read for business owners and those working adjacent to DevOps, but aren’t necessarily responsible for spinning up infrastructure. DevOps is the combination of people and processes--but as those processes continue to grow and become more complex, it becomes more difficult to replicate them. Terraform builds on top of infrastructure to help speed up processes and free up time.
Explore the basic theory of Terraform
Terraform 2020: Taking A Look Back at Updates
DevOps has continued to evolve in 2020, including Terraform updates. In these updates, you can expect to find important changes to Terraform modules and a new focus on the Terraform state file. We dive into these changes and what exactly they mean for Terraform users. In addition, we predict the likely changes to Terraform in 2021, such as changes to sensitive values and hopefully a fix for Terraform imports.
If you work with Terraform, stay on top of the latest changes in this article.
DevOps Trends for 2021
As DevOps continues to grow, we look at the trends that we expect to continue into 2021, including a growing DevOps ecosystem, increased interoperability in the toolchain, and an increased emphasis on DevOps and machine learning/AI startups. These trends will force DevOps to rapidly evolve and get smart--fast. Many of these trends are healthy for the DevOps ecosystem, and we hope to see them up-front and center in 2021.
Meet InfraRapid, Infrastructure as Code at Your Fingertips
Who is InfraCode? We’re creating Infrastructure as Code tools, built on Terraform, that simplify the lives and work of DevOps professionals. Our first tool is a reactive CLI that allows users to spin up cloud infrastructure without using a code library to execute their projects. We’ve built a CLI that can output a customized HCL file that meets your needs. Of course, this project didn’t come out of thin air--with HashiCorp’s Terraform boom, the stage has been set for this type of work. And, this is only the beginning for InfraCode.
As we mentioned above, InfraRapid is only the beginning of a vision to make Terraform easier to use, with more efficient workflows for teams. Stay tuned for our next big piece of news, coming soon!