39
Dave Sayers Applying DevOps principles in established corporate organisations

eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

Dave Sayers

Applying DevOps principles in established corporate organisations

Page 2: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

“There is a difference in DevOps approaches between organisation

where IT is not a core competency – and those where it is”

Page 3: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

Agenda

• Why?• Characteristics of traditional and

modern firms• Foundations of DevOps approaching in

the enterprise• Importance of configuration

management• Brief look forward

Page 4: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

Why?

• Fast flow of planned change• Efficiency• Repeatability• Audit• Compliance• Security, etc.

Page 8: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

Management approach

Page 9: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

Heterogeneous Dev and Ops teams

Page 12: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

Established Organisations

• Heterogeneous Environments• Focus on integration• Top down approach• Low frequency of releases• Manual processes• Heterogeneous Dev and Ops

teams• “Buy not build”

Page 13: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

Characteristics of Modern firms

• Smaller number of decoupled products• More homogeneous dev and ops teams• Built with automation in mind• High deploy rates• Built on modern / opensource

technology

Page 14: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

Configuration Management

Page 18: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

DevOps toolchainDeveloper

COD

E

SVNGIT

ClearCase

SCM

RAMArtifactory

Nexus

DSL

RapidDeployChef

Puppet

ARA

Hudson / JenkinsCruiseControl

BambooRTC

Build

ReleaseEngineer Developer,

Tester &Admin

DEVELOPMENT

OPERATIONS

Environments

Creates & publishes release packages & dependencies

Installs & configurestarget runtimes

Creates builds

Schedules and deploys releases

Page 19: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

Source Code \EARS \ddl \source

Infrastructure Config \oracle \J2EE \wmq \wmb

Baseline File: SALESAPP_BUILD_01_02_003

DEPLOY PACKAGE

SALESAPP_BUILD_01_02_003.tar

Creating the Deploy Package

Page 20: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

`

Release Manager

DeploymentServer IHS

WAS

MQ

cluster/ds/jms

httpd.conf

qmgr/queue

httpd.confIHS

WAS

MQ

MQ

WAS

IHSIHS

WAS

MQ

cluster/ds/jms

httpd.conf

qmgr/queue

cluster/ds/jms

httpd.conf

qmgr/queue

cluster/ds/jms

qmgr/queue

Implementation Manager selects:

• Application• Version• Environment

SALESAPP_BUILD_01_02_003SALESAPP_BUILD_01_02_004

Page 21: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

21

Model Driven Deployments

• To ensure consistency – always deploy the same thing!• Data driven

• Templates created that define infrastructure or application configuration

• Contain the complete configuration for a target technology

• Deltas become part of the template – so configuration changes are not made in isolation

Page 22: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

22

Properties / Template

MQSC Template

------<QMGR_NAME>--------

------<QMGR_HOST>--------

------<QMGR_PORT>--------

DevTst01

QMGR_NAME SALESDEVQM01

QMGR_HOST lnxdev01

QMGR_PORT 1414

Page 23: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

23

Properties / Template

MQSC Template

------<QMGR_NAME>--------

------<QMGR_HOST>--------

------<QMGR_PORT>--------

------<DB_USER>--------

DevTst01

QMGR_NAME SALESDEVQM01

QMGR_HOST lnxdev01

QMGR_PORT 1414

DB_USER devtstuser

Page 24: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

24

Properties / Template

MQSC Template

------<QMGR_NAME>--------

------<QMGR_HOST>--------

------<QMGR_PORT>--------

------<DB_USER>--------

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

Page 25: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

25

Version Control

Configuration Management Tool

Build Process Release Mechanism

Middleware

CodeConfiguration

Eclipse or Web based config. UI

Generate Versioned Release Components

Ideally web based, self service

•WebSphere AS•Portal / WPS / ESB / WSSR•MQ / Broker / Datapower•DB2 / Oracle

Page 26: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

26

Version Control

Configuration Management Tool

Build Process Release Mechanism

Middleware

CodeConfiguration

Eclipse or Web based config. UI

Generate Versioned Release Components

Ideally web based, self service

•WebSphere AS•Portal / WPS / ESB / WSSR•MQ / Broker / Datapower•DB2 / Oracle

x.mqsc Alter channel

Page 27: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

27

Version Control

Configuration Management Tool

Build Process Release Mechanism

Middleware

CodeConfiguration

Eclipse or Web based config. UI

Generate Versioned Release Components

Ideally web based, self service

•WebSphere AS•Portal / WPS / ESB / WSSR•MQ / Broker / Datapower•DB2 / Oracle

x.mqsc Alter channel SALES_MQ_01_02_033.zip

Page 28: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

28

Version Control

Configuration Management Tool

Build Process Release Mechanism

Middleware

CodeConfiguration

Eclipse or Web based config. UI

Generate Versioned Release Components

Ideally web based, self service

•WebSphere AS•Portal / WPS / ESB / WSSR•MQ / Broker / Datapower•DB2 / Oracle

x.mqsc Alter channel SALES_MQ_01_02_033.zip SALES_MQ_01_02_033 WMQ

Page 29: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

29

Version Control

Configuration Management Tool

Build Process Release Mechanism

Middleware

CodeConfiguration

Eclipse or Web based config. UI

Generate Versioned Release Components

Ideally web based, self service

•WebSphere AS•Portal / WPS / ESB / WSSR•MQ / Broker / Datapower•DB2 / Oracle

x.mqsc Alter channel SALES_MQ_01_02_033.zip SALES_MQ_01_02_033 WMQ

x.py JMS Queue Dest

Page 30: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

30

Version Control

Configuration Management Tool

Build Process Release Mechanism

Middleware

CodeConfiguration

Eclipse or Web based config. UI

Generate Versioned Release Components

Ideally web based, self service

•WebSphere AS•Portal / WPS / ESB / WSSR•MQ / Broker / Datapower•DB2 / Oracle

x.mqsc Alter channel SALES_MQ_01_02_033.zip SALES_MQ_01_02_033 WMQ

x.py JMS Queue Dest SALES_WAS_01_02_046.zip

Page 31: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

31

Version Control

Configuration Management Tool

Build Process Release Mechanism

Middleware

CodeConfiguration

Eclipse or Web based config. UI

Generate Versioned Release Components

Ideally web based, self service

•WebSphere AS•Portal / WPS / ESB / WSSR•MQ / Broker / Datapower•DB2 / Oracle

x.mqsc Alter channel SALES_MQ_01_02_033.zip SALES_MQ_01_02_033 WMQ

x.py JMS Queue Dest SALES_WAS_01_02_046.zip SALES_WAS_01_02_046 WAS

Page 32: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

32

Version Control

Configuration Management Tool

Build Process Release Mechanism

Middleware

CodeConfiguration

Eclipse or Web based config. UI

Generate Versioned Release Components

Ideally web based, self service

•WebSphere AS•Portal / WPS / ESB / WSSR•MQ / Broker / Datapower•DB2 / Oracle

x.mqsc Alter channel SALES_MQ_01_02_033.zip SALES_MQ_01_02_033 WMQ

x.py JMS Queue Dest SALES_WAS_01_02_046.zip SALES_WAS_01_02_046 WAS

x.ddl Column, View, etc

Page 33: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

33

Version Control

Configuration Management Tool

Build Process Release Mechanism

Middleware

CodeConfiguration

Eclipse or Web based config. UI

Generate Versioned Release Components

Ideally web based, self service

•WebSphere AS•Portal / WPS / ESB / WSSR•MQ / Broker / Datapower•DB2 / Oracle

x.mqsc Alter channel SALES_MQ_01_02_033.zip SALES_MQ_01_02_033 WMQ

x.py JMS Queue Dest SALES_WAS_01_02_046.zip SALES_WAS_01_02_046 WAS

x.ddl Column, View, etc SALES_DB_01_02_012.zip

Page 34: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

34

Version Control

Configuration Management Tool

Build Process Release Mechanism

Middleware

CodeConfiguration

Eclipse or Web based config. UI

Generate Versioned Release Components

Ideally web based, self service

•WebSphere AS•Portal / WPS / ESB / WSSR•MQ / Broker / Datapower•DB2 / Oracle

x.mqsc Alter channel SALES_MQ_01_02_033.zip SALES_MQ_01_02_033 WMQ

x.py JMS Queue Dest SALES_WAS_01_02_046.zip SALES_WAS_01_02_046 WAS

x.ddl Column, View, etc SALES_DB_01_02_012.zip SALES_DB_01_02_012 Oracle

Page 35: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

35

AppServer - products

Apache 2.2

WebSphere AS 8.5

WMQ 7.5

AIX 6 TL10

Database - productsOracle 11.1.0.7.0

AIX 6 TL10

Provisioning New EnvironmentsProducts

Page 36: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

36

AppServer - products Configuration / App

Apache 2.2 WEB_CONFIG_SALES_1_2_056

WebSphere AS 8.5 WAS_CONFIG_SALES_1_2_087

WMQ 7.5 WMQ_CONFIG_SALES_1_2_032

AIX 6 TL10 STANDARD ORG IMAGE

Database - products Configuration / AppOracle 11.1.0.7.0 ORA_CONFIG_SALES_1_2_042

AIX 6 TL10 STANDARD ORG IMAGE

Provisioning New EnvironmentsProducts > Configuration

Page 37: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

37

SalesRelease 1.2

AppServer - products Configuration / AppAPP_CONTENT_SALES_1_2_124

Apache 2.2 WEB_CONFIG_SALES_1_2_056

WebSphere AS 8.5 WAS_CONFIG_SALES_1_2_087

WMQ 7.5 WMQ_CONFIG_SALES_1_2_032

AIX 6 TL10 STANDARD ORG IMAGE

Database - products Configuration / AppOracle 11.1.0.7.0 ORA_CONFIG_SALES_1_2_042

AIX 6 TL10 STANDARD ORG IMAGE

}Provisioning New Environments

Products > Configuration > Code

Page 39: eSynergy Dave Sayers - Applying DevOps principles in established corporate organisations

Product evaluation / feedback

[email protected]@midvision.com