ANSIBLE TOWER IN THE SOFTWARE DEVELOPMENT LIFECYCLE

Similar documents
AWS Service Catalog. User Guide

Achieving Rolling Updates & Continuous Deployment with Zero Downtime

Ansible in Depth WHITEPAPER. ansible.com

CloudCenter Full Lifecycle Management. An application-defined approach to deploying and managing applications in any datacenter or cloud environment

Build A private PaaS.

White Paper. The Importance of Automating the End to End Pipeline for Continuous Delivery

AppStack Technology Overview Model-Driven Application Management for the Cloud

RED HAT CLOUDFORMS ENTERPRISE- GRADE MANAGEMENT FOR AMAZON WEB SERVICES

Hybrid Cloud Delivery Managing Cloud Services from Request to Retirement SOLUTION WHITE PAPER

OpenShift. OpenShift platform features. Benefits Document. openshift. Feature Benefit OpenShift. Enterprise

ACCELERATE DEVOPS USING OPENSHIFT PAAS

SOLUTION WHITE PAPER. Building a flexible, intelligent cloud

Cloud Lifecycle Management

Build Clouds Without Limits Gordon Haff

Jenkins World Tour 2015 Santa Clara, CA, September 2-3

Jenkins and Chef Infrastructure CI and Application Deployment

Automating the Virtual Datacenter. Saša Hederić VMware Systems Engineer SE Europe

BMC Cloud Management Functional Architecture Guide TECHNICAL WHITE PAPER

Data Sheet: Archiving Altiris Server Management Suite 7.0 from Symantec Essential server management: Discover, provision, manage, and monitor

EMC IT AUTOMATES ENTERPRISE PLATFORM AS A SERVICE

Advanced Service Design

The Virtualization Practice

Data Sheet: Server Management Altiris Server Management Suite 7.0 Essential server management: Discover, provision, manage, and monitor

Moving beyond Virtualization as you make your Cloud journey. David Angradi

ON-PREMISE OR IN THE CLOUD, A SINGLE JAVA EE APPLICATION PLATFORM

Urbancode Deploy Overview

Parasoft and Skytap Deliver 24/7 Access to Complete Test Environments

ORACLE OPS CENTER: VIRTUALIZATION MANAGEMENT PACK

Hybrid Cloud for Development and Testing with VMware vcloud Air

Bridge Development and Operations for faster delivery of applications

APP DEVELOPMENT ON THE CLOUD MADE EASY WITH PAAS

Orchestrated. Release Management. Gain insight and control, eliminate ineffective handoffs, and automate application deployments

Releasing High Quality Applications More Quickly with vrealize Code Stream

ORACLE CLOUD MANAGEMENT PACK FOR ORACLE DATABASE

Nexus Professional Whitepaper. Repository Management: Stages of Adoption

Accenture Cloud Platform Unlocks Agility and Control

Getting started with API testing

Organizations that are standardizing today are enjoying lower management costs, better uptime. INTRODUCTION

Continuous Integration using Docker & Jenkins

AWS CodePipeline. User Guide API Version

QualysGuard WAS. Getting Started Guide Version 4.1. April 24, 2015

SUCCESFUL TESTING THE CONTINUOUS DELIVERY PROCESS

Accelerate Software Development with DevOps and Hybrid Cloud

Pipeline Orchestration for Test Automation using Extended Buildbot Architecture

Best Overall Use of Technology. Jaspersoft

How To Benefit From An Automated Deployment

Cisco UCS Central Software

Realizing the Value of Standardized and Automated Database Management SOLUTION WHITE PAPER

Logging and Alerting for the Cloud

Extensibility. vcloud Automation Center 6.0 EN

How To Achieve Continuous Delivery

Offline Scanner Appliance

HP Cloud Service Automation Concepts Guide

An Oracle White Paper February Rapid Bottleneck Identification - A Better Way to do Load Testing

DATABASE VIRTUALIZATION AND INSTANT CLONING WHITE PAPER

INTEGRATING CLOUD ORCHESTRATION WITH EMC SYMMETRIX VMAX CLOUD EDITION REST APIs

Introduction. Automated Discovery of IT assets

VMware ESXi in a Cloud-based Lab David Davis, VCP, VCAP, and vexpert

Integration Maturity Model Capability #5: Infrastructure and Operations

Deploying Software with Group Policy Whitepaper

5 Reasons CIOs are Adopting Cloud Computing in 2010 Application Development that s 5 Times Faster at 1/2 the Cost

Rapid Bottleneck Identification A Better Way to do Load Testing. An Oracle White Paper June 2009

SUSE OpenStack Cloud. Become Your Enterprise s Cloud Service Provider

Intel IT Cloud Extending OpenStack* IaaS with Cloud Foundry* PaaS

Mastering Continuous Integration with Jenkins

Executive Summary Challenges in Developing, Testing and Deploying Applications Reduce Overall Development Costs... 7

Technology Blueprint. Secure Your Virtual Desktop Infrastructure. Optimize your virtual desktop infrastructure for performance and protection

User Management Guide

Your Guide to VMware Lab Manager Replacement

APPLICATION OF SERVER VIRTUALIZATION IN PLATFORM TESTING

Enabling Cloud Computing for Enterprise Web Applications:

Monitoring, Managing and Supporting Enterprise Clouds with Oracle Enterprise Manager 12c Name, Title Oracle

Shavlik Patch for Microsoft System Center

Sage CRM 2015 R1 Release Preview

Softerra Adaxes Enterprise Directory Solution

Panorama PANORAMA. Panorama provides centralized policy and device management over a network of Palo Alto Networks next-generation firewalls.

Foundations and Concepts

5 Reasons CIOs are Adopting Cloud Computing in 2009 Application Development that s 5 Times Faster at 1/2 the Cost

Servers. Servers. NAT Public Subnet: /20. Internet Gateway. VPC Gateway VPC: /16

Managing the Cloud as an Incremental Step Forward

The Service Provider s Speed Mandate and How CA Can Help You Address It

Leveraging Rational Team Concert's build capabilities for Continuous Integration

Hands-On Lab. Embracing Continuous Delivery with Release Management for Visual Studio Lab version: Last updated: 12/11/2013

Cisco Network Services Manager 5.0

Intel HTML5 Development Environment Article Using the App Dev Center

I D C T E C H N O L O G Y S P O T L I G H T

Reinventing Virtual Learning: Delivering Hands-On Training using Cloud Computing

SCCM 2012 Support Center Tool

Integrating SharePoint Sites within WebSphere Portal

7 Ways OpenStack Enables Automation & Agility for KVM Environments

Sun ONE Identity Server Web Policy Agents Release Notes

Ansible Tower User Guide

Transcription:

+1 919.66.9958 ansible.com ANSIBLE TOWER IN THE SOFTWARE DEVELOPMENT LIFECYCLE Ansible Tower Enterprise is a critical part of our infastructure. With Tower there is no downtime and we can easily schedule Ansible playbooks to run when we want INTRODUCTION Ansible Tower by Red Hat is used in a variety of different ways, from traditional configuration management, to custom application deployment, to the orchestration of zero-downtime rolling updates. Companies like Gawker Media use Ansible to deploy their sites more than 10 times an hour. NASA uses Ansible to update security vulnerabilities and to patch manage nasa. gov weekly. Enterprises that make money delivering applications via the web find that Ansible Tower excels at removing IT bottlenecks, automating repetitive tasks, and accelerating the delivery of applications to market. For IT operations, rolling updates with zero downtime is a very common orchestration pattern that has been discussed at length, but let s take a look at how Ansible Tower fits earlier into the software development lifecycle and removes bottlenecks in operations, as well as in development and test. YVES SOELE IT OPERATIONS, AMELCO Ansible Tower offers a number of benefits in the SDLC, specifically to: Drive consistency between environments Enable self-service Improve automated testing

ONE SHEET Ansible Tower in the Software Development Lifecycle Ansible Tower provides a pushbutton interface that templates how a playbook should be run deploying consistently and with repeatability. DEVELOPMENT A typical day in the life of an application developer may be to: check out code, make changes, test locally, check in changes. During the course of this work, the development environment may become infected with small configuration tweaks and hand-crafted software stacks that differ dramatically from the environment that production code is ultimately deployed to. In fact, a common problem in many organizations is that the development environment may not exactly (or even closely) match what s in QA, Stage, and Release. Generally, the further away from production you get, the less and less the environments look the same. (Not just the obvious examples like software library versions, but more subtle items like configuration settings, authentication details, etc.). Inconsistency between code and the software stack that supports the application is a common cause of software errors and resulting production downtime. With Ansible, a playbook captures the desired state of the stack and even the entire environment. Ansible Tower provides a pushbutton interface that templates how a playbook should be run deploying consistently and with repeatability. With Ansible Tower, a playbook is run from a job template, which specifies the parameters and environment details of how to run the playbook, with all of the parameters and options you would normally pass via the Ansible command line. There is no concern that the user will mistype an option or parameter to Ansible, potentially deploying to the wrong environment or with the wrong playbook arguments since the template is triggered via the push of a button (or API.) Not only do these templates drive consistency between deployments each time the button is pressed the same result is expected but they also encourage a tremendous amount of playbook reuse: Multiple job templates can be created that launch the same identical playbook with different parameters. This enables the same playbook to be used between environments or stages of release. The job template can use the same playbook, but target different inventories (corresponding to different stages of release or different environments), pass different options, even use different credentials. 2

ONE SHEET Ansible Tower in the Software Development Lifecycle This drives consistency between releases, even across different stages, by ensuring that the same steps to automate provisioning and deployment are followed between each stage. Tower enables developers to check out and provision their own development environment, built from scratch and 100% consistent with the software stack used in test, stage, and production. When combined with the role-based access control capabilities of Ansible Tower, playbooks can be deployed at the push of a button, but in a controlled and easily-audited way. This allows an organization to spread the power of Ansible to any of its users. Even users unfamiliar with Ansible can run playbooks that others have written. These features are commonly used to enable selfservice provisioning of development environments by the developers themselves. Typically, developers manually construct a development environment that starts out only loosely coupled to the production software stack and deviates further and further over time. Alternatively, developers are forced to request a new development environment from operations teams, usually incurring delays that proliferate throughout the software development lifecycle and lead to late deployments, missed deadlines, and lost business. Tower enables developers to check out and provision their own development environment, built from scratch and 100% consistent with the software stack used in test, stage, and production because it is built with the same playbook. Developers log into Ansible Tower and, under RBAC, see only the job templates that they have permission to access and deploy. 3

The developer presses a few buttons in Ansible Tower, goes and gets a cup of coffee, and then returns to a newly 100% provisioned environment. Developers do not require any knowledge of Ansible or the playbook. They can provide new parameters and options, specifying perhaps the release tag of the application to be deployed or fine tuning the deployment to fit within the constraints of the environment. The playbook handles provisioning the new servers (e.g. by calling out to VMware or Amazon Web Services), deploying and configuring the software stack, and the actual application under development. The developer presses a few buttons in Ansible Tower, goes and gets a cup of coffee, and then returns to a newly 100% provisioned environment. Tear down and re-provisioning is a snap, so a new environment for pristine development can be deployed at any time. QA A typical day for QA might look like this: Program a CI tool to automatically build the codebase periodically, deploy to a test environment, run tests, report results. At most shops, some of this work is generally automated, usually building the latest code and the deploying the latest code artifacts into test. Deployment of the application stack may not be automated (or easily refreshed between test cycles), leading to the same consistency problem as in development,or worse, because test environments and artifacts are potentially reused between test cycles. Here again, the reuse of playbooks between environments through the Ansible Tower job template will promote consistency between stages of release. Additionally, the same Ansible Tower self-service capability that can be provided to developers can also be provided to testers. QA may write their own playbooks for automated testing and Ansible Tower can be used to delegate responsibility to QA staff who are not Ansible experts or aren t comfortable running Ansible on the command line. In addition to self-service, it is very common to use Ansible Tower in conjunction with a Continuous Integration system in QA to automate not only application deployment in test, but provisioning of the application stack to refresh the test environment between tests. This way, Ansible Tower provides a complete RESTful API that powers the Ansible Tower user interface and makes it possible to programmatically invoke Ansible Tower to do any function that can be performed via point and click in the UI. In this way, a CI tool like Jenkins can be connected to Tower to launch job templates for automated testing. Jenkins is configured to call the Ansible Tower API to launch a specific job template that invokes an Ansible playbook to provision a new QA environment, deploy and configure the appropriate software stack, the correct version of the application, and the test suite. Automated testing can be performed and the environment decommissioned, all within one or more playbook runs. Just as in development, this ensures that the test environment is consistent with all release stages that what is being tested is the same as what info@ansible.com was developed and what is being +1 919.667.9958 deployed into production. ansible.com Test environments can quickly be provisioned and deployed 100% from scratch, improving your ability to test and 4

to speed up the application to production delivery. When used in conjunction with a CI tool like Jenkins, the combination is more powerful than with a CI tool alone: Jenkins can kick off Ansible playbooks to provision environments and deploy the latest code as part of any Jenkins CI job, but under the framework of role-based access control, inventory management, and aggregated job output that Ansible Tower provides. As you adopt Ansible Tower into Operations, consider also the benefits of Ansible and Ansible Tower throughout your software development lifecycle. Apply automation to eliminate bottlenecks through every stage of release and accelerate the delivery of your applications to market. ABOUT ANSIBLE Ansible, an open source community project sponsored by Red Hat, is the simplest way to automate IT. Ansible is the only automation language that can be used across entire IT teams from systems and network administrators to developers and managers. Ansible by Red Hat provides enterprise-ready solutions to automate your entire application lifecycle from servers to clouds to containers and everything in between. Ansible Tower by Red Hat is a commercial offering that helps teams manage complex multi-tier deployments by adding control, knowledge, and delegation to Ansible-powered environments. READY TO AUTOMATE? info@ansible.com +1 919.667.9958 ansible.com Copyright 2016 Red Hat, Inc. Red Hat, the Shadowman logo, and Ansible are trademarks or registered trademarks of Red Hat, Inc. or its subsidiaries in the United States and other countries.