DevOps – Tech 4!
Article by Prince Boothe, Cloud and DevOps Engineer
5
Introduction
Over the last ten (10) years, the landscape of automation through innovation has evolved into a reservoir of open source tools and services from provisioning infrastructure, configuring applications, deploying containers to managing and scaling micro services within an agile framework that addresses the demand for faster and more intensive operational processes capable of meeting the needs of customers across the world.
The 21st Century Technological Era has entered into a new age with a sequel scripted and directed by the mastermind and star of the show, DevOps. In 2009, the term DevOps was coined by Patrick Debois and Andrew “Clay” Shafer, which then emerged as a revolution bridging the gap between engineers/developers to operation professionals/administrators in creating the perfect cast of characters to provide the ultimate platform with Continuous Integration (CI) and Continuous Development (CD) for customer interaction and satisfaction.
The reality is, most if not all IT organizations have segmented environments for different teams. After a while, especially with a growing infrastructure tailored to meet the increased market demands, administrative overhead, bottlenecks and operational challenges can:
1. Become costly at a premium and
2. Be critically damaging to the health of an institution.
In order for ease of management, DevOps tools can quickly, efficiently and easily at scale, automate and manage the optimization of infrastructure over a development cycle.
DevOps has created many scenes, but today I will focus on four (4) scenes in this film. Tech 4! Lights! Camera! Action!
Tech4!
Tech4 is an embodiment of four (4) open-source DevOps platforms and technologies that are widely used today spanning over a decade. Though separate, they have their own identity and function, however, when intertwined and integrated, they create a beautiful symphony and song with great attraction and appeal. These are Terraform, Ansible, Docker, and Kubernetes.
Tech1! – Terraform

In the first scene of the sequel, we analyze the open-source infrastructure as a code (IaC) tool, Terraform, which was first introduced to the DevOps ecosystem in 2014 by Mitchell Hashimoto et al. Terraform is an orchestration lifecycle tool that uses declarative language to deploy and manage infrastructure components from resources provided by a cloud or virtualization platform.
Terraform does the provisioning of infrastructure through programmatic configuration files that allows an administrator/engineer to automate the build, modification and versioning of resources in a safe and efficient manner, along with the ability to scale vertically or horizontally. Once the file is configured, Terraform will handle the requisite dependencies and provision the infrastructure for the customer.
Terraform can integrate seamlessly with all popular cloud providers such as AWS, Azure, GCP and virtualization platforms such as VMWare and Microsoft Hyper-V, as well as continuous integration platforms like GitLab/GitHub, Jenkins and Bitbucket for deploying DevOps pipelines and containerized micro service tools such as Docker and Kubernetes. However, Terraform supports “immutable infrastructure”, which means the infrastructure cannot be modified once deployed.
Don’t stop the sequel, there is more. Let’s us move into next scene.
Tech2! Lights! Camera! Action!

While Terraform is an IaC provisioning DevOps tool, Ansible, introduced in 2012 by Michael DeHaan, is a configuration management tool used to automate daily, weekly, monthly or yearly repetitive tasks and enable faster application deployments on the provisioned infrastructure. This provides a strategic framework for developers and operators to execute complex multi-level activities by leveraging templates, modules and playbooks as part of configurations governed by schedules to automate resource management of applications, networks, infrastructure, security, containers, etc. based on set best practices and standard compliance procedures. Ansible can be managed and configured, whether using command line interface (CLI) or graphic user interface (GUI).
In DevOps processes and pipelines, Ansible reduces complexity with ease by using simple YAML code configuration files via playbooks. Even though Ansible can use declarative language like Terraform, it is more suited to procedural language for configuration management, and agentless with a master (via SSH connection to nodes) responsible for executing configurations required to manage and update application servers hosted on virtual machines (VMs) or micro-services, whether on a virtualized or cloud platforms, as well as containerized systems.
Based on a schedule, Ansible pushes the most recent configurations using modules to install or update or remove the application or apply standards or benchmarks to same. There is also the option to run ad-hoc commands in Ansible for executing small tasks with speed and efficiency. This makes Ansible able to support “mutable infrastructure”, which means that when changes are necessary, infrastructure can be added, removed or modified.
Wow! That was such an edifying scene in painting a picture about Ansible. A DevOps tool that can move an organization from a state of complexity to ease of management. If you thought that was enlightening, then jump to the next scene.
Tech3! Lights! Camera! Action!
Loading component...
Loading component...
Tech4! Lights! Camera! Action!
Loading component...
Loading component...
Loading component...
Loading component...
Loading component...
Tech4! Lights Out!


