Sunteți pe pagina 1din 26

DevOps For Database

Infra SCG | | 24th Sep2016

COPYRIGHT 2011 SAPIENT CORPORATION | CONFIDENTIAL

Agenda
1. Take Away

2. Brief What & Why DevOps?


3. DBA/Developers Gain Efficiency with DevOps
4. DevOps Tools to automate DB activities

5. Case Study
6. Appendix
7. Questions / Feedback

COPYRIGHT 2011 SAPIENT CORPORATION | CONFIDENTIAL

Take Away

High level understanding of DevOps, CD and database DevOps


How tools are helping to gain efficiency in operations
Brief about DevOps tools which can help database automations
Database DevOps tools comparison
Overview of implementation for automation of DBCR using GIT, Jenkins,
ANT and Sonar

COPYRIGHT 2011 SAPIENT CORPORATION | CONFIDENTIAL

Brief - DevOps / CD/ DBDevOps

COPYRIGHT 2011 SAPIENT CORPORATION | CONFIDENTIAL

What is DevOps

5
COPYRIGHT 2011 SAPIENT CORPORATION | CONFIDENTIAL

What is DevOps
No matter what you think of the
DevOps movement, two things are
certain: The full definition of DevOps
can be remarkably hard to pin down,
but the basic premise of development
and operations collaborating closely
leads to higher quality applications.
DevOps is a response to a continual
frustration: a lack of collaboration and
communication between development
and operations on software projects
that increase the cost , time and labor
involved in delivering and maintaining
software systems.

OPs

Dev

Biz

Agile

DevOps

DevOps is complementary to Agile


6
COPYRIGHT 2011 SAPIENT CORPORATION | CONFIDENTIAL

Continuous Delivery
Continuous Delivery (CD) is the automated implementation of build, deploy , test ,
release and monitoring processes.

CD approach involves continuous automation of build, deployment, testing &


release activities with the following goals
To make the process efficient & reliable
Make process more visible
Enable automated testing
Ensure quality is built into the process

7
COPYRIGHT 2011 SAPIENT CORPORATION | CONFIDENTIAL

What DevOps Means To Database


With DevOps gaining momentum , DBAs and database developers need to
include database in the continuation process.
DevOps for Database requires best practices just like source code.

Deployment practices need to be enforced

Version control needs to be enforced

Automated notifications and red flags

Safe automation process needs to be deployed

Environment provisioning with standards

8
COPYRIGHT 2011 SAPIENT CORPORATION | CONFIDENTIAL

What DevOps Means To Database


The key driver to DevOps movement is the traditional tension between
developers and IT operations:

Developers want continuous enhancement and releasing of software for meeting


schedule targets

IT operations want stability and controlled change for meeting reliability, low risk and
high performance targets. In particular, DBAs are used to rigorously manage the
hardware behind their instances, stewarding previous data, and cautiously examining
code to prevent that late night unplanned outage.

So, DevOps is an approach intended to remove the conflicts of those two groups
and to provide stabilizing delivery via common objectives, roadmaps and finally
effective collaboration.

9
COPYRIGHT 2011 SAPIENT CORPORATION | CONFIDENTIAL

What DevOps Means To Database


Application
Life Cycle

Requirement
Gathering

Design

Code
Reviews

Deployment

DB

DBA without
DevOps

DBA With DevOps

10
COPYRIGHT 2011 SAPIENT CORPORATION | CONFIDENTIAL

10

DBA/Developers Gain Efficiency with DevOps

COPYRIGHT 2011 SAPIENT CORPORATION | CONFIDENTIAL

11

What is Tending?
Adopting DevOps principals
Increasing interest in Open Source automation (chef, puppet .. )
Forward thinking with technologies hybrid mind-set

Single click application deployments


Automation & Cloud adoption & DbaaS
Increasing focus on standardization

Design new age of automation with administrators


Shifting towards workflow design and runbooks implementation

*Some content is powered from http://www.oracle.com/technetwork/oem/framework-infra/con9731-em12-devopsemcli-2805387.pdf

COPYRIGHT 2011 SAPIENT CORPORATION | CONFIDENTIAL

12

DevOps For Developers


Code
Commit
Build

Developer

Report

QoS

Build
finalization

Repos..

Deployment Life Cycle (DLM)

QoS

Deploy

Performance

Envs..
Code
Coverage

Automation

COPYRIGHT 2011 SAPIENT CORPORATION | CONFIDENTIAL

13

DBAs Life With & Without DevOps


Past

Now

High lead time for enabling hardware resources

More standardization of processes

More resources required to perform complex tasks

Less time to enabling hardware resources

Small market for Open Source tools

Less resources required to perform complex tasks

Less & non-trusted automation

Abundance of Open Source tools in market

More opportunities for human errors

Organized and trusted automation

Specialized knowledge bank

Less chances of human errors

Less ROI of resources

High ROI of resources

Less handshake b/w Dev & Ops

More handshake b/w Dev & Ops

COPYRIGHT 2011 SAPIENT CORPORATION | CONFIDENTIAL

14

DevOps For DBAs


There are lot many activities which can be brought under DevOps
umbrella from database admin perspective . Activities which I could
think off are..
Setups and configurations
Database instance provisioning
Database refresh and cloning
Reporting
Backups etc.

COPYRIGHT 2011 SAPIENT CORPORATION | CONFIDENTIAL

15

DevOps Tools

COPYRIGHT 2011 SAPIENT CORPORATION | CONFIDENTIAL

16

DevOps Tools Market Map

COPYRIGHT 2011 SAPIENT CORPORATION | CONFIDENTIAL

17

DB-DevOps Tools By Popularity


Tool Name

Description

Dbmaestro

DBmaestro enables Agile development and Continuous


Integration and Delivery for the Database.

LIQUI Base

Liquibase is an open source database-independent library for


tracking, managing and applying database schema changes.

Datical

Datical creates database schema automation software for the


enterprise IT Systems Management market.

Flyway

Flyway is an open-source database migration tool. It strongly


favors simplicity and convention over configuration.

DBDeploy Ant

DBdeploy is a Database Change Management tool. Its for


developers or
DBAs who want to evolve their database design

Jenkins

Jenkins is an open source continuous integration tool written


in Java.

Chef

Chef is a configuration management tool written


in Ruby and Erlang.

COPYRIGHT 2011 SAPIENT CORPORATION | CONFIDENTIAL

18

DB-DevOps Tools Comparison


Attached is the snapshot of comparison of popular tools in DB DevOps landscape.
Also refer to https://xebialabs.com/

COPYRIGHT 2011 SAPIENT CORPORATION | CONFIDENTIAL

19

Case Study

COPYRIGHT 2011 SAPIENT CORPORATION | CONFIDENTIAL

20

Project DBCR Deployment Automation


Code
Commit
Build using
Jenkins

Developer

GIT as
Repos..

QoS by
Sonar
and
Junit..

Report by
sonar..

Build
finalization
using
Jenkins..

Deployment Life Cycle (DLM)


Using dbdeployant.xml

QoS

INT
Deploy

Performance

UAT
Code
Coverage

Automation

Production

COPYRIGHT 2011 SAPIENT CORPORATION | CONFIDENTIAL

21

Appendix

COPYRIGHT 2011 SAPIENT CORPORATION | CONFIDENTIAL

22

Old Vs New

COPYRIGHT 2011 SAPIENT CORPORATION | CONFIDENTIAL

23

Survey Report

http://www.rightscale.com/blog/cloud-industry-insights/new-devops-trends-2016-state-cloud-survey

COPYRIGHT 2011 SAPIENT CORPORATION | CONFIDENTIAL

24

VALUE REALIZATION

DevOps

value

Plan

Code

Build

Test

Release

Deploy

Operate

Continuous Delivery

Continuous Integration
Agile Development
collaboration

Value realization by collaboration & continuous improvement with time

COPYRIGHT 2014 SAPIENTNITRO | CONFIDENTIAL

COPYRIGHT 2011 SAPIENT CORPORATION | CONFIDENTIAL

25
25

COPYRIGHT 2011 SAPIENT CORPORATION | CONFIDENTIAL

26

S-ar putea să vă placă și