Yes, and everyone should be doing it

As a sysadmin, infrastructure as code simplifies many aspects of your daily job. As the saying goes, if you repeat any task frequently you should automate it. And that is essentially what IaC does for sysadmins. Automates the initial configuration, deployment, patch management and configuration drift of your servers and/or infrastructure. There are lots of different tools to do this, which I will briefly touch on later in this blog post. Before diving into the tools and tech around IaC, let me answer a few questions.

Why are companies going to the cloud?

As we start a new century, the mandate to go to the cloud will be getting stronger, if not a requirement. There are a lot of advantages for doing this.

  • Get out of the data center business. Focus on business growth.
  • Agility and flexible growth. You no longer need to buy extra capacity, grow as you need.
  • Cost savings (VERY RARE). Most of the time CapEx spend will be the same. But if cloud spend is an OpEx budget item, you’re golden!
  • Access to cloud based services is easier. So pay attention to the cloud you are consuming IaaS from.

If you are not under any of these mandates, you should still be building a very active plan for going to the cloud. From my experience, as a cloud sales engineer for VMware, I see a strong push to get out of the data center business.

Time to get out of the data center business

As you start consuming resources in the cloud, the way you do your job can change very quickly. Most cloud vendors will tell you that at the infrastructure level you are simply lifting and shifting your virtual infrastructure from on-prem to the cloud. So everything you do should stay the same. Well, to some degree yes, but what is not always real obvious is that going to the cloud means you are consuming the physical infrastructure as a service and not managing it yourself. Which also means you lose control of all the “little” things that you used to do like installing, configuring, fixing, or maintaining the physical infrastructure. You just consume it as a service. But isn’t that the reason you are going to the cloud anyway?

So when will you be out of a job???

Again, you will NOT lose your job if you are willing to change things up a little bit. Instead of racking and stacking physical hardware, you build infrastructure with scripts. Which is something you are hopefully doing today, most likely through the GUI of the virtualization engine you are using. A much easier way to do that is by using some IaC tools. There are many tools both free and paid-for that can help you very quickly get started.

What tools are available?

Here is the latest list from the Cloud Native Computing Foundation (CNCF) landscape. The biggest advantage these tools bring is configuration management. That may sound simple but lets think about this a little more. When you build a system, you build it to a certain set of criteria. We have all use and created build documents, right?! These tools allow you to put that sets of criteria in a configuration file, run the tool of your choice against that configuration file and now you have that system build automatically! Remember, if you repeat a task frequently automate it. DONE!!

But wait there is more, DRIFT

Now that the system is built, what is one of the worse things that can happen. Something changes on it, or the configuration “drifts” from the original config. These tools have the ability to detect the drift and bring the system back to the config it was built from. Now you can keep your systems and/or infrastructure configured to the state of the configuration file. So you can detect change and fix it, great! What happens if you want to make a mass change and don’t want to touch each system. Well, let’s think about it. You want to add a patch or new service to every system that is based on the configuration file. Make the change to the config file and push it to all the hosts. Boom, updated every system with a quick change to only the config file. See how powerful IaC and these tools can be? That is why everyone should be doing it!!

What’s next?

I will dig into a couple of these configuration management tools, compare and contrast and show you how to use them.

Leave a Reply

Your email address will not be published. Required fields are marked *