When you think about automation, what comes to your mind first? If you’re like most people, it’s the combination of provisioning and configuration automation. When you think about it, even though these actions are often done together, they are actually different types of automation.
Why and how should you zip up your provisioning and configuration automation?
Challenges of Using Provisioning and Configuration Automation Together
Provisioning and configuration automation have very different contexts from which the action gets run. For example, provisioning configuration requires the context to be external to the instance that wish to control. However, with configuration automation the context is internal to the context that you wish to control. This context switching makes it very difficult for one tool to handle both provisioning and configuration.
Provisioning automation happens externally to a systems that you build. This means you must build the environment, manage the resources, and control the system profile. Typically you’ll use tools such as out of band management, IPMI, redfish, a cloud infrastructure, or a Virtualization Manager like VMware vSphere. In each of you’re not actually changing or setting things inside of the system. Instead, you are building the constructs around the system.
Conversely, configuration automation is used to change things inside the system. Configuration automations’ work happens within the scope of the environment. Usually this scope is an operating system. The work includes everything needed so the environment can run workloads. Configuration automation tasks include creating specific settings, building environments, installing applications, and setting firmware control access. The tools used to accomplish these tasksare things like Ansible, Puppet, Chef, and cloud init.
Digital Rebar Makes Zipping Things Up Easy
Digital Rebar is able to do both provisioning and configuration automation. It is also able to use vendor and other popular tools to perform specific tasks if desired. For example, Digital Rebar has world-class provisioning capabilities for physical infrastructure to do out of band management, boot provisioning, and pixie booting. But Digital Rebar relies on TerrForm to do those tasks for cloud and virtualization infrastructure.
Similarly, for configuration automation Digital Rebar workflow system easily performs scaled tasks to do configurations against internal APIs and kickstart files, service interactions, and installs. However, there are times when using existing ansible scripts or a Chef and Puppet infrastructure that’s in place makes a lot of sense.
You Should Zip Up Your Provisioning and Configuration Automation
Keep in mind that with provisioning and configuration automation you’re never just doing provisioning and then configuration. Digital Rebar’s unique design creates infrastructure pipelines that you have to go back and forth between these two types of automations.
Provisioning and configuration automation are not neatly segmented efforts. In order to support the business, you must do provisioning and you must do configuration. The best practice is to do some of each, intermixed like a zipper. Do some provisioning and some configuration, then go back and take information from the configuration to do more provisioning. Use that information to do more configuration.
Robust, resilient, and portable designs for infrastructure pipelines require us to have provisioning and configurations mixed together as an ongoing continuous process, rather than to try to segment them into provisioning automation and then configuration automation.
Real Talk
Our experience working across the industry shows that the easier it is to mix provisioning and configuration automation together, the more resilient the systems will be. On the other hand, we’ve noticed that the more you have to separate them, the more brittle and fragile those systems become.
At the end of the day, understanding the need to mix and match provisioning and configuration automation is important but it’s only part of the story. The real benefit comes from understanding that these are just two of the multiple types of automation that you have to accomplish to build infrastructure in an ongoing, maintainable way.
Interested in seeing what zipping up your provisioning and configuration automation would look like? Why not try Digital Rebar out for yourself?