There is no doubt; the word bumping inside my head in the last year was “Automation”. Automate everything; being obsessed with repeating tasks over time in the IT Operation context is crucial in having success when building a stable and well-thought infrastructure.
But, what is behind process automation, or simply managing IT Operations and configurations?
A real-world episode: think about a toy robot singing your baby’s favorite nursery rhyme, instead of yourself or your partner. Of course, the song would sound perfect rhythm and exact text, but after a few weeks your baby would recognize it and would get bored soon. That is the time to learn a new song or invent another one, or at least, modify it in a whole new fashion! That’s why some toy robots are capable of performing so many tasks today (they sing, move, dance, cry, “eat” and “drink”, interact in similar ways we humans do!).
The same issue has been experienced with automated material handling and processing equipment industries. Capabilities just increased in number and complexity.
Automating one single process is not enough!
And that is the reason why we find next to the term “automation” also terms like “orchestration” and “configuration management”.
The following is one of the numerous definitions of word “automation” I found in web:
Automation: “The technique of making an apparatus, a process, or a system operate automatically”
There is no surprise about the worries on the future and rising AI in some industries (especially manufacturing); the impact will be transformative and will cause a drastic shift (let’s think about truck drivers who one day would not have to drive anymore “thanks to” driverless cars!).
However, what seems fundamental, and surprising to me, are the actions to take in order to know how to deal with this game changer. I understand it is certainly a tough challenge. And time to think about it has come!
Of course, the resulting minor labor for people (blue-collar job positions according to recent USA researches) would be threatening if nothing is done in the meantime. The strategies are numerous: from starting to train high-skill profiles to managing new technologies to immediately introduce new plans for future businesses, future services and products.
The point is: Start now, experiment as soon as possible.
Organizations need to embrace as soon as possible the automation of business processes.
Enabling the assets (it could be software or hardware or a combination of both) to take some well-defined actions, would put us in a very privileged position.
Mostly because of the following rising facts:
- Obtain a status of high-level responsibility when designing architectures that are more effective and reliable.
- The chance to preserve a kind of social ethics (a lot of discussion also going on about human relevance and social consciousness) when building artifacts through automation.
- Preserving a human-centric attitude, I always used to remember myself “Do not automate ignoring usability and values”.
- Short time in responding to business needs (and so, more wealth and lower expenses).
Releasing dedicated employees from certain IT Operation actions, we gain time to think creatively about other stuff.
Treat your infrastructure as code.
Even if you do not have experience in Configuration Management in the Cloud (though I strongly suggest to try by yourself one of the available tools: AWS CloudFormation, Cloudreach Spectre, Red Hat Ansible, HashiCorp Packer, Chief…
The idea of something that records, that captures in the background, all your IT Operations and development tasks, in a traceable and secure way, fascinates all of technology admirers.
Managing resources from a simple text-based editor and a human-and-machine-ready language (JSON or YAML) in a versioned fashion is disruptive.
What to automate first?
The trick is starting from a small set of applications (examples are: automate SQL queries, storage backup, services restart, log monitoring, alerting, freeing up disk space, provisioning resources in the public Cloud, customizing snapshots/images when launching VM, installing most common services on servers…) and then increase complexity when adding whole frameworks and correlate them together. Finally, automate the traceability!
The surprising outcome is that bringing all these features together would create a perfect habitat for orchestration and you have all the instruments to manage systems lifecycle!
In the past, having to write docs and notify teammates about changes in the Cloud environment, customizing and developing code, sharing content about provisioning (and de-provisioning) Cloud Computing resources is accompanied with confusion, synchronizing problems, repeatable actions (vulnerable to human errors), lots of emails and of course time-consuming.
Thinking well about automating, putting down the necessary steps with the tools you prefer and then making it independent brings unpredictable success. It lets you focus on other arguments (multi-cloud deployment, increasing efficiency, training staff, think creatively).
No easy job out there: to automate you should bring qualities from a wide range of technical areas, but also soft skills to think 360-degrees about building autonomous systems. It should not be the final purpose of the mechanism and it should always look for optimization and extension.
As I mentioned above, automation asks for responsibility and social consciousness. It also boosts from cross-functional professionals with creative mindsets.
And there is no surprise: they get obsessed with automation, they look for shapes of digital perfection when orchestrating IT resources. In addition, making different things work well together and independently seems likely an artistic approach.