From the course: Learning Ansible

Advantages to using Ansible - Ansible Tutorial

From the course: Learning Ansible

Start my 1-month free trial

Advantages to using Ansible

- [Narrator] Earlier in this course, I made the statement that Ansible was the most celebrated management tool in all of GitHub. And this is true, but why is it so, I mean, we know it's easy to use, and that's probably going to help out. But there are other advantages that we need to present. In fact, it's not only easy to use, but as you're going to experience in this course, it's easy to learn. So with a short small learning curve, that really, really helps the adoption of Ansible. And Ansible itself is composed in Python and this makes the Ansible product very Python friendly. Python, in case you haven't noticed, is quickly becoming the most called upon programming language in the world. And it'll be interesting to see how long that is the case since these things kind of ebb and flow. But right now Python is king and the fact that Ansible is written in Python is a huge advantage. But I would have to say one of the biggest overall advantages is the fact that Ansible is Agentless. This is hugely important for us, because it can be very tricky to install an agent on all of these different nodes that we propose managing with some management tool. In fact, it can be oftentimes brutally difficult, especially when we have systems that are really locked down and that don't install software with ease. Some more advantages include the fact that when we write critical components like playbooks, they're in that simple YAML format, and also we love the fact that Ansible is so used around the world, because there is folks that are contributing to what Ansible can do for you all the time. This is represented in the very popular website called Ansible Galaxy, where contributors all over the world can upload what are called Roles that will help us become successful with Ansible no matter what it is we're trying to achieve. Here we are at the Ansible Galaxy website and you can see right on the main page, we can go in and choose a category that we might be interested in. And it seems like every time I come in here, I see something cool. So in the networking category, here is an Ansible module for GNS3 and this module allows you to automate the GNS3 tool, which is a router simulator. So if you're interested in simulating network routing, you could use GNS3 and if you're interested in automating that now we have a module for GNS3. Thanks to the contribution of some wonderful user out there that is helping the world one module at a time. So there's modules that are uploaded here there is roles. And while we're here, let me just quickly explain to you what a role is. A role is a downloadable component that you install in your Ansible system and it's got all of the ingredients that would be needed in order to do either simple or even sophisticated automation and orchestrations. So, a role is a way to package everything up that you would need and distribute it and then plug it right in to Ansible. Now I said plugin there, and we shouldn't confuse Ansible roles with plugins that we mentioned earlier. So just keep those two distinct in your mind they are separate things. A plugin extends the functionality of what Ansible can do, where as a role is going to be something that was developed by the community out there typically, and it's for just executing within the Ansible environment, things that you want to do to your nodes. So subtle differences there but important differences.

Contents