The Why And How Of IT Automation

 

Automation

The world is moving first and whenever you think about fast moving, especially in the IT industry the word Automation came first in most of our minds but what is automation? And how it helps us to move first in the industry. IT automation is the linking of disparate systems and software in such a way that they become self-acting or self-regulating.

Why automation?

Why automation? Why should we automate our system? What is the business impact and how it helps us for faster moving? If we automate our system am I going to lose my job? While the automation process if something goes wrong, then the whole system will be crashed and whose goanna take the responsibility?  From a company owner to employee those are the general question came most of our minds when we think about automation.

The cost of time is high now a days. Everyone is thinking how we can give the best within a short period of time.  Let’s take a scenario of an IT enable company where a web developer bayazid wants to launch a new site for his client and goes to the system team for a server resource. The system team installs the server and then communicate with the network team and ask for the permission to a webserver vlan. The network team asks for the security team for arranging the necessary security check up for the web server.  After that the security team checks the security and confirm to the network team that the system is ready. The network team opens port for vlan webserver and inform the system team that it’s done. The system team inform to the web developer that he can now launch the site. The web developer starts deploying the site and ends up with a 404 page not found error or 403 forbidden error. What’s wrong? The site is quite ok in his laptop, but it’s not working on production. The web developer goes to the system team again and the ball rolls on.  Imagine how much time, energy and effort is lost in just a single purpose. As a result the frustration grows to every team from the customer to the developer, everyone is unhappy. Well after some hours of ball passing between teams finally they can solve the problem and they successfully launch the website. The very next morning, another developer come to the system team for a server resources and again the process start.

To avoid these types of scenario the term DevOps/NetDevOps is created. People from the development team and people from the operation team together build the DevOps team. To avoid the system boundary and to avoid the ticketing boundary between teams, DevOps/NetDevOps team work together, share their knowledge and help people to minimize their repeated jobs in their work place.

Tools for automation

It’s hard, it’s a fad, this will steal my job, my device doesn’t support it and finally I don’t know where to start. These are some common complains about automation.  There are lots of tools available for automation. Paid, nonpaid, open source many choices.  Among those automation tools CFEngine was the first to come on the market around 1993. Those days it was very popular among the system administrator.  Then Puppet (an open source configuration management tools) came on the market in 2005. Chef in 2009, Salt in 2011, Ansible in 2012, Juju in 2010 and many more. If you closely look at the release date of these tools, then you should know that the concept of automation is not new. For many years people are trying to automate things. There are many other tools available in the market, which should be help for people who worked in software development side like Docker (Application container), LXD (system container) etc.  Running system container has some great advantage over running virtualization software like Virtual box or Vmware on the local system. One main difference is if you run a virtual image on a system, then it has its own kernel (I’m talking about Linux point of view cause not all containers are available on windows) and if you launch a Linux container like LXD it’s share the same kernel and thus its launch first.  Yes LXD is first you can build your environment quickly and easily.  You can take snapshot of the container and restore it and finally you can deliver your projects quickly. Happy team happy customer.

Think twice

Sometimes has passed and our web developer bayazid firms finally automate their system and educate their employees about the process. Now what bayazid did now a days, he develops the software then test it on a different platform sitting on his laptop with the help of LXD and Docker container and finally ask server resources for system team for production purpose.  The system is now in a cloud environment and mange by a configuration management tool. The system team made some images which are based on their developer needs, the vlan and security rules are pre defines. It takes less than 5 minutes to launch a production ready server. Bayazid can launch multiple site now a days, which increase the satisfaction level of the team and also the customer.

Precautions are taken manually

Among all good things there are also some bad things of automation. If you don’t handle it properly it can give you the worst result you have ever imagined, and also it can down the whole system. Proper knowledge and experience is required for IT automation.  Team collaboration is a must.  If thing goes well then the level of satisfaction is very high in every level including business impact and employees satisfaction.

Thanks for reading the post. If you enjoyed the post, please share it with your network and let me know your thoughts in the comments. 

About the Author: Imtiaz is working in a financial organization in Bangladesh and having experience in system, network and security administration. Feel free to contact with him on LinkedIn or Twitter

Leave a Reply

Your email address will not be published. Required fields are marked *