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.
2. Before We Begin
• 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
2
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
3
4. What is DevOps
• Emerging set of principles and practices
• Focus on developer and operations
collaboration
• Been around for a while
• Agile Systems Operations
• Agile Systems Administration
4
5. Why is DevOps Important
•
•
•
•
Conflict between development and operations
Puts the right focus on what needs to be done
Improves communication and collaboration
Facilitates knowledge sharing
5
6. Recent Glitches & System Outages
•
•
•
•
•
•
•
•
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
6
7. DevOps is Really About …
• Effective communication
• Knowledge sharing
• Automating procedures
7
8. Who are the Other Stakeholders
•
•
•
•
•
Quality Assurance and testing
Information Security
Business Analysts
The entire cross functional team
Did we mention DBAs?
8
9. How Do I Implement DevOps?
• Automate everything
• Move the process upstream
• Create the deployment pipeline
9
10. Creating a Secure Trusted Base
• Know exactly what you built
• Prove it was deployed correctly
• Ensure that there are no unauthorized
changes
10
11. The Weakest Link In a Chain
• 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
11
12. Database is a Key Component
• The database holds your essential
information
• Changes can impact the entire system
• Need to be synchronized with other changes
• Often overlooked
12
13. Developers and DBAs
•
•
•
•
Don’t always communicate effectively
Need to share knowledge
Sounds like operations
Don’t forget InfoSec and SAs
13
14. Why is Database Version Control Important
•
•
•
•
•
•
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
14
15. Where Do We Start
•
•
•
•
•
•
Start in the beginning
Very hard to tack on quality
Deming – build quality in from the beginning
Incremental
Move to QA next
DevOps model
15
16. Reaching Inside the Database
• There is more to a database than SQL scripts
• Ensure that changes are not made without
authorization
• Native DB version control
16
17. DBAs are Often Not Included
• 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
17
18. DevOps Stakeholders
• DevOps really involves all of the key
stakeholders
• QA & testing
• InfoSec
• Systems administrators
• Business analysts
18
19. How Do I Measure Success?
•
•
•
•
•
•
•
More rapid changes
Fewer changes backed out
Better collaboration
Fewer defects
Ultimately better service
Happy customers
Profitability
19
20. Where Do I Start?
• Start with Dev
• Move to QA
• Take a complete lifecycle approach
20
21. Train In Motion
•
•
•
•
Common scenario
Risk based approach
Demonstrate value
Iterative approach to improving process
21
23. About DBmaestro
• Founded in 2008
• Headed by Yariv Tabac and Yaniv Yehuda
• Headquartered in Israel
23
24. Version Control - Two Isolated Processes
Version Control Process
DB Development Process
Check-Out
Script
?
Check-In
Script
?
?
Modify Script
Get updated
Script from DB
?
Compile
Script
in DB
Debug Script
in DB
27. Merge, Rebase, Fork, …
Trunk
Merge to dev1
Dev1
Fork
Dev2
Fork
DB
VC
Fork
Fork
27
28. Use of Baseline
Ver 1.0
Dev1
1
Int / QA
Before MS 1.1
Branch
Merging
MS 1.1
2
MS 1.1
MS 1.1
Merged - B
Before MS 1.2
Branch
Merging
MS 1.2
3 MS 1.1
Merged - M
MS 1.2
MS 2.1
Ver 1.0
4
Dev2
Ver 2.0
7
Branch
Merging
MS 2.1
MS 2.1
Merged - M
5
Before MS 2.1
6
MS 2.1
Merged - B
MS 1.2
Merged - B
8 MS 1.2
Merged - M
MS 2.2
Branch
Merging
MS 2.2
MS 2.2
Merged - M
9
Before MS 2.2
10
MS 2.2
Merged - B
Label/Tag/Baseline
Backup Label/Tag
Merge
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)
…
28
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
32
Hi everybody and welcome to our webinar, thank you for taking the time to be here with us. Today we will be hearing from Bob Aiello and Yaniv Yehuda, who will be discussing DevOps for Database.
First before we beginI would like to go over a few details:Please note you will be on mute during the event. If you can't hear me now, please check your speakers and GoToWebinar audio settings.We will have a Q&A session at the end of the presentation, but you can start submitting you questions on twitter, using the hashtag #DevOps4db or the Q&A bar on your gotowebinar dashboard.Also note we are recording the session and will be placing it online at the Dbmaestro’s website to watch on-demand. I will send you the download link later this week, and feel free to share it with your colleagues.
Bob Aiello is a consultant, technical editor for CM Crossroads, and the author of Configuration Management Best Practices: Practical Methods that Work in the Real World. Mr. Aiello has more than twenty-five years’ experience as a technical manager in several top NYC financial services firms where he had company-wide responsibility for Configuration and Release Management providing hands-on technical support for enterprise source code management tools, automated application build, package and deploy and DevOps for large mission critical systems.Yaniv Yehuda, Co-Founder and CTO of DbmaestroFrom this point on I will hand the broadcast over to Bob- Enjoy! Bob- take it from here.
Founded in 2008Part of the Extreme Group which has about 180 IT professionals consultants
Thank you Bob and Yaniv, and I hope you all enjoyed the webcast. Again, it will be available on-demand in a few days.If you would like to learn more, you are welcome to join one of our weekly demos- an invitation will be sent to you via email.Thank you all and enjoy the rest of your day.