Buzzword bingo for software automation

Posted by John Morada on Nov 10, 2019 9:00:00 AM
Find me on:

Infrastructure as code (IaC) delivers the promise of agility and speed to IT Ops teams as well as developers. Yet new terms seem to be blended or, worse, misused in the context of what value can be achieved.

I know this is the time of year when our inboxes get filled with messages about "2019 in ERP Software in Review" or "Top 10 Apps for 2020." And that is perfectly fine considering many vendors are looking to get on your radar before the holidays so you can start the new fiscal year budget with the seeded idea of their tech or software. But before you get too distracted with visions of mother's pumpkin pie or the taste of holiday-party eggnog, let's list a few key terms you need to start off the new year in the right way.

The right context is important

This blog post is relevant to engineers who use, manage, build, or deploy automation tooling to get their job done. We feel it is important to have a dialogue based on a consistent understanding and definitions around practices associated with infrastructure as code. In this way, we advance the topic of software automation in 2020 without the struggle to redefine what we mean by it.


Infrastructure curation


According to the Merriam-Webster dictionary, the verb of curation is "to pull together, sift through, and select for presentation." The equivalent use of the term for Ops engineers is the action, process, selection or analysis of the appropriate infrastructure software needed to run the business. Given that the CNCF landscape at the time of this writing has 1,261 cloud-native technologies, we completely understand the challenges Ops teams face in not only keeping up with the tooling but then to effectively analyzing and choosing the right ones for their company. Curation is a very important first step.

We understand this better than anyone since we, too, run our infrastructure on Kubernetes. By already having gone through the effort to curate the right bits, we mitigate the risk and effort our customers incur by trying to do this alone. Our platform embeds the expertise of our engineering team and site reliability engineering (SRE). And within our Service Catalog, we make it easy for engineers to choose the tooling they need. Service catalogs or product catalogs that enable developer self-service are commonplace within most enterprise-class platforms.

Devops laptop_3800x2200



Infrastructure orchestration


Wikipedia (Orchestration (compute)) says it best: "Orchestration is the automated configuration, coordination, and management of computer systems and software." What is nice is that I do not have to define the term, yet I do find it nebulous. Allow me to take creative license and qualify infrastructure orchestration for our Dev and Ops teams with three points:

  • Tooling is certainly ubiquitous. Independent tools - such as Ansible, Puppet, Salt, and Terraform - were created to ease the pain of rampant private scripts in every IT shop in the world. In the public cloud, we have AWS CloudFormation, Google Cloud Deployment Manager, and Azure Automation just to name a few.
  • A caveat to consider is that all of the tools listed here require an engineer to write the commands, code, playbooks, recipes, etc. How Agile Stacks is different is that we write the code for you, and give you the resulting .yaml file in a Git repository. Our platform curates many of the underlying Kubernetes components needed to make it work properly. Then our automation writes the code to seamlessly orchestrate the configuration, deployment environments, security, etc. of Kubernetes and other tooling.
  • Automation generates very little value if each environment is slightly different from the next. Templates create a repeatable and reusable method for standardizing orchestration. Dev and Ops engineers alike will benefit from environment setups that are consistent and trusted.


Infrastructure composition


The sum of all moving parts is the composition of the final, deployable stack of software. Infrastructure composition is the workhorse needed to build and deploy your software stack. An API-enabled infrastructure and modern tooling encourage a structured, engineering-driven approach to infrastructure & operations (I&O) automation. This increases agility and quality, and it shrinks time-to-value in ways similar to how agile practices have done so on software product development.

Taking it one layer down, the life cycle for IaC is based on the software development life cycle. Setting standards for version control, automated testing, and release processes are just a few of the ways we embed appropriate practices in our templates to bring customers agility and reduce their risk.

Piecing together your curated choices with templated orchestration means composition has the necessary ingredients to deliver secure, scalable, repeatable, and consistent compute environments. Agile Stack's Automation Hub performs this herculean effort across multiple cloud providers and on-premises hardware. The value of automation as implemented through IaC achieves three main benefits: cost reduction, agility, and reduction of risk (by removing errors and security violations).

Out-of-the-box curation and composition of your software services has never been easier.


Wrapping it up

When you deploy and redeploy your infrastructure 10 to 20 times a day, you can’t survive without IaC. Feeling like you can step away from monitoring your infrastructure, and actually get to the office holiday party means you have to trust that your stack build won't fail. Discussing software automation probably won't be top of mind as you talk to co-workers over a slice of cake. Let the automation do what it is supposed to do. Relax and grab that red Solo cup of eggnog. But in the event a colleague decides to secretly play buzzword bingo with you - just have these key terms and definitions ready in your back pocket to show you're on top of your game.

Topics: Application Composition, Application Templating, Component, Component as a Service, Component based software engineering, Component Software, Componentization, composable, composition, DevOps, Ecosystem, Enterprise Applications, Enterprise Architecture, innovation, IT configuration management, open source software, OpenSource, Service Oriented Architecture, software development, Software Engineering, source code management, Full Stack Deployment, DevOps Automation, Infrastructure Automation, Kubernetes

Subscribe Here!

Recent Posts

Posts by Tag

See all

RSS Feed