- What should people know about Ansible? Why is it important?
As software developers or system administrators, we are all aware of how challenging it is to keep application deployment and server management efficient and reliable.
System administrators at one point in time used to manage servers by hand. This obviously included installing the operating system and keeping it up to date, installing the software needed for the application to run, changing the configuration for application deployment, and a myriad of other tasks.
Manual system management simply doesn’t work anymore. The presence of cloud infrastructure has changed everything and made almost every part of the infrastructure dynamic and scriptable. This is where Ansible kicks in.
Application development, now being very agile, has become quicker, as the time to market is one of the key factors. Software releases have become more frequent, and the scalability and elasticity of the applications are requiring an effort that can no longer be managed manually.
In simple terms: everything is more complex, bigger, and faster! This is why configuration management tools such as Ansible (and others: Puppet, Chef, and SaltStack) came to thrive as solutions to the problems I just mentioned. The big change is that the infrastructure automation is now treated as any other software development code (infrastructure as code), versioned and kept maintained.
Ansible is a platform that can be used for infrastructure provisioning, configuration management, and application deployment. In all these tasks, Ansible excels by offering a nice orchestration to align the various parts neatly.
It has a wide community of users, and it’s enterprise-ready. Needless to say, it is also open-source and free to use!
- When did you first become interested in Ansible?
I have been aware of the Ansible for quite some time. However, it got my interest when, in a project, we started utilizing a cloud platform (in my case Microsoft Azure). Ansible (and SaltStack) in particular got my project team’s attention and those two technologies were embraced.
With Ansible, we enabled the standardization of the infrastructure provisioning and deployments as part of a wider DevOps initiative. The ease of the scripting language is something that enables us to work quite smoothly and the power and integration with other technologies are impressive.
- By writing this ebook, did you learn anything new yourself?
Certainly. There is always something new to learn. Ansible, while quite easy in terms of semantics and scripting, has a huge number of options and possibilities. While working on the book, I had to do quite some research in order to provide the best possible information to the reader by giving other possible options (to the ones that are the most obvious or that I am used to).
Another quite interesting thing to mention is that organizing this book was probably the most challenging part. Organizing infrastructure and automation topics is a difficult task. I didn’t want the book to become merely a documentation reference for the various features; the intention was to give the user the context on how actually to use the tool itself. Given the nature of the book and the many options that Ansible offers (that are not even mentioned in the book), the reader will need to look for additional information, anyway. However, this book should offer a solid starting point.
- How will Ansible change over the next few years?
There is quite a competition out there, however, it looks like currently Ansible tops the list of configuration management tools. In my opinion, it will hold the top place for a few more years.
The main reasons for Ansible to stay on top are its simplicity and the use of a simple syntax written in YAML called playbooks. Being YAML human-readable helps the adoption of the tool. Another cool thing is that Ansible doesn’t require an agent to be preinstalled in order to work with it.
It’s hard to predict which direction will Ansible take, however, Red Hat has embraced Ansible and it’s building tools around it, such as Red Hat Ansible Automation Platform and Ansible Tower, which are tools targeting enterprise usage.
Perhaps the emphasis is going to be on making it even more enterprise-oriented and better supported in the future.
- Do you see Ansible as part of a larger trend in software development?
DevOps is a trend that is catching up to, if not fully embraced by, practically every company that implements software. Ansible is one cog that enables DevOps practices to be implemented. Infrastructure as code is a big topic and it is transforming the way we treat infrastructure from being merely static to something highly dynamic. Ansible is certainly part of it.
- What other books or resources on this topic do you recommend?
My primary source of information is certainly the very well-written official Ansible documentation. I am quite impressed by the effort put into building such rich and efficient docs.
- How do you stay up to date on industry news?
It’s not an easy task, as today we are practically bombarded by a lot of information, which one has to filter through. For quite some time, I have been mainly focusing on a few IT portals that earned my “trust” and following topics such as software architecture, development, and DevOps in general.
- Do you have a blog page or a website where people can find you?
I used to run my personal blog on www.agile-code.com, where I wrote about software development topics and trends. However, running the blog actively, though it was quite a success at the time, was really time-consuming. So, unfortunately, I had to abandon it.
If you enjoyed this article, we think you may also like: