devops for database webinar

Post on 11-May-2015

230 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Industry expert Bob Aiello and DBmaestro’s CTO Yaniv Yehuda joined forces in this powerful webcast to explain what DevOps is all about, and why the database is such a critical component of it.

TRANSCRIPT

Bob AielloYaniv Yehuda

DevOps for Databases

2

• You will be on mute for the duration of the event

• We are now talking so please type a message in the Questions box in the Control Panel if you can’t hear us (please check your speakers and GoToWebinar audio settings first)

• There will be a Q+A session at the end, you can start submitting you questions on twitter, using the hashtag #DevOps4db or the Q&A bar on your gotowebinar dashboard.

• A recording of the full webinar will be put up online

Before We Begin

3

Presenters

Bob Aiello @BobAiello• Technical editor for CM Crossroads• Author of Configuration Management Best

Practices: Practical Methods that Work in the Real World

Yaniv Yehuda• CTO, Co-Founder at DBmaestro

4

• Emerging set of principles and practices• Focus on developer and operations

collaboration• Been around for a while• Agile Systems Operations• Agile Systems Administration

What is DevOps

5

• Conflict between development and operations• Puts the right focus on what needs to be done• Improves communication and collaboration• Facilitates knowledge sharing

Why is DevOps Important

6

• Knight Capital Group • August 1, 2012 trading disaster• Related to NYSE systems upgrade• Resulted in loss over $440 million dollars• Loss grew as customers left the firm• Knight Capital merged with Getco• Now KCG Holdings• Many other recent incidents

Recent Glitches & System Outages

7

• Effective communication• Knowledge sharing• Automating procedures

DevOps is Really About …

8

• Quality Assurance and testing• Information Security• Business Analysts• The entire cross functional team• Did we mention DBAs?

Who are the Other Stakeholders

9

• Automate everything• Move the process upstream• Create the deployment pipeline

How Do I Implement DevOps?

10

• Know exactly what you built• Prove it was deployed correctly• Ensure that there are no unauthorized

changes

Creating a Secure Trusted Base

11

• Old adage but true• The database is often forgotten and therefore

can become the weakest link• Essential from a compliance point of view• Should be the strongest link

The Weakest Link In a Chain

12

• The database holds your essential information

• Changes can impact the entire system• Need to be synchronized with other changes• Often overlooked

Database is a Key Component

13

• Don’t always communicate effectively• Need to share knowledge• Sounds like operations• Don’t forget InfoSec and SAs

Developers and DBAs

14

• Need to track changes• Changes need to be coordinated• Ensure that all changes were made• May need to back out a change• Traceability and transparency• Audit and compliance

Why is Database Version Control Important

15

• Start in the beginning • Very hard to tack on quality• Deming – build quality in from the beginning• Incremental• Move to QA next• DevOps model

Where Do We Start

16

• There is more to a database than SQL scripts• Ensure that changes are not made without

authorization• Native DB version control

Reaching Inside the Database

17

• DBAs are always the last to know• Don’t understand how their changes impact

the system• Are disconnected and may make changes

without understanding their impact• My own experience with DBAs and

production outages

DBAs are Often Not Included

18

• DevOps really involves all of the key stakeholders

• QA & testing• InfoSec• Systems administrators• Business analysts

DevOps Stakeholders

19

• More rapid changes• Fewer changes backed out• Better collaboration• Fewer defects• Ultimately better service • Happy customers • Profitability

How Do I Measure Success?

20

• Start with Dev• Move to QA• Take a complete lifecycle approach

Where Do I Start?

21

• Common scenario• Risk based approach• Demonstrate value• Iterative approach to improving process

Train In Motion

22

…in practice

Coordinated Process Traceability

Start in the Beginning

No Out-of-Process Changes

Impact Analysis

Automation

Task Based Development

Well Defined Processes

23

• Founded in 2008• Headed by Yariv Tabac and Yaniv Yehuda• Headquartered in Israel

About DBmaestro

Version Control - Two Isolated Processes

Version Control Process

24

DB Development Process

Check-Out Script

Modify Script

Get updated Script from DB

Check-In Script

Compile

Scriptin DB

Debug

Scriptin DB

?

??

?

25

With DECM - One Enforced Process

26

Development Methods

Int QA StageDev

DevDev

Deploy

Environment

Prod

Re-Base (due to defects)

27

Merge Dev1 to ForkMerge to dev2

Dev2

Dev1Merge to dev1

Merge Dev2 to Fork

Trunk

Merge Dev1 to Fork

Merge Dev2 to Fork

DBVC

Fork

Fork

Fork

Fork

Merge, Rebase, Fork, …

28

Use of Baseline

Int / QA

Dev1

Label/Tag/BaselineBackup Label/TagMerge

1

Ver 1.0

Ver 1.0

2 3

MS 1.1Merged - B

Before MS 1.1

MS 1.1Merged - M

Branch Merging MS 1.1

MS 1.1

7 8

MS 1.2 Merged - B

Before MS 1.2

Branch Merging MS 1.2 MS 1.2

Merged - MMS 1.2

Dev2 Ver 2.0 MS 2.1Merged - B

Before MS 2.1 MS 2.2 Merged - B

Before MS 2.2

4 5 6 9 10

MS 2.1Merged - MBranch

Merging MS 2.1

Branch Merging MS 2.2

MS 2.2 Merged - M

MS 2.1 MS 2.2

Deploy Source Target Baseline

1 Int / QA (Live) Dev1 …

2 Int / QA (MS 1.1) Dev1 (Live) Dev1 (Ver 1.0)

3 Dev1 (MS 1.1 Merged - B) Int / QA (Line) Int / QA (MS 1.1)

29

Deployment Automation Safety Net

30

A Quick Poll

31

If a Picture is Worth a Thousand Words…

32

Summary

Dev…• Enforce best practices for database development• Closely manage your database development• Know who can do what, where, when & why

…Ops• Build a safety net to catch problems early• Reduce deployment issues• Enable automated deployments

33

Q & A

top related