Manage MySQL like a devops sysadmin. Frédéric Descamps

Similar documents
Database Engineering. Percona Live, Amsterdam, September, 2015

Jenkins: A complete solution. From Continuous Integration to Continuous Delivery For HSBC

MySQL High Availability

Application Deployment

Monitoring MySQL with Prometheus & Grafana

Deploying MySQL in Production Daniel Kowalewski Senior Technical Operations Engineer, Percona

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

DevOps Online Training

From Dev/Ops to devops

Deploy Stuff, Run Stuff Jax Devops London Kris

Deploying MySQL in Production

DevOps Anti-Patterns. Have the Ops team deal with it. Time to fire the Ops team! Let s hire a DevOps unit! COPYRIGHT 2019 MANICODE SECURITY

Analyze MySQL Query Performance with Percona Cloud Tools

How to set up SQL Source Control The short guide for evaluators

MySQL Performance Improvements

DISQUS. Continuous Deployment Everything. David

ITIL isn t evil Most people who implement it are

Developing and Testing Java Microservices on Docker. Todd Fasullo Dir. Engineering

Monitoring (with) Puppet. PuppetCamp

Migrating to Aurora MySQL and Monitoring with PMM. Percona Technical Webinars August 1, 2018

Best Practices for Alert Tuning. This white paper will provide best practices for alert tuning to ensure two related outcomes:

Docker & Chef. Containers. Containers and Docker 8/4/14. Linux containers (LXC) Single operating system Multiple isolated, working configurations

Scaling Solr in the Cloud

Collaborative Communication. Martin Alfke

Firefox Crash Reporting.

Effective Testing for Live Applications. March, 29, 2018 Sveta Smirnova

PostgreSQL migration from AWS RDS to EC2

OpenStack Enabling DevOps Shannon McFarland CCIE #5245 Distinguished DEVNET-1104

DevOps Course Content

Creating a Hybrid Gateway for API Traffic. Ed Julson API Platform Product Marketing TIBCO Software

Upgrading MySQL Best Practices. Apr 11-14, 2011 MySQL Conference and Expo Santa Clara,CA by Peter Zaitsev, Percona Inc

Dave Stokes MySQL Community Manager

Scaling with Postgres. Robert Treat Percona Performance Conference 2009

Practical MySQL Performance Optimization. Peter Zaitsev, CEO, Percona July 02, 2015 Percona Technical Webinars

HEARTLAND DEVELOPER CONFERENCE 2017 APPLICATION DATA INTEGRATION WITH SQL SERVER INTEGRATION SERVICES

Strengthen and Scale security using DevSecOps

How to pimp high volume PHP websites. 27. September 2008, PHP conference Barcelona. By Jens Bierkandt

TM DevOps Use Case TechMinfy All Rights Reserved

From Continuous Integration To Continuous Delivery With Jenkins

Migrating and living on RDS/Aurora. life after Datacenters

CONTINUOUS DELIVERY WITH DC/OS AND JENKINS

Cloudreach Data Center Migration Services

Percona Software & Services Update

One System To Fit Them All:

Tips from the Trenches Preventing downtime for the over extended DBA. Andrew Moore Senior Remote DBA Percona Managed Services

CASE STUDY FINANCE. Enhancing software development with SQL Monitor

Run your own Open source. (MMS) to avoid vendor lock-in. David Murphy MongoDB Practice Manager, Percona

Oracle Alter Session Set Current_schema Runs Under What User

10 Percona Toolkit tools every MySQL DBA should know about

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

DEVOPS COURSE CONTENT

Important DevOps Technologies (3+2+3days) for Deployment

DevOps Course Content

MySQL at Scale at Square

Database Continuous Delivery & Your Salvation!

MySQL Group Replication in a nutshell

Best Practices for MySQL Scalability. Peter Zaitsev, CEO, Percona Percona Technical Webinars May 1, 2013

Regain control thanks to Prometheus. Guillaume Lefevre, DevOps Engineer, OCTO Technology Etienne Coutaud, DevOps Engineer, OCTO Technology

Containers Infrastructure for Advanced Management. Federico Simoncelli Associate Manager, Red Hat October 2016

Driving a Kaizen Culture

Sometimes Tools Matter. John E. Vincent DevOpsDays Goteborg 2011

Switching to Innodb from MyISAM. Matt Yonkovit Percona

Power Up/Level Up: Supercharging Your Security Program for Cloud and DevOps. Rich

I keep hearing about DevOps What is it?

Running MySQL on AWS. Michael Coburn Wednesday, April 15th, 2015

MySQL Document Store. How to replace a NoSQL database by MySQL without effort but with a lot of gains?

Code Review for DevOps

A guide for assembling your Jira Data Center team

Percona Software & Services Update

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

Let Robots Manage Your Schema Without Killing All Humans. Jenni

Continuous Integration / Continuous Testing

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

Continuous Delivery of your infrastructure. Christophe

MySQL Point-in-Time Recovery like a Rockstar

GitHub's online schema migrations for MySQL

Twitter, Inc.

FIXING THE FLYING PLANE

Expert Guidance on Migrating from Magento 1 to Magento 2

4 Effective Tools for Docker Monitoring. By Ranvijay Jamwal

Orchestrating the Continuous Delivery Process

Which technology to choose in AWS?

MySQL Replication : advanced features in all flavours. Giuseppe Maxia Quality Assurance Architect at

MySQL High Availability Solutions. Alex Poritskiy Percona

2018 Database DevOps Survey DBmaestro 1

Extending JON 2.3 Use cases

Scalable, Good, Cheap. a tale of sexiness, puppets, shell scripts, and python

Choosing a MySQL HA Solution Today. Choosing the best solution among a myriad of options

MongoDB Monitoring and Performance for The Savvy DBA

Leveraging the OO Jenkins Plugin in DevOps scenarios

Keep CALM and Architect On: An Architect s Role in DevOps

database reliability engineering what. why. how. Percona Live, Dublin, 2017 Laine Campbell, Sr. Dir, Production Engineering, Fastly

Implementing the Twelve-Factor App Methodology for Developing Cloud- Native Applications

Continuous Delivery for Cloud Native Applications

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

Speech 2 Part 2 Transcript: The role of DB2 in Web 2.0 and in the IOD World

Unify DevOps and SecOps: Security Without Friction

White Paper(Draft) Continuous Integration/Delivery/Deployment in Next Generation Data Integration

Percona XtraDB Cluster

Practical MySQL Performance Optimization. Peter Zaitsev, CEO, Percona July 20 th, 2016 Percona Technical Webinars

Transcription:

Manage MySQL like a devops sysadmin Frédéric Descamps Webinar Oct 2012

Who am I? Frédéric Descamps @lefred http://about.be/lefred Managing MySQL since 3.23 (as far as I remember) devops believer www.percona.com

To start with... Let's use devops like slides... www.percona.com

Let's use devops like slides... 4

from 5

6

to 7

8

devops is a movement willing to help aligning IT with company needs (starting by aligning devs and ops) @endemics - Gildas Le Nadan - The Devops movement, Mixit Lyon 2011 9

devops is about communication! 10

devops is about communication! between dev and ops 11

Small and frequent successful iterations devs ops This is one of the most fundamental ideas in devops: 12 the feedback loop!

We can say that devops is bringing together people and practices from development and operations 13

I am a happy op! I am a happy dev! We can say that devops is bringing together people and practices from development and operations 14

devops now = being professional improving the collaboration by increasing trust and respect 15

/me likes! HOW can I reach that goal? 16

devops requires visibility! 17

Everybody should have a status overview Is there any problem? How are the test going? How is performance? 18

devops is about CAMS 19

CULTURE AUTOMATION MEASUREMENT SHARING @botchagalupe @damonedwards http://www.opscode.com/blog/2010/07/16/what-devops-means-to-me/ 20

What techniques can I use? 21

Monitoring Infrastructure as Code Continuous Improvement 22

What about DBAs? 23

Join the team, follow the movement! 24

You are already between devs and ops 25

I am a happy dba! You are already between devs and ops 26

But we are still closer to the dark side of the force: sysadmins 27

But we are still closer to the dark side of the force: sysadmins 28

How can we apply devops ideas to our dba job? 29

1. communication 2. configuration management 3. testing 4. visibility 30

1. Communication Usually DEVS communicate with managers, quality managers, products managers,... 31

OPS communicate with support, ISP's and... their servers 32

DBAs don't communicate 33

The interaction between developers, sysadmins, dbas and all the actors should begin from the start of any projects 34

35

36

Discuss everything database related with developers and sysadmins: disks and raid design schema design & partitions additional columns & indexes tables repair,... 37

2. configuration management Can we automate DBAs job? Should we? Even if we have only one database? 38

39

40

A lot of things to configure binaries databases configs cron jobs monitoring grants replication 41

Documentation is needed and must be up to date 42

Needs to be reproducible quickly without missing anything! 43

Keep track of any changes Mind the gap 44

3. testing Test every changes every new package... EVERYTHING 45

4. visibility Expose monitoring, trending, test results and project status to EVERYONE in your company!! Everybody should know why the database is slooooow! 46

Use all these metrics to plan ahead all the changes! NOT ALONE BUT WITH EVERYBODY 47

notions practices ideas methodologies 48

We are DBAs we work with data, we need something more concrete! 49

We are DBA's we work with data, we need something more concrete! 50

TRUE! 51

communication 52

Use an agile method to handle your projects 53

For operations a good method is kanban 54

55

56

Use dashboards and make them available to EVERYONE 57

share all your dashboards with everybody in your company 58

configuration management 59

consider your infrastructure as code 60

Use puppet (or any other configuration management tool) to deploy everything related to your database 61

Save your puppet recipes into a version control system 62

but also save your database schema changes in that system 63

test 64

65

What should you test as a devops dba? 66

Test if you can deploy everything and if you didn't forget anything 67

Test also the performance! Is it faster with this change? 68

use Percona Toolkit 69

automate your tests 70

visibility 71

monitoring 72

Monitor your database with an alerting system (nagios). Disk/IO, CPU load, Network traffic, disk usage 73

But do you want to be woken up at night because replication of the machine taking backups is 60sec behind? 74

NO! 75

Then do you want to be woken up in the middle of the night because they are 1000 more selects than usual? 76

NO! 77

Your alerting should answer those questions: Is the database server running? Does it allow connections? Is replication lagging on production slaves? 78

trending 79

The most interesting facts for a DBA are the trending results! Use cacti... with Percona Monitoring Plugins They provide very good metrics 80

Correlate changes in the trending results with your configuration changes... everything should be tracked 81

others? 82

You can also use other devops oriented tools like : 83

with kanban plugin puppet-dashboard 84

If there is only one thing you remember from this presentation 85

Yes, even a schema change MUST be considered like a migration! 86

review it test it plan it do it 87

and now that we have a devdbaops team 88

we can start working on really interesting tasks for everyone 89

the smooth migration 90

When this goal is achieved DEVS have less pressure OPS have less pressure DBAs have less pressure 91

collaboration = less pressure 92

93

application present future v 1.9 v 2.0 db schema v 1.9 v 2.0 94

application present future v 1.9 v 2.0 db schema v 1.9 v 2.0 95

present application v 1.9 v 2.0 db schema v 1.9 v 2.0 96

present application v 1.9 Issue!! v 2.0 db schema v 1.9 v 2.0 97

application v 1.9 v 2.0 db schema v 1.9 v 2.0 98

application v 1.9 v 2.0 Issue!! db schema v 1.9 v 2.0 99

application v 1.9 v 2.0 db schema v 1.9 v 2.0 100

This can only be the result of 101

collaboration between DEVS, DBAs & OPS 102

demo 103

git puppet Percona server Jenkins VirtualBox vagrant mcollective 104

Change the schema (add an index for example) Commit! 105

Launches a new virtual machine from scratch using vagrant Install everything and populate a test db 106

Start some basic tests with cucumberpuppet to see if all puppet code was correctly performed No error is a success Otherwise is a fail 107

Then start some tests with perconaplayback and/or pt-query-digest and compares to old values Faster is a success Slower is a fail 108

Projects links: http://puppetlabs.com/resources/overview-2/ http://puppetlabs.com/puppet/related-projects/dashboard/ http://theforeman.org/ http://git-scm.com/ http://www.redmine.org/ http://www.redmine.org/projects/redmine/wiki/pluginkanban http://vagrantup.com https://www.virtualbox.org/ http://jenkins-ci.org/ http://www.percona.com/software/percona-toolkit/ http://code.google.com/p/mysql-cacti-templates/ Photo Credit: http://www.flickr.com/photos/kuma-kigurumi/ http://www.flickr.com/photos/airforceone/2125791018/ http://www.flickr.com/photos/akosvaradi/2617404213/ http://www.flickr.com/photos/doberdad/2264130166 http://www.flickr.com/photos/tomsaint/2714401733 http://www.flickr.com/photos/10335017@n07/4570943373/ http://www.bxel.net/metro-de-bruxelles/metro_plan_bruxelles.jpg http://www.flickr.com/photos/youngkimstudio/6216328782 http://www.flickr.com/photos/26676383@n00/3690701110/ http://www.flickr.com/photos/blubbla/209864856 http://www.flickr.com/photos/chrishuffman/2336990347 http://geekandpoke.typepad.com/.a/6a00d8341d3df553ef0153922fa2ee970b-pi 109

You can find all these recipes here! www.percona.com

Speaking at In London, December 3rd & 4th www.percona.com

Speaking at 40% off passes using the discount code MySQL-UK In London, December 3rd & 4th www.percona.com

lefred@percona.com @lefred