It goes without saying that in order to be competitive, companies must increase their speed of IT delivery and are required to become more agile.
- Automation is key for optimization and digital transformation.
- Modern, dynamic microservice environments need to be able to scale faster than ever and IT automation is vital to making that happen.
- Infrastructure is no longer static. It is changing all the time at a speed that can’t be supported with traditional mechanisms.
Getting to your nirvana can be a big task but with clear concise goals, consistent frameworks, and engineers eager to learn, anything is achievable.
Gone are the days when building a server would take months. Everything is on demand now. In addition, IT organizations now deal with giant fleets and more nodes to manage than ever. New development standards need this kind of agility and cannot wait for manual tasks and long cycles. The rewards are plenty when they are replaced with a fully automated process. Integration eliminates human error associated with a workflow and enables business continuity and predictable deployment processes for when your ninjas go on vacation. Overall, this reduces cost of operations while freeing up administrator and engineer time, all big wins for the business and IT teams. Let’s take a further look at some of the principles of automation.
Our experience says nothing breaks twice the same way. Teams need to know exactly what steps are being taken. Keeping them consistent helps with easier diagnosis and faster resolution time. Managing configuration drift, keeping the desired states and having consistent governance across your stack allows for ease of transferability within your organization. This way companies are prepared when the bash greybeard heads to greener pastures. A consistent framework lets you do just that.
Putting some automated processes and a rules engine in place lets everyone know where the process is, who is responsible for the next task and can automate tedium that takes an expensive engineer all day to do when a computer can do it in seconds. In past experiences, processes that took 3 weeks have been reduced an order of magnitude to three days when you get rid of emailing back and forth and the need for a human to do simple process management. This leads to increased efficiency and increased customer satisfaction. And highly-paid people are used to do high-quality tasks. It CAN be difficult and expensive to get everyone in a company to agree on process and sit in a room, but if handled well, it pays back in spades over the long run.
Building smart automation needs to take into account complexity as well as the robustness of your tasks. It does not make sense to spend all this time programming automation, then the process breaks and now your engineers are constantly spending the time constantly fixing something that was a manual quick task. The solution is to incorporate idempotency to ensure no matter how many times your process is run it will provide the same result. Configuration management tools are optimized for scaling and to expected be run hundreds of times.
When creating automation you want it to be verbose enough to let you know what’s happening in the background and not overwhelming so it can be used for Root Cause Analysis without having to read logs for several days. Running a script and letting it do its thing without any notification is fine for simple scripts, but for advanced tasks, verbosity is an absolute necessity. Knowing at what stage you are getting fails can mean a lot less time finding the issue, saving time scouring logs, etc.
In our next post we’ll talk about where to start with automation.
Crossvale Red Hat Consultant, RHCSA