Ansible vs Puppet vs Chef

Ansible-vs-Puppet-vs-Chef-ipcisco

Ansible, Puppet and Chef Comparison

 

Network Automation is one of the most important focuses of Network World. To be one step further, it is very important to learn at least one of these Network Automation Tools. In this lesson, we will compare most popular three of them. We will see Ansible vs Puppet vs Chef.

 

There are three Network Automation Softwares that are widely used in network World. These Network Automation Tools are :

 

Some of these automation softwares has advantages over another one. They have both similar and different characteristics, features. So what are these similarities and differences? Let’s check each of them one by one.

 

First of all Ansible has an Agentless architecture. They do not need any agent at the remote managed device. With this arhitecture, many Cisco devices support Ansible. Chef has an Agent Based Architecture while Puppet has both of them. If Agent Based Architecure is used, then an Agent exist at the remote amanged end.

 

Ansible-vs-Puppet-vs-Chef-ipcisco

 

Another important difference is about the mechanism used by these Automation systems.If we check Ansible vs Puppet vs Chef, Ansible uses Push mechanism while Chef and Puppet use Pull mechanism.

 

As we have talked about before, there are different files are created before operation in Network Automation softwares. The third difference is about these files. Ansible uses Playbook that contains what to do.  Puppet uses Manifest for this role. And Chef uses, Recipe to list the network automation actions.

 

Another one is abut directives. For directives, Ansible uses Tasks. Puppet and Chef uses Resources term.

 

These automation tools work with a Master and a Children mechanism. In Ansible, master is Ansible Control Machine and the children is Hosts. In Puppet, master is called Puppet Master and children is Agents. And for Chef, master is Chef Server and children is Clients.

 

 

The configuration languages of Ansible are Python and YAML. This languages for Puppet are Puppet DSL and Embedded Ruby (ERB). Chef uses Ruby DSL (Domain Specific Language).

 

Another difference is for installation process and initial setup. Ansible installation and setup are easier than Puppet and Chef. And if we compare Puppet vs Chef, Puppet installation and setup are also easier than Chef.

Lesson tags: network automation, ansible, puppet, chef
Back to: CCNA 200-301 > Automation and Programmability

2 Responses to “Ansible vs Puppet vs Chef”


Leave a Reply

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

CCNA 200-301

Collapse
Expand