cdsummit Continuous Delivery Seminars Automating the deployment process 9 th September 2014

Similar documents
Accelerate at DevOps Speed With Openshift v3. Alessandro Vozza & Samuel Terburg Red Hat

DevOps and Continuous Delivery USE CASE

Orchestrating the Continuous Delivery Process

Javaentwicklung in der Oracle Cloud

Test Automation Strategies in Continuous Delivery. Nandan Shinde Test Automation Architect (Tech CoE) Cognizant Technology Solutions

Red Hat Roadmap for Containers and DevOps

What is database continuous integration?

Continuous Delivery for Cloud Native Applications

DEVOPSIFYING NETWORK SECURITY. An AlgoSec Technical Whitepaper

Orchestrate JBoss Middleware with Ansible Tower Red Hat Summit San Francisco

Sunil Shah SECURE, FLEXIBLE CONTINUOUS DELIVERY PIPELINES WITH GITLAB AND DC/OS Mesosphere, Inc. All Rights Reserved.

Amir Zipory Senior Solutions Architect, Redhat Israel, Greece & Cyprus

I keep hearing about DevOps What is it?

WHITEPAPER. Database DevOps with the Redgate Deployment Suite for Oracle

Continuous Integration & Continuous Deployment (CI/CD) with a Cloud Delivery Platform

NASTEL Technologies, Europe 57, esplanade du Général de Gaulle Paris La Défense Scott CORRIGAN

Continuous Integration and Delivery with Spinnaker

Cisco Enterprise Cloud Suite Overview Cisco and/or its affiliates. All rights reserved.

Accelerate your Software Delivery Lifecycle with IBM Development and Test Environment Services

AWS Reference Design Document

Multi-Cloud and Application Centric Modeling, Deployment and Management with Cisco CloudCenter (CliQr)

Distributed CI: Scaling Jenkins on Mesos and Marathon. Roger Ignazio Puppet Labs, Inc. MesosCon 2015 Seattle, WA

Taming your heterogeneous cloud with Red Hat OpenShift Container Platform.

Transformation in Technology Barbara Duck Chief Information Officer. Investor Day 2018

TM DevOps Use Case. 2017TechMinfy All Rights Reserved

Put Security Into Your DevOps NOW. Or Prepare for the Flood Matthew Fisher Solution Architect, Fortify Federal 08MAR2018

Actifio Sky DB. Actifio s Solution for Oracle, Oracle EBS with standalone, RAC, ASM, EXADATA configurations

Love Containers, Love Devops, Love Openshift, Where's my business case?

VMware Cloud Application Platform

IBM s Integrated Data Management Solutions for the DBA

Multi-Cloud and Application Centric Modeling, Deployment and Management with Cisco CloudCenter (CliQr)

Redgate Database Lifecycle Management (DLM) vs SQL Server Data Tools (SSDT)

AD105 Introduction to Application Development for the IBM Workplace Managed Client

The 60-Minute Guide to Development Tools for IBM Lotus Domino, IBM WebSphere Portal, and IBM Workplace Applications

DevOps in an ITIL Shop. Not just compatible; DevOps achieves ITIL s promise.

DevOps Using VSTS and Azure

Oracle WebCenter Interaction: Roadmap for BEA AquaLogic User Interaction. Ajay Gandhi Sr. Director of Product Management Enterprise 2.

SUSE s vision for agile software development and deployment in the Software Defined Datacenter

Modernizing your database processes with DevSecOps

VMware vrealize Code Stream Reference Architecture. 16 MAY 2017 vrealize Code Stream 2.3

Advanced Continuous Delivery Strategies for Containerized Applications Using DC/OS

Data Center Automation: Automated Provisioning, Patching, and Compliance

Release Highlights. Introducing CollabNet TeamForge 17.11

Copyright 2015 EMC Corporation. All rights reserved. Published in the USA.

UP! TO DOCKER PAAS. Ming

HP Application Lifecycle Management. Upgrade Best Practices

CASE STUDY FINANCE. ABSA Bank Introducing database automation with SQL Toolbelt

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

Security oriented OpenShift within regulated environments

Red Hat CloudForms Hybrid Cloud Management (CL220)

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

Red Hat Containers Roadmap. Red Hat A panel of product directors

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

Red Hat OpenShift Roadmap Q4 CY16 and H1 CY17 Releases. Lutz Lange Solution

Deep Dive on AWS CodeStar

Deploying Fusion Middleware in a 100% Virtual Environment Using OVM

CloudCenter for Developers

ENTERPRISE SECURITY MANAGEMENT. Frederick Verduyckt 20 September 2012

Oracle WebLogic Server 12c: Administration I

VMware vrealize Code Stream Reference Architecture. 12 APRIL 2018 vrealize Code Stream 2.4

Vblock Infrastructure Packages: Accelerating Deployment of the Private Cloud

Netflix OSS Spinnaker on the AWS Cloud

A DEVOPS STATE OF MIND. Chris Van Tuin Chief Technologist, West

CONTINUOUS DELIVERY IN THE ORACLE CLOUD

Will your application be secure enough when Robots produce code for you?

Security as Code: The Time is Now. Dave Shackleford Founder, Voodoo Security Sr. Instructor, SANS

Database Engineering. Percona Live, Amsterdam, September, 2015

Red Hat Atomic Details Dockah, Dockah, Dockah! Containerization as a shift of paradigm for the GNU/Linux OS

Revolutionize the Way You Work With IMS Applications Using IBM UrbanCode Deploy Evgeni Liakhovich, IMS Developer

Automate the Lifecycle of IT

Marc Hornbeek DevOps-the-Gray Principal DevOps Consultant, Trace3 Author, DevOps Test Engineering Course The DevOps Institute

WLS Neue Optionen braucht das Land

VCE A NEW WAY TO DELIVER IT

Oracle Database 10G. Lindsey M. Pickle, Jr. Senior Solution Specialist Database Technologies Oracle Corporation

DevNet Workshop-Hands-on with CloudCenter and Jenkins

Turbo boost your digital app test automation with Jenkins

OptiSol FinTech Platforms

How to Build an Appium Continuous Testing Pipeline

Enterprise X-Architecture 5th Generation And VMware Virtualization Solutions

Samsung SDS Enterprise Cloud

Microservices with Red Hat. JBoss Fuse

OpenShift 3 Technical Architecture. Clayton Coleman, Dan McPherson Lead Engineers

MQ High Availability and Disaster Recovery Implementation scenarios

Patching and Updating your VM SUSE Manager. Donald Vosburg, Sales Engineer, SUSE

Ruby in the Sky with Diamonds. August, 2014 Sao Paulo, Brazil

Converged security. Gerben Verstraete, CTO, HP Software Services Colin Henderson, Managing Principal, Enterprise Security Products

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

Data Center 3.0: Transforming the Data Center via the Network

The Challenge of Managing WebSphere Farm Configuration. Rational Automation Framework for WebSphere

Architecture & Deployment

Barry D. Lamkin Executive IT Specialist Capitalware's MQ Technical Conference v

API Connect. Arnauld Desprets - Technical Sale

SOA-14: Continuous Integration in SOA Projects Andreas Gies

Event Streams using Apache Kafka

JBOSS MIDDLEWARE TO THE CLOUD. MICHAEL EPLEY Sr JBoss Solutions Architect, IC Specialist 2014 June

OpenESB Keh-Yoe Ong FAST (Field Assistance Support Team)

How Can Testing Teams Play a Key Role in DevOps Adoption?

Automating, Securing, and Managing Cox Automotive's (AutoTrader) Big Data Infrastructure

NITA Based Offers and Services

Il Mainframe e il paradigma dell enterprise mobility. Carlo Ferrarini zsystems Hybrid Cloud

Transcription:

cdsummit Continuous Delivery Seminars Automating the deployment process 9 th September 2014

A bit about me Co-founder and Director Worked in Deployment Automation Solutions in regulated environments for 10 years With MidVision since 2008 A toolsmith at heart

Gartner think s we re cool Born in a Bank regulation, risk and compliance Application Release Automation Platform, RapidDeploy deploy environments AND applications at scale Cross industry customer success proven in large complex regulated enterprises Core Platform with ability to integrate to Open Source and Commercial tool chains Gartner DevOps Cool Vendor Customers

Agenda Relationship between DevOps, CD and Automation Desired state, Packaging and versioning Deployment models Toolchains Automation and self service

DevOps, Continuous Delivery and Automation DevOps (Philosophy) Continuous Delivery (Practice) The process of packaging and deploying an application or update of an application from development, across various environments, and ultimately to production Application Release Automation (ARA) Application Release Automation a.k.a. Deployment Automation

Continuous Delivery / Release Pipelines APPLICATION DEPLOYMENT Release Management Application Deploy Application Infrastructure Automation Image Provisioning

Automated Deployment Principles Version control and build configuration Release versions of configuration change in the same way as code Allows linking of configuration releases and application releases together comprising a business application Build Once, Deploy Anywhere

Model Driven Deployment Model defines complete configuration for a logical unit of automation Define similarities and differences Always contain the complete configuration for a target technology Deltas become part of the template so configuration changes are not made in isolation Idempotent 8

Properties / Template DevTst01 QMGR_NAME SALESDEVQM01 QMGR_HOST lnxdev01 QMGR_PORT 1414 MQSC Template ------<QMGR_NAME>-------- ------<QMGR_HOST>-------- ------<QMGR_PORT>-------- 9

Properties / Template DevTst01 QMGR_NAME SALESDEVQM01 QMGR_HOST lnxdev01 QMGR_PORT 1414 MQSC Template ------<QMGR_NAME>-------- ------<QMGR_HOST>-------- ------<QMGR_PORT>-------- SysTst01 QMGR_NAME SALESTSTQM02 QMGR_HOST lnxtst01 QMGR_PORT 1415 10

Properties / Template DevTst01 QMGR_NAME SALESDEVQM01 QMGR_HOST lnxdev01 QMGR_PORT 1414 DB_USER devtstuser SysTst01 QMGR_NAME SALESTSTQM02 QMGR_HOST lnxtst01 QMGR_PORT 1415 DB_USER syststuser MQSC Template ------<QMGR_NAME>-------- ------<QMGR_HOST>-------- ------<QMGR_PORT>-------- ------<DB_USER>-------- 11

Creating the Deploy Package Business Appliation dev_area \DeployDesc \database(s) \source Infrastructure Desired State release_area \jee \scripts \static \database DEPLOY PACKAGE SALESAPP_BUILD_01_02_003.zip Baseline File: SALESAPP_BUILD_01_02_003

Implementation-Version=SALESAPP_BUILD_01_02_003

DevOps Toolchain

` Composite Deployment Directed Deployment httpd.conf IHS Release Manager SALESAPP_BUILD_01_02_003.tar SALESAPP_BUILD_01_02_004.tar cluster/ds/jms WAS qmgr/queue MQ httpd.conf IHS Implementation Manager selects: Application Environment httpd.conf IHS cluster/ds/jms WAS qmgr/queue httpd.conf IHS cluster/ds/jms WAS qmgr/queue cluster/ds/jms WAS qmgr/queue MQ Version MQ MQ

DevOps Toolchain

Version Control Management Build Process Release Mechanism Targets Code Commandline / WebUI / REST / Eclipse Generate Versioned Release Components Ideally web based, self service Web / Application / Database / etc 17

Version Control Management Build Process Release Mechanism Targets Code Commandline / WebUI / REST / Eclipse Generate Versioned Release Components Ideally web based, self service Web / Application / Database / etc x.mqsc Alter channel 18

Version Control Management Build Process Release Mechanism Targets Code Commandline / WebUI / REST / Eclipse Generate Versioned Release Components Ideally web based, self service Web / Application / Database / etc x.mqsc Alter channel SALES_MQ_01_02_033.zip 19

Version Control Management Build Process Release Mechanism Targets Code Commandline / WebUI / REST / Eclipse Generate Versioned Release Components Ideally web based, self service Web / Application / Database / etc x.mqsc Alter channel SALES_MQ_01_02_033.zip SALES_MQ_01_02_033 MQ 20

Version Control Management Build Process Release Mechanism Targets Code Commandline / WebUI / REST / Eclipse Generate Versioned Release Components Ideally web based, self service Web / Application / Database / etc x.mqsc Alter channel SALES_MQ_01_02_033.zip SALES_MQ_01_02_033 MQ x.py JMS Queue Dest 21

Version Control Management Build Process Release Mechanism Targets Code Commandline / WebUI / REST / Eclipse Generate Versioned Release Components Ideally web based, self service Web / Application / Database / etc x.mqsc Alter channel SALES_MQ_01_02_033.zip SALES_MQ_01_02_033 MQ x.py JMS Queue Dest SALES_JBOSS_01_02_046.zip 22

Version Control Management Build Process Release Mechanism Targets Code Commandline / WebUI / REST / Eclipse Generate Versioned Release Components Ideally web based, self service Web / Application / Database / etc x.mqsc Alter channel SALES_MQ_01_02_033.zip SALES_MQ_01_02_033 MQ x.py JMS Queue Dest SALES_JBOSS_01_02_046.zip SALES_JBOSS_01_02_046 JBoss 23

Version Control Management Build Process Release Mechanism Targets Code Commandline / WebUI / REST / Eclipse Generate Versioned Release Components Ideally web based, self service Web / Application / Database / etc x.mqsc Alter channel SALES_MQ_01_02_033.zip SALES_MQ_01_02_033 MQ x.py JMS Queue Dest SALES_JBOSS_01_02_046.zip SALES_JBOSS_01_02_046 JBoss x.ddl Column, View, etc 24

Version Control Management Build Process Release Mechanism Targets Code Commandline / WebUI / REST / Eclipse Generate Versioned Release Components Ideally web based, self service Web / Application / Database / etc x.mqsc Alter channel SALES_MQ_01_02_033.zip SALES_MQ_01_02_033 MQ x.py JMS Queue Dest SALES_JBOSS_01_02_046.zip SALES_JBOSS_01_02_046 JBoss x.ddl Column, View, etc SALES_DB_01_02_012.zip 25

Version Control Management Build Process Release Mechanism Targets Code Commandline / WebUI / REST / Eclipse Generate Versioned Release Components Ideally web based, self service Web / Application / Database / etc x.mqsc Alter channel SALES_MQ_01_02_033.zip SALES_MQ_01_02_033 MQ x.py JMS Queue Dest SALES_JBOSS_01_02_046.zip SALES_JBOSS_01_02_046 JBoss x.ddl Column, View, etc SALES_DB_01_02_012.zip SALES_DB_01_02_012 Oracle 26

Provisioning New Environments Products AppServer - products Apache HTTP Jboss 6.2 RabbitMQ RHEL 6 Update 5 Database - products Oracle 11.1.0.7.0 RHEL 6 Update 5 27

Provisioning New Environments Products > AppServer - products / App Apache HTTP Jboss 6.2 RabbitMQ RHEL 6 Update 5 Database - products Oracle 11.1.0.7.0 RHEL 6 Update 5 WEB_CONFIG_SALES_1_2_056 JBOSS_CONFIG_SALES_1_2_087 MQ_CONFIG_SALES_1_2_032 STANDARD ORG IMAGE / App ORA_CONFIG_SALES_1_2_042 STANDARD ORG IMAGE 28

Provisioning New Environments Products > > Code AppServer - products / App APP_CONTENT_SALES_1_2_124 Apache HTTP Jboss 6.2 RabbitMQ RHEL 6 Update 5 Database - products Oracle 11.1.0.7.0 RHEL 6 Update 5 WEB_CONFIG_SALES_1_2_056 JBOSS_CONFIG_SALES_1_2_087 MQ_CONFIG_SALES_1_2_032 STANDARD ORG IMAGE / App ORA_CONFIG_SALES_1_2_042 STANDARD ORG IMAGE Sales Release 1.2 29

Continuous Delivery Overview

Packaging Principles, Build Once, Deploy Anywhere when does Continuous Beer start!

Packaging Principle Build Once, Deploy Anywhere Build once, deploy to any (defined) environment in the pipeline. A package should be a single compressed, versioned file. Package integrity across all environments Check-summed and labeled The package should contains all deployment instructions, environment configuration and resources (or address locations to remote resources). Package should be runnable as a standalone process.- not dependent on the deployment tool. Store and retrieve deployment artifacts in a DSL. Use Jenkins and to build your deployment package and store it in the DSL.

Packaging Model for Deployment Artifacts Topology of different environments can define the packaging model to use. Single App / Single Cluster Deploy application and configuration together Deployment Package App Config Multiple App / Multiple Cluster Deploy applications and configurations separately Deployment Package 1 App 1 App 2 Deployment Package 2 Config

Prerequisite Resource & Environment Testing Define which environment resources need testing: file permissions disk space port availability user accounts Do not continue with the deployment if the prerequisite tests fail. Automating prerequisite testing of resources saves a lot of pain and time. Keep adding tests to the deployment as you get a better understanding of the environment. Sometimes known as a Deployment Dry Run.

Automated Testing Strategy Use Jenkins post build plugins to initiate the tests after successful a deployment. Building pipelines can be quick, converting your manual tests to automated tests can be laborious and take months..stick with it.

Rollback Strategy Rollback strategy depends on the technology of the deployment. Database changes cannot be rolled back automatically if business data has been added or amended since the deployment took place. Need a DBA. Make sure DB changes are backwards compatible. Generally with databases, use a fix forward strategy. Middleware can be rolled back if the code is deployed with the configuration.

Metrics, Analytics & Feedback Loop Measure the release process. Deployment times No. of deployments (successful & failed). Velocity Report on the release process measurements. Show management the improvements CD is making to your organization. Fully automating CD is not cheap. Use the metrics to get management onside with investing in CD. Make use of the CI and CD metrics from Jenkins to help with the analytics.

What are we trying to achieve? Faster (Acceleration) We automate processes carried out by IT Faster deployments through whole lifecycle Bring products to market quicker Safer (Lower Operational Risk) Eliminate outages Workflow-scheduling Audit & compliance controls Cheaper (Reduce TCO) More resource time for value-creation Why outsource when you can automate

Continuous Delivery.e2e Pipeline Continuous Integration Automated Unit Testing Artifact creation Automated Acceptance testing / Approval Automated Deployment

Automation Automate your tool chain empower your team III