ansible vs puppet: comparison guide - shadow-soft · ansible vs puppet: comparison guide 3 •...

10
Ansible vs Puppet: Comparison Guide

Upload: others

Post on 27-May-2020

28 views

Category:

Documents


0 download

TRANSCRIPT

Ansible vs Puppet:Comparison Guide

2Ansible vs Puppet: Comparison Guide

Table of contents

Infrastructure Automation

Ansible

Puppet

3Ansible vs Puppet: Comparison Guide

• Streamlines the delivery of software and applications.

• Can be used by management and engineers to check which components have been changed and why.

• Helps with quickly identifying bad configuration changes and allows for rollbacks.

• Helps developers with debugging to check if configuration changes impacts the product’s functionality.

• Complexity of deployment

• Domain-specific language (DSL) usage

• Distribution model - Agent vs agentless - Push vs pull

• Environment integration requirements - Various support level per OS

• Product maturity

• Community relevance

Why Infrastructure Automation

Considerations

INFRASTRUCTURE AUTOMATION

4Ansible vs Puppet: Comparison Guide

• Simple automation language that can perfectly describe an IT application infrastructure in Ansible Playbooks. No database or daemon required and only needs to be installed on one machine (or laptop).

• Ansible Tower is an enterprise framework for controlling, securing and managing your Ansible automation with a UI and restful API.

• Any machine with Python 2 (versions 2.6 or 2.7) or Python 3 (versions 3.5 and higher).

• Includes: RHEL, Debian, Centos, Fedora, Ubuntu, OS X and any BSD based environment out of the box.

• Windows isn’t supported for the control server.

• No agent

• Idempotent

• Declarative not procedural

• Small learning curve

ANSIBLE

Ansible is an Open Source IT automation engine. Ansible can automate cloud

provisioning, configuration management, application deployment, and

intra-service orchestration.

Ansible at a Glance

Control Server

Ansible Benefits

5Ansible vs Puppet: Comparison Guide

• Python 2.6+ supported.

• SSH and SFTP (or SCP) used to manage system communication.

• Windows support is driven via Powershell via winrm.

• Uses OpenSSH when capable.

• Will fallback to Parmiko for older machines.

• Platform consisted of apps for iOS, Android, and Web, and a joint backend API that supported them. The infrastructure was hosted on AWS using Ubuntu 12.04 LTS.

• They used another tool and various bash scripts to manage app deployments and remote commands execution.

• It was definitely a big problem provisioning and managing multiple environments and the differences between them.

• Needed a simple and powerful tool for configuration management, application deployment and server provisioning.

Lifesum is a Stockholm-based digital health startup that offers its users a flexible platform to support and

encourage a healthy, balanced lifestyle.

Ansible Tower - Tame Your Infrastructure

Ansible Case Study

Ansible Architecture

Business Challenge

6Ansible vs Puppet: Comparison Guide

• Started using Ansible in February 2014. Soon every back-end and frontend engineer at Lifesum started using Ansible playbooks to automatically spin up virtual development machines with Vagrant.

• Three months later all of their environments, from developer’s laptops to production instances on Amazon, were fully Ansible managed.

• Ansible roles and playbooks started being reused in various scenarios.

• Ansible also aided them in ad-hoc remote commands, both across the whole infrastructure, and in specific environments, such as minor configuration changes and services administration.

• Ansible allowed them to focus on getting things done well in a timely and reliable manner, instead of spending time learning to use the tools.

• Agentless design allowed quick adoption.

• Application deployments became an easy and smooth process.

“The greatest thing about Ansible and having infrastructure as code is that every instance can be rebuilt and

reconfigured within minutes instead of hours.” - Lifesum

Ansible Customers

Solution

Results

7Ansible vs Puppet: Comparison Guide

PUPPET

Puppet gives you an automatic way to know, control, secure and modernize

everything you have, no matter where it runs!

• Well-established community support through PuppetLabs.

• Most mature interface that runs on nearly every OS.

• Simple Installation and initial setup.

• Most complete Web UI.

• Built-in reporting capabilities.

Why Puppet

1. Define the desired state using a powerful, declarative language. Choose from thousands of pre-built modules.

2. Simulate changes before you deploy them.

3. Enforce changes and remediate configuration drift.

4. Report and gain insight into your infrastructure.

The Puppet Approach

8Ansible vs Puppet: Comparison Guide

• Puppet Application Orchestrator

• Puppet Node Classifier

• Role-Based Access Control (RBAC)

• Puppet Server & Reporting Engine

• Code Manager

• Supported Installer and Modules

Puppet Enterprise

If it has an IP address, you should be able to automate it!

Puppet Case Study

Staples Inc. is the world’s largest office products company and one of the biggest internet retailers. The

company opened its first store in 1986, began offering its stock publicly in 1989, began selling online in

1998, and has grown to $22.5 billion in annual revenue.

• Staples wanted to automate their private cloud used by application development teams; create self-service provisioning for developers; and speed up deployment cycles.

• They wanted to turn to the cloud to speed up application delivery. They hoped the cloud could deliver VMs quickly and efficiently so developers could focus on developing business value.

• A private cloud service for the company’s development teams consisting of thousands of virtual machines in multiple data centers.

• Private cloud runs on Red Hat Enterprise Linux.

• Using Red Hat Satellite, Apache, Tomcat, NodeJS, MongoDB, Oracle and Redis.

Business Challenge

Starting environment

9Ansible vs Puppet: Comparison Guide

• Puppet was implemented to automate cloud management & create a PaaS-like provisioning service.

• Puppet automated common IT operations tasks to provide consistency.

• New solution freed up IT team to innovate.

• Deployment cycles went from weeks to hours, from days to minutes.

• Developers can provision their own environments as needed.

• Automated systems management makes IT ops teams faster & more efficient.

• Increased stability and reliability.

Solution

Results

Atlanta, GA www.shadow-soft.com770-546-0077 ||

Since 2008, Shadow-Soft has been evangelizing and deploying open source software and open standards

to help customers “take the power back” from their technology vendors. Shadow-Soft provides consulting

and managed services across three specialties: DevOps, Application Infrastructure, and Cloud.

Contact a consultant and let us be your technology guide.

770-546-0077

shadow-soft.com or email [email protected]

Puppet Customers