Ansible in Depth WHITEPAPER. ansible.com

Similar documents
IN DEPTH INTRODUCTION ARCHITECTURE, AGENTS, AND SECURITY

AGENTLESS ARCHITECTURE

Cloud and Devops - Time to Change!!! PRESENTED BY: Vijay

INTRODUCTION WHY CI/CD

Get Automating with Infoblox DDI IPAM and Ansible

MULTI CLOUD AS CODE WITH ANSIBLE & TOWER

Ansible Bootcamp. Bruce Becker: Coordinator, Africa-Arabia ROC

INTRODUCTION CONTENTS BEGINNER S GUIDE: CONTROL WITH RED HAT ANSIBLE TOWER

AUTOMATION ACROSS THE ENTERPRISE

Ansible + Hadoop. Deploying Hortonworks Data Platform with Ansible. Michael Young Solutions Engineer February 23, 2017

Building and Managing Clouds with CloudForms & Ansible. Götz Rieger Senior Solution Architect January 27, 2017

ANSIBLE AUTOMATION AT TJX

ANSIBLE TOWER OVERVIEW AND ROADMAP. Bill Nottingham Senior Principal Product Manager

OPEN SOURCING ANSIBLE

SELF-SERVICE IT WITH ANSIBLE TOWER & MICROSOFT AZURE. Chris Houseknecht Dave Johnson. June #redhat #rhsummit

Introduction to Ansible

ANSIBLE TOWER IN THE SOFTWARE DEVELOPMENT LIFECYCLE

Getting started with Ansible and Oracle

AUTOMATING THE ENTERPRISE WITH ANSIBLE. Dustin Boyd Solutions Architect September 12, 2017

Rapid Deployment of Bare-Metal and In-Container HPC Clusters Using OpenHPC playbooks

Getting Started with Ansible - Introduction

DevOPS, Ansible and Automation for the DBA. Tech Experience 18, Amsersfoot 7 th / 8 th June 2018

Splunk and Ansible. Joining forces to increase implementation power. Rodrigo Santos Silva Head of Professional Services, Tempest Security Intelligence

Red Hat Ansible Workshop. Lai Kok Foong, Kelvin

Ansible Tower Quick Setup Guide

Ansible Essentials 5 days Hands on

Enhancing Secrets Management in Ansible with CyberArk Application Identity Manager

Ansible. Go directly to project site 1 / 36

AUTOMATION FOR EVERYONE Accelerating your journey to the Hybrid Cloud with Ansible Tower

Automation: Making the Best Choice for Your Organization

Housekeeping. Timing Breaks Takeaways

Ansible at Scale. David Melamed Senior Research Engineer, CTO Office, CloudLock

Infoblox and Ansible Integration

Automation and configuration management across hybrid clouds with CloudForms, Satellite 6, Ansible Tower

Ansible Tower on the AWS Cloud

Harnessing your cluster with Ansible

Ansible - Automation for Everyone!

Ansible Tower Quick Setup Guide

Ansible and Ansible Tower by Red Hat

Contents. Prerequisites 1. Linux 1. Installation 1. What is Ansible? 1. Basic Ansible Commands 1. Ansible Core Components 2. Plays and Playbooks 8

Ansible Tower Quick Install

Automate Patching for Oracle Database in your Private Cloud

Zero Touch Provisioning of NIOS on Openstack using Ansible

Ansible: Server and Network Device Automation

Ansible F5 Workshop +

SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other

Study Guide. Expertise in Ansible Automation

Ansible Tower Quick Install

Behind the scenes of a FOSS-powered HPC cluster at UCLouvain

An introduction to ANSIBLE. Anand Buddhdev RIPE NCC

Ansible. -- Make it so

HASHICORP TERRAFORM AND RED HAT ANSIBLE AUTOMATION Infrastructure as code automation

GIVING POWER TO THE PEOPLE With General Mills

Infrastructure at your Service. Setup Oracle Infrastructure with Vagrant & Ansible

WHAT IS ANSIBLE AND HOW CAN IT HELP ME?

Button Push Deployments With Integrated Red Hat Open Management

Henry Stamerjohann. Apfelwerk GmbH & Co. #macadmins

(Almost) Instant monitoring

Dominating Your Systems Universe with Ansible Daniel Hanks Sr. System Administrator Adobe Systems Incorporated

We are ready to serve Latest IT Trends, Are you ready to learn?? New Batches Info

Infrastructure as Code CS398 - ACC

Choosing an orchestration tool: Ansible and Salt. Ken Wilson Opengear. Copyright 2017 Opengear, Inc. 1

Sanjay Shitole, Principle Solutions Engineer

How to avoid boring work - Automation for DBAs

Ask an Expert: Ansible Network Automation

Deploying MySQL HA. with Ansible and Vagrant (101) Daniel Guzman Burgos (Percona) Robert Barabas (Percona)

The Foreman. Doina Cristina Duma, cristina.aiftimiei<at>cnaf.infn.it Diego Michelotto, diego.michelotto<at>cnaf.infn.it INFN-CNAF

Ansible and Firebird

RED HAT TECH EXCHANGE HOUSE RULES

Ansible. Systems configuration doesn't have to be complicated. Jan-Piet

Database Operations at Groupon using Ansible. Mani Subramanian Sr. Manager Global Database Services Groupon

MARCO MALAVOLTI

Zabbix Ansible Module. Patrik Uytterhoeven

ansible-workshop Documentation

Getting Started with Ansible for Linux on z David Gross

Modern Provisioning and CI/CD with Terraform, Terratest & Jenkins. Duncan Hutty

Introduction to CLI Automation with Ansible

Ansible Tower 3.0.x Upgrade and Migration

TACKLING BIG-IP BLUE-GREEN DEPLOYMENTS IN PRIVATE CLOUD USING F5 & VMWARE ANSIBLE MODULES

ABOUT INTRODUCTION ANSIBLE END Ansible Basics Oleg Fiksel Security CSPI GmbH OpenRheinRuhr 2015

Splunk ConfiguraAon Management and Deployment with Ansible

Project Example: wissen.de

The recommended way for deploying a OSS DC/OS cluster on GCE is using Terraform.

Webserver deployment on. Amazon Web Services using IAC tool Terraform

Kaseya 2. User Guide. Version 7.0

Deploying large-scale service compositions on the cloud with the CHOReOS Enactment Engine

NEW vsphere Replication Enhancements & Best Practices

Tools for the Vagabonding Samba Developer

Infrastructure Configuration and Management with Ansible. Kaklamanos Georgios

Malaysian Open Source Conference (The) Multi Facets of the Open Source Tools. Muhammad Najmi Ahmad Zabidi

mastering ansible A622DFD780311BCF8921DE033F8C7977 Mastering Ansible 1 / 6

Table of Contents HOL ADV

Ansible Hands-on Introduction

AWS and Ansible. Automating Scalable (and Repeatable) Architecture

Challenges in Transition

Ansible Tower Upgrade and Migration

ArcGIS Runtime SDK for Java: Building Applications. Eric

Managing 15,000 network devices with Ansible. Landon Holley & James Mighion May 8, 2018

Introduction to Ansible. yench

Ansible Tower Upgrade and Migration

Transcription:

+1 800-825-0212 WHITEPAPER Ansible in Depth Get started with ANSIBLE now: /get-started-with-ansible or contact us for more information: info@

INTRODUCTION Ansible is an open source IT configuration management, deployment, and orchestration tool. It is unique from other management tools in many respects, aiming to provide large productivity gains to a wide variety of automation challenges. While Ansible provides more productive drop-in replacements for many core capabilities in other automation solutions, it also seeks to solve other major unsolved IT challenges. These include clear orchestration of complex multitier workflows and cleanly unifying OS configuration and application software deployment under a single banner. Ansible seeks to keep descriptions of IT workflows understandable and able to be rapidly implemented. This means easy to build, and easy to understand such that new users can be quickly brought into new IT projects, and longstanding automation content is easily understood even after months of being away from a project. Ansible seeks to make things powerful for expert uses, but equally accessible for all skill levels of user, ensuring a quicker time to market for IT projects and faster, less-error prone turnaround on IT configuration change. Ansible is designed to be minimal in nature, consistent, secure, and highly reliable, with an extremely low learning curve for administrators, developers, and IT managers. 2 info@

ARCHITECTURE, AGENTS, AND SECURITY One of the primary differentiators between Ansible and many other tools in this space is one of architecture. y Ansible by default manages remote machines over SSH, either using a library called paramiko (which is Python based) or OS-native OpenSSH. Support for Kerberized SSH and bastion hosts is included when using OpenSSH. y Should other forms of transport be desired, transport mechanisms are pluggable. For instance, a 0mq based accelerated transport is provided. There is also a local (networkless) connection type. y Ansible does not require root access, and can configure things using sudo access if requested. y Ansible does not require specific SSH keys or dedicated users it can work with whatever OS credentials users supply and respects the permissions model of your operating system. y When requested, Ansible will transfer modules to remote nodes, which are run remotely using user supplied credentials, and not left installed on those remote nodes. y Ansible does not require any server software to be running from a management machine, and runs with the credentials available to that user. y Ansible does not require any agent software to be running on any remote machines. y No ports other than the SSH port are required and no additional PKI infrastructure to maintain. y Those with access to the control server (or source control) cannot make content be pushed out to remote systems (or otherwise command them) without also having credentials on remote systems. y When Ansible is not managing remote machines zero resources are consumed on those machines. These attributes together make Ansible ideal for high-security environments or high-performance cases where there are concerns about stability or permanence of a management agent, but are generally useful attributes in all computing areas. TOOL UNIFICATION Ansible also is unique in terms of user experience and approach. Ansible is designed to make IT configurations and processes both simple to read or write, even by those untrained in reading those configurations. While Ansible can accomplish all types of automation tasks, Ansible does not resemble software programming languages, but rather basic textual descriptions of desired states and processes. Further, it attempts to solve multiple overlapping IT automation problems from a single framework, to prevent the need to learn and understand (and glue together) multiple frameworks. With other traditional approaches, users have typically had to combine many different tools together to cover the basics of managing IT operating systems and software configurations, including: y A configuration management tool, typically dealing with the base OS, that describes the desired state of a system, but not the process to put it into that state y A deployment tool, for pushing out hosted application software, and more focused on process y A task execution tool, for performing tasks immediately that do not fit into the previous models, such as batch server rebooting. Ansible makes these approaches available in a single tool, and also provides capabilities and characteristics to enable complicated multi-tier application deployment and orchestration workflows. 3 info@

MODELING ORCHESTRATION WORKFLOWS As a detailed example, consider a traditional three-tier web application and its environment consisting of: y application servers y database servers y content servers y load balancers y a monitoring system connected xto an alert system such as a pager notification service y a continuous integration system In this example, Ansible can easily model a process which: y consults a configuration/settings repository for information about the involved servers y configures the base OS on all machines and enforces desired state convergence y identifies a portion of the web application servers to update y signals the monitoring system of an outage window prior to bringing the servers offline y signals load balancers to take the application servers out of a load balanced pool y deploys or updates the web application servers y signals the load balancers to put the application servers back into the load balanced pool y signals the monitoring system to resume alerts on any detected issues on those servers y repeats this process for remaining application servers in a rolling update process y repeats these rolling update processes for other tiers such as database or content tiers y sends email reports and logging as desired when updates are complete PLAYBOOKS In Ansible, whether configuring a base OS, modeling an update process, or executing explicit run now tasks on remote hosts, all of these configurations are achieved through the same tool. Configurations are expressible in what Ansible calls Playbooks, which are human and machine-parseable YAML data format, making it easy to audit with other programs, and easy for non-developers to read and understand. EXTENSIBILITY There are many points of integration that can be used to extend Ansible, including: y modules that run locally or remotely to configure applications, services, or OS parameters y new logging callbacks for audit and reporting y integration with any external data stores y inventory data retrieved from CMDB systems or cloud sources y new transport mechanisms by which Ansible can communicate with hosts under management 4 info@

Units of work in Ansible are taken care of by Ansible modules, which are small programs that run on remote hosts that ensure the given remote host is in a particular state. These modules can be written in any language such as Python, Perl, Ruby, bash, and so on so the user can code them using their favorite tools of choice. By default, core modules are idempotent, which means that they help a system get to a desired state, and if no state change is performed, they perform no action. Ansible also makes it easy to model processes that are not idempotent, and also make it possible to simply just push out simple scripts and run them as desired. Use of idempotent resource modules are assuredly preferred, however, but it is important to be able to model any type of process and not just one that falls into those limits. Ansible is pragmatic in this regard. CLOUD INTEGRATION Ansible is capable of easily deploying workloads to a variety of virtualization and public and on-premise cloud environments, including but not limited to VMware, OpenStack, Amazon Web Services EC2 (AWS), Eucalyptus Cloud, KVM, and CloudStack. Machines can be deployed from base OS images without any modification and fully configured in one pass. BIG DATA Ansible is widely used to deploy big data, storage, and analytics environments, including platforms such as Hadoop, Riak, and Aerospike. In these environments a wide variety of unconfigured servers must be configured on-premise leaving behind no resource consuming management agents. Customers demand simple controls and easily editable policies to both deploy and update these types of clusters. Other areas outside of the Big Data space can also take advantage. These properties also make Ansible appealing to hightraffic hosted monitoring systems, where Ansible leaves all CPU resources available to the computing environment when not in use. There are no memory leaks or CPU spikes, nor daemons that need to remain operational. While there is definitely a cluster of Ansible users around these areas of high-tech computing, these properties are a benefit to any user seeking IT management solutions. ADVANCED FEATURES Ansible offers many other numerous configuration modeling features including conditional execution of tasks, ability to gather variables and information from the remote system, ability to spawn asynchronous long running actions, ability to operate in either a push or pull configuration, a check mode to test for pending changes without applying change, and the ability to tag certain parts of the configuration so that only certain parts of configuration can be applied. All of these features are covered in the application documentation. ANSIBLE TOWER To complement Ansible core, Ansible Inc. has created Ansible Tower. Tower is an enterprise-class automation solution with a simple UI and dashboard, roles-based access control and visual inventory. Ansible Tower unleashes Ansible to your entire team. Tower s fully-featured REST API makes it easy to embed Ansible Tower into your existing infrastructure tools. Try Ansible Tower for free at /ansible-tower 5 info@

DOCUMENTATION More information about Ansible, including complete documentation, can be found at docs.. An open source project mailing list is available and linked on the project site. EXAMPLES AND FURTHER INFORMATION Some basic examples of Ansible content implementing zero-downtime rolling updates can be found at https://github.com/ansible/ ansible-examples. Users looking to integrate such a process with their source control, establish a build system, or integrate with their network environment may wish to reach out to us for more information. For more information about Ansible, services, support, and other details, contact AnsibleWorks at info@. +1 800-825-0212 info@ Copyright 2014 ANSIBLE, INC. All rights reserved.