SlideShare a Scribd company logo
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Click to edit Master subtitle style
Copyright © 2017, Oracle and/or its affiliates. All rights reserved.
Better devops withBetter devops with MyMySQLSQL
What are we doing to help you in your devops organization ?
Frédéric Descamps
MyMySQLSQL Community Manager
Webinar, April 11th
2017
MySQL Devops Webinar
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Safe Harbor Statement
The following is intended to outline our general product direction. It is intended for
information purposes only, and may not be incorporated into any contract. It is not a
commitment to deliver any material, code, or functionality, and should not be relied upon
in making purchasing decisions. The development, release, and timing of any features or
functionality described for Oracle’s products remains at the sole discretion of Oracle.
3
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
What’s devops ?
devops is a movement whose goals is to align IT and company needs
… starting by aligning devs and ops
… devops brings together people and practices from development & operations
4
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
What’s devops ? (2)
devops is about CAMS !
Culture
Automation
Measurement
Sharing
5
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Why ?
By implementing all the principles within the devops attains meeting
goal of reduced the cost and risks related to change.
Minimizing the impact of changes in a continuous development an delivery model is a big
challenge but also a necessity. Service outage and disruption, planned or not are costly.
But a static product is also not attractive neither for customers, neither for developers.
So devops methodology is there to help you lower the fear of outages and reduce the
dependency to essential staff owning the knowledge by sharing the competences to the
all team..
6
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
CAMS 1st
principle: CULTURE
The culture is maybe the most important principle of devops, without it, the
implementation of the other principles won’t make any sense.
So the efficient collaboration and fluidity of roles and responsibilities is core to devops.
This means moving barriers and reducing friction between teams or disciplines is
important.
Everything database related must be discussed between developers, sysadmins
and DBAs. From hardware to product schema design and usage
7
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
CAMS 1st
principle: CULTURE
The culture is maybe the most important principle of devops, without it, the
implementation of the other principles won’t make any sense.
So the efficient collaboration and fluidity of roles and responsibilities is core to devops.
This means that reducing the barriers or friction between teams or disciplines is
important.
Everything database related must be discussed between developers, sysadmins
and DBAs. From hardware to product schema design and usage
8
We present webinars, articles and we speak at
devops conferences to spread this culture to developers,
sysadmins and DBAs
But we also apply this to our development cycle by constantly
communicating with our customers and our Community
when we add new features. From the design to the GA release.
What can we do as MySQL ?
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
CAMS 2nd
principle: AUTOMATION
Automated deployment and configuration with tools like Puppet, Ansible, Chef, … play a
key role in the devops ecosystem. This allows non experts to perform basic administration
tasks such as deploying test systems but even more important is allows the deployment
of the whole service stacks in a standardized, repeatable and low risk manner.
DBAs need to take care of binaries installation and upgrades, database
configuration, db related cronjobs, monitoring, db credentials and privileges,
schemas, replication, … & documentation !
9
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
CAMS 2nd
principle: AUTOMATION
Automated deployment and configuration with tools like Puppet, Ansible, Chef, … play a
key role in the devops ecosystem. This allows non experts to perform basic administration
tasks such as deploying test systems but even more important is allows the deployment
of the whole service stacks in a standardized, repeatable and low risk manner.
DBAs needs to take care of binaries installation and upgrades, database
configuration, db related cronjobs, monitoring, db credentials and privileges,
schemas, replication, … & documentation !
10
We understand that automation is probably the most difficult and technical
task performed by a devops organization.
Writing recipes or logbooks is not something simple and we are working
to develop solutions to make your life easier
What can we do as MySQL ?
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
AUTOMATION: what is our contribution ?
We are working on multiple solutions to help the automation of deployment, configuration
and management of MySQL:
11
Reproducible deployment:
MySQL in Oracle Cloud
Repositories (yum, apt)
MySQL snappy
MySQL official docker
images
MySQL Roles
Maintenance Operations:
MySQL X devAPI
MySQL Shell
Persistent variables
Online DDLs
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
AUTOMATION: MySQL in Oracle Cloud
With the new offer in Oracle Cloud, it’s very easy to deploy MySQL instances.
The cloud offers also the Enterprise version with MEM & MEB, providing two important
features for the devops world: monitoring and backup (to reproduce copies)
12
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
AUTOMATION: MySQL packaging
MySQL offers easy over-the-network download and install services (repositories) for
multiple different GNU/Linux distribution and architectures.
RPMs for Oracle Linux, RHEL, CentOS, SLES & Fedora
DEB for Ubuntu & Debian
We provide also docker and snappy images
13
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
AUTOMATION: MySQL administration (1)
MySQL provides with the new shell, a new X adminAPI making management much easier:
mysql-js> var i1 = 'root@instance01.jdl:3306';
mysql-js> var i2 = 'root@instance02.jdl:3306';
mysql-js> var i3 = 'root@instance03.jdl:3306';
mysql-js> dba.checkInstanceConguration(i1);
mysql-js> dba.checkInstanceConguration(i2);
14
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
AUTOMATION: MySQL administration (2)
MySQL this can really facilitate the writing of configuration management recipes.
15
---
innodbcluster::mysql_root_password: >
ENC[PKCS7,MIIBeQYJKoZIhvcNAQcD[...]eoyzHtW/WGpbiUz
innodbcluster::mysql_bind_interface: eth1
innodbcluster::cluster_name: devopsWebinar
innodbcluster::grant::user: fred
innodbcluster::grant::password: >
ENC[PKCS7,MIIBeQYJKoZIhvcNAQcD[...]eoyzHtW/WGpbiUz
innodbcluster::seed: mysql01
---
innodbcluster::mysql_root_password: >
ENC[PKCS7,MIIBeQYJKoZIhvcNAQcD[...]eoyzHtW/WGpbiUz
innodbcluster::mysql_bind_interface: eth1
innodbcluster::cluster_name: devopsWebinar
innodbcluster::grant::user: fred
innodbcluster::grant::password: >
ENC[PKCS7,MIIBeQYJKoZIhvcNAQcD[...]eoyzHtW/WGpbiUz
innodbcluster::seed: mysql01
---
classes:
- innodbcluster
Innodbcluster::mysql_serverid: 3
---
classes:
- innodbcluster
Innodbcluster::mysql_serverid: 3
common.yaml
mysql03.yaml
---
classes:
- innodbcluster
Innodbcluster::mysql_serverid: 2
---
classes:
- innodbcluster
Innodbcluster::mysql_serverid: 2
mysql02.yaml
---
classes:
- innodbcluster
Innodbcluster::mysql_serverid: 1
---
classes:
- innodbcluster
Innodbcluster::mysql_serverid: 1
mysql01.yaml
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
AUTOMATION: MySQL administration (2)
MySQL this can really facilitate the writing of configuration management recipes.
16
---
innodbcluster::mysql_root_password: >
ENC[PKCS7,MIIBeQYJKoZIhvcNAQcD[...]eoyzHtW/WGpbiUz
innodbcluster::mysql_bind_interface: eth1
innodbcluster::cluster_name: devopsWebinar
innodbcluster::grant::user: fred
innodbcluster::grant::password: >
ENC[PKCS7,MIIBeQYJKoZIhvcNAQcD[...]eoyzHtW/WGpbiUz
innodbcluster::seed: mysql01
---
innodbcluster::mysql_root_password: >
ENC[PKCS7,MIIBeQYJKoZIhvcNAQcD[...]eoyzHtW/WGpbiUz
innodbcluster::mysql_bind_interface: eth1
innodbcluster::cluster_name: devopsWebinar
innodbcluster::grant::user: fred
innodbcluster::grant::password: >
ENC[PKCS7,MIIBeQYJKoZIhvcNAQcD[...]eoyzHtW/WGpbiUz
innodbcluster::seed: mysql01
---
classes:
- innodbcluster
Innodbcluster::mysql_serverid: 3
---
classes:
- innodbcluster
Innodbcluster::mysql_serverid: 3
common.yaml
mysql03.yaml
---
classes:
- innodbcluster
Innodbcluster::mysql_serverid: 2
---
classes:
- innodbcluster
Innodbcluster::mysql_serverid: 2
mysql02.yaml
---
classes:
- innodbcluster
Innodbcluster::mysql_serverid: 1
---
classes:
- innodbcluster
Innodbcluster::mysql_serverid: 1
mysql01.yaml
Encryption is
done with
hiera-eyaml
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
AUTOMATION: MySQL administration (3)
Roles are implemented in MySQL 8.0
It’s now possible to create roles and assign account to a role. Permissions are defined for
the role. This way, all users won’t share the same credential but they will all have the same
permission. For automation this is also very nice as any new use just need to be assigned
to a role.
mysql> CREATE ROLE ‘dba’;
mysql> GRANT ALL on *.* TO ‘dba’;
mysql> CREATE USER ‘lefred’@’%’ IDENTIFIED BY ‘MySQLRocks’;
mysql> GRANT ‘dba’ TO ‘lefred’@’%’;
17
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
AUTOMATION: MySQL operations
Online DDLs
The online DDL feature enhances many DDL operations that formerly required a table copy
or blocked DML operations on the table.
If well prepared, new deployment in production might not require an interruption of
service.
18
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
AUTOMATION: MySQL Enterprise
MySQL Enterprise also provides complementary features that are easy to deploy:
MySQL Enterprise Transaparent Data Encryption (TDE)
MySQL Enterprise Authentication
use external sources to allow central control of user authentication
MySQL Enterprise Backup (MEB)
meb can help automatic data deployment (provisioning)
19
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
CAMS 3rd
principle: MONITORING
Monitoring your systems is mandatory, trending is often better than alerting. The main
goals are:
Find when a service is unavailable
Understand failure post-mortem
Learn from your infrastructure
Anticipate failures & needs
DBAs need also to monitor carefully diskspace and the most important, the
evolution of Response Time
20
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
CAMS 3rd
principle: MONITORING
Monitoring your systems is mandatory, trending is often better than alerting. The main
goals are:
Find when a service is unavailable
Understand failure post-mortem
Learn from your infrastructure
Anticipate failures & needs
DBAs need also to monitor carefully diskspace and the most important, the
evolution of Response Time
21
We are constantly enhancing Performance_Schema by adding
new metrics and reducing overhead.
We also added sys schema.
And we have a wonderful tool MySQL Enterprise Monitor that you get when using
Oracle’s cloud.
What can we do as MySQL ?
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
CAMS 4th
principle: VISIBILITY
Share all relevant monitoring metrics on company wide dashboards
(how many users connects, response time, services up & down, …)
Share continuous builds and tests results
22
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Q&A
23
Questions ?
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
References
24
• https://dev.mysql.com/doc/refman/8.0/en/roles.html
• https://dev.mysql.com/doc/refman/5.7/en/innodb-online-ddl.html
• https://blog.marceloaltmann.com/mysql-8-0-set-persist-command/
• https://hub.docker.com/r/mysql/mysql-server/
• https://dev.mysql.com/doc/refman/5.7/en/x-plugin.html
• https://github.com/mysql/mysql-snap
• https://dev.mysql.com/downloads/repo/yum/
• https://dev.mysql.com/downloads/repo/apt/
• https://dev.mysql.com/downloads/repo/suse/
• http://lefred.be/content/mysql-innodb-cluster-automated-installation-with-puppet/

More Related Content

PDF
Swedish MySQL User Group - MySQL InnoDB Cluster
PDF
OSS4B: Installing & Managing MySQL like a real devops
PDF
devops Days Belgium Ghent 2016
PDF
Boston meetup : MySQL Innodb Cluster - May 1st 2017
PDF
Introduction to MySQL InnoDB Cluster
PDF
Introduction to MySQL Document Store
PDF
Introduction to MySQL InnoDB Cluster
PDF
Helsinki MySQL User Group - MySQL InnoDB Cluster
Swedish MySQL User Group - MySQL InnoDB Cluster
OSS4B: Installing & Managing MySQL like a real devops
devops Days Belgium Ghent 2016
Boston meetup : MySQL Innodb Cluster - May 1st 2017
Introduction to MySQL InnoDB Cluster
Introduction to MySQL Document Store
Introduction to MySQL InnoDB Cluster
Helsinki MySQL User Group - MySQL InnoDB Cluster

What's hot (20)

PDF
MySQL InnoDB Cluster and Group Replication in a Nutshell
PDF
MySQL InnoDB Cluster - Group Replication
PDF
Inexpensive Datamasking for MySQL with ProxySQL - data anonymization for deve...
PDF
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
PDF
MySQL innodb cluster and Group Replication in a nutshell - hands-on tutorial ...
PDF
MySQL Innovation: from 5.7 to 8.0
PDF
MySQL Community Meetup in China : Innovation driven by the Community
PDF
High Availability in MySQL 8 using InnoDB Cluster
PDF
Introduction to MySQL InnoDB Cluster
PDF
Introduction to MySQL InnoDB Cluster
PDF
MySQL Document Store - How to replace a NoSQL database by MySQL without effor...
PDF
MySQL InnoDB Cluster in a Nutshell - Hands-on Lab
PDF
DataOps Barcelona - MySQL HA so easy... that's insane !
PDF
MySQL Group Replication - HandsOn Tutorial
PDF
MySQL InnoDB Cluster and MySQL Group Replication @HKOSC 2017
PDF
Webinar manage MySQL like a devops sysadmin
PDF
MySQL Document Store - when SQL & NoSQL live together... in peace!
PDF
MySQL InnoDB Cluster and Group Replication in a nutshell hands-on tutorial
PDF
replic8 - Replication in MySQL 8
PDF
MySQL 5.7 InnoDB Cluster (Jan 2018)
MySQL InnoDB Cluster and Group Replication in a Nutshell
MySQL InnoDB Cluster - Group Replication
Inexpensive Datamasking for MySQL with ProxySQL - data anonymization for deve...
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
MySQL innodb cluster and Group Replication in a nutshell - hands-on tutorial ...
MySQL Innovation: from 5.7 to 8.0
MySQL Community Meetup in China : Innovation driven by the Community
High Availability in MySQL 8 using InnoDB Cluster
Introduction to MySQL InnoDB Cluster
Introduction to MySQL InnoDB Cluster
MySQL Document Store - How to replace a NoSQL database by MySQL without effor...
MySQL InnoDB Cluster in a Nutshell - Hands-on Lab
DataOps Barcelona - MySQL HA so easy... that's insane !
MySQL Group Replication - HandsOn Tutorial
MySQL InnoDB Cluster and MySQL Group Replication @HKOSC 2017
Webinar manage MySQL like a devops sysadmin
MySQL Document Store - when SQL & NoSQL live together... in peace!
MySQL InnoDB Cluster and Group Replication in a nutshell hands-on tutorial
replic8 - Replication in MySQL 8
MySQL 5.7 InnoDB Cluster (Jan 2018)
Ad

Similar to MySQL Devops Webinar (20)

PDF
Oracle Enterprise Manager for MySQL
PDF
MySQL Community and Commercial Edition
PDF
10 Razões para Usar MySQL em Startups
PDF
Netherlands Tech Tour 03 - MySQL Cluster
PDF
MySQL cluster 7.4
PDF
Ohio Linux Fest -- MySQL's NoSQL
PDF
MySQL's NoSQL -- Texas Linuxfest August 22nd 2015
PDF
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
PDF
5 razões estratégicas para usar MySQL
PDF
20191001 bkk-secret-of inno-db_clusterv1
PPS
Introduction to Mysql
PDF
OOW16 - Deploying Oracle E-Business Suite for On-Premises Cloud and Oracle Cl...
PPTX
MySQL Tech Tour 2015 - Intro
PDF
MySQL en el mundo real. Evolución desde la compra por Oracle
PPTX
Mastering DevOps with Oracle
PDF
Mysql User Camp : 20-June-14 : Mysql New features and NoSQL Support
PDF
Mysql User Camp : 20th June - Mysql New Features
PDF
Unlocking Big Data Insights with MySQL
PDF
DevOps on Oracle Cloud
PPT
MySQL in Oracle environment : Quick start guide for Oracle DBA (Part 1)
Oracle Enterprise Manager for MySQL
MySQL Community and Commercial Edition
10 Razões para Usar MySQL em Startups
Netherlands Tech Tour 03 - MySQL Cluster
MySQL cluster 7.4
Ohio Linux Fest -- MySQL's NoSQL
MySQL's NoSQL -- Texas Linuxfest August 22nd 2015
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
5 razões estratégicas para usar MySQL
20191001 bkk-secret-of inno-db_clusterv1
Introduction to Mysql
OOW16 - Deploying Oracle E-Business Suite for On-Premises Cloud and Oracle Cl...
MySQL Tech Tour 2015 - Intro
MySQL en el mundo real. Evolución desde la compra por Oracle
Mastering DevOps with Oracle
Mysql User Camp : 20-June-14 : Mysql New features and NoSQL Support
Mysql User Camp : 20th June - Mysql New Features
Unlocking Big Data Insights with MySQL
DevOps on Oracle Cloud
MySQL in Oracle environment : Quick start guide for Oracle DBA (Part 1)
Ad

More from Frederic Descamps (20)

PDF
MySQL Innovation & Cloud Day - Document Store avec MySQL HeatWave Database Se...
PDF
MySQL Day Roma - MySQL Shell and Visual Studio Code Extension
PDF
RivieraJUG - MySQL Indexes and Histograms
PDF
RivieraJUG - MySQL 8.0 - What's new for developers.pdf
PDF
MySQL User Group NL - MySQL 8
PDF
State of the Dolphin - May 2022
PDF
Percona Live 2022 - MySQL Shell for Visual Studio Code
PDF
Percona Live 2022 - The Evolution of a MySQL Database System
PDF
Percona Live 2022 - MySQL Architectures
PDF
LinuxFest Northwest 2022 - The Evolution of a MySQL Database System
PDF
Open Source 101 2022 - MySQL Indexes and Histograms
PDF
Pi Day 2022 - from IoT to MySQL HeatWave Database Service
PDF
Confoo 2022 - le cycle d'une instance MySQL
PDF
FOSDEM 2022 MySQL Devroom: MySQL 8.0 - Logical Backups, Snapshots and Point-...
PDF
Les nouveautés de MySQL 8.0
PDF
Les nouveautés de MySQL 8.0
PDF
State of The Dolphin - May 2021
PDF
MySQL Shell for DBAs
PDF
Deploying Magento on OCI with MDS
PDF
MySQL Router REST API
MySQL Innovation & Cloud Day - Document Store avec MySQL HeatWave Database Se...
MySQL Day Roma - MySQL Shell and Visual Studio Code Extension
RivieraJUG - MySQL Indexes and Histograms
RivieraJUG - MySQL 8.0 - What's new for developers.pdf
MySQL User Group NL - MySQL 8
State of the Dolphin - May 2022
Percona Live 2022 - MySQL Shell for Visual Studio Code
Percona Live 2022 - The Evolution of a MySQL Database System
Percona Live 2022 - MySQL Architectures
LinuxFest Northwest 2022 - The Evolution of a MySQL Database System
Open Source 101 2022 - MySQL Indexes and Histograms
Pi Day 2022 - from IoT to MySQL HeatWave Database Service
Confoo 2022 - le cycle d'une instance MySQL
FOSDEM 2022 MySQL Devroom: MySQL 8.0 - Logical Backups, Snapshots and Point-...
Les nouveautés de MySQL 8.0
Les nouveautés de MySQL 8.0
State of The Dolphin - May 2021
MySQL Shell for DBAs
Deploying Magento on OCI with MDS
MySQL Router REST API

Recently uploaded (20)

PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPTX
Machine Learning_overview_presentation.pptx
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Empathic Computing: Creating Shared Understanding
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PDF
Approach and Philosophy of On baking technology
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPTX
sap open course for s4hana steps from ECC to s4
PDF
cuic standard and advanced reporting.pdf
PPTX
Big Data Technologies - Introduction.pptx
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
20250228 LYD VKU AI Blended-Learning.pptx
Agricultural_Statistics_at_a_Glance_2022_0.pdf
NewMind AI Weekly Chronicles - August'25-Week II
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Machine Learning_overview_presentation.pptx
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Network Security Unit 5.pdf for BCA BBA.
Assigned Numbers - 2025 - Bluetooth® Document
Diabetes mellitus diagnosis method based random forest with bat algorithm
“AI and Expert System Decision Support & Business Intelligence Systems”
Empathic Computing: Creating Shared Understanding
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Approach and Philosophy of On baking technology
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
sap open course for s4hana steps from ECC to s4
cuic standard and advanced reporting.pdf
Big Data Technologies - Introduction.pptx
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Building Integrated photovoltaic BIPV_UPV.pdf

MySQL Devops Webinar

  • 1. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Click to edit Master subtitle style Copyright © 2017, Oracle and/or its affiliates. All rights reserved. Better devops withBetter devops with MyMySQLSQL What are we doing to help you in your devops organization ? Frédéric Descamps MyMySQLSQL Community Manager Webinar, April 11th 2017
  • 3. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle. 3
  • 4. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | What’s devops ? devops is a movement whose goals is to align IT and company needs … starting by aligning devs and ops … devops brings together people and practices from development & operations 4
  • 5. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | What’s devops ? (2) devops is about CAMS ! Culture Automation Measurement Sharing 5
  • 6. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Why ? By implementing all the principles within the devops attains meeting goal of reduced the cost and risks related to change. Minimizing the impact of changes in a continuous development an delivery model is a big challenge but also a necessity. Service outage and disruption, planned or not are costly. But a static product is also not attractive neither for customers, neither for developers. So devops methodology is there to help you lower the fear of outages and reduce the dependency to essential staff owning the knowledge by sharing the competences to the all team.. 6
  • 7. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | CAMS 1st principle: CULTURE The culture is maybe the most important principle of devops, without it, the implementation of the other principles won’t make any sense. So the efficient collaboration and fluidity of roles and responsibilities is core to devops. This means moving barriers and reducing friction between teams or disciplines is important. Everything database related must be discussed between developers, sysadmins and DBAs. From hardware to product schema design and usage 7
  • 8. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | CAMS 1st principle: CULTURE The culture is maybe the most important principle of devops, without it, the implementation of the other principles won’t make any sense. So the efficient collaboration and fluidity of roles and responsibilities is core to devops. This means that reducing the barriers or friction between teams or disciplines is important. Everything database related must be discussed between developers, sysadmins and DBAs. From hardware to product schema design and usage 8 We present webinars, articles and we speak at devops conferences to spread this culture to developers, sysadmins and DBAs But we also apply this to our development cycle by constantly communicating with our customers and our Community when we add new features. From the design to the GA release. What can we do as MySQL ?
  • 9. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | CAMS 2nd principle: AUTOMATION Automated deployment and configuration with tools like Puppet, Ansible, Chef, … play a key role in the devops ecosystem. This allows non experts to perform basic administration tasks such as deploying test systems but even more important is allows the deployment of the whole service stacks in a standardized, repeatable and low risk manner. DBAs need to take care of binaries installation and upgrades, database configuration, db related cronjobs, monitoring, db credentials and privileges, schemas, replication, … & documentation ! 9
  • 10. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | CAMS 2nd principle: AUTOMATION Automated deployment and configuration with tools like Puppet, Ansible, Chef, … play a key role in the devops ecosystem. This allows non experts to perform basic administration tasks such as deploying test systems but even more important is allows the deployment of the whole service stacks in a standardized, repeatable and low risk manner. DBAs needs to take care of binaries installation and upgrades, database configuration, db related cronjobs, monitoring, db credentials and privileges, schemas, replication, … & documentation ! 10 We understand that automation is probably the most difficult and technical task performed by a devops organization. Writing recipes or logbooks is not something simple and we are working to develop solutions to make your life easier What can we do as MySQL ?
  • 11. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | AUTOMATION: what is our contribution ? We are working on multiple solutions to help the automation of deployment, configuration and management of MySQL: 11 Reproducible deployment: MySQL in Oracle Cloud Repositories (yum, apt) MySQL snappy MySQL official docker images MySQL Roles Maintenance Operations: MySQL X devAPI MySQL Shell Persistent variables Online DDLs
  • 12. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | AUTOMATION: MySQL in Oracle Cloud With the new offer in Oracle Cloud, it’s very easy to deploy MySQL instances. The cloud offers also the Enterprise version with MEM & MEB, providing two important features for the devops world: monitoring and backup (to reproduce copies) 12
  • 13. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | AUTOMATION: MySQL packaging MySQL offers easy over-the-network download and install services (repositories) for multiple different GNU/Linux distribution and architectures. RPMs for Oracle Linux, RHEL, CentOS, SLES & Fedora DEB for Ubuntu & Debian We provide also docker and snappy images 13
  • 14. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | AUTOMATION: MySQL administration (1) MySQL provides with the new shell, a new X adminAPI making management much easier: mysql-js> var i1 = '[email protected]:3306'; mysql-js> var i2 = '[email protected]:3306'; mysql-js> var i3 = '[email protected]:3306'; mysql-js> dba.checkInstanceConguration(i1); mysql-js> dba.checkInstanceConguration(i2); 14
  • 15. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | AUTOMATION: MySQL administration (2) MySQL this can really facilitate the writing of configuration management recipes. 15 --- innodbcluster::mysql_root_password: > ENC[PKCS7,MIIBeQYJKoZIhvcNAQcD[...]eoyzHtW/WGpbiUz innodbcluster::mysql_bind_interface: eth1 innodbcluster::cluster_name: devopsWebinar innodbcluster::grant::user: fred innodbcluster::grant::password: > ENC[PKCS7,MIIBeQYJKoZIhvcNAQcD[...]eoyzHtW/WGpbiUz innodbcluster::seed: mysql01 --- innodbcluster::mysql_root_password: > ENC[PKCS7,MIIBeQYJKoZIhvcNAQcD[...]eoyzHtW/WGpbiUz innodbcluster::mysql_bind_interface: eth1 innodbcluster::cluster_name: devopsWebinar innodbcluster::grant::user: fred innodbcluster::grant::password: > ENC[PKCS7,MIIBeQYJKoZIhvcNAQcD[...]eoyzHtW/WGpbiUz innodbcluster::seed: mysql01 --- classes: - innodbcluster Innodbcluster::mysql_serverid: 3 --- classes: - innodbcluster Innodbcluster::mysql_serverid: 3 common.yaml mysql03.yaml --- classes: - innodbcluster Innodbcluster::mysql_serverid: 2 --- classes: - innodbcluster Innodbcluster::mysql_serverid: 2 mysql02.yaml --- classes: - innodbcluster Innodbcluster::mysql_serverid: 1 --- classes: - innodbcluster Innodbcluster::mysql_serverid: 1 mysql01.yaml
  • 16. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | AUTOMATION: MySQL administration (2) MySQL this can really facilitate the writing of configuration management recipes. 16 --- innodbcluster::mysql_root_password: > ENC[PKCS7,MIIBeQYJKoZIhvcNAQcD[...]eoyzHtW/WGpbiUz innodbcluster::mysql_bind_interface: eth1 innodbcluster::cluster_name: devopsWebinar innodbcluster::grant::user: fred innodbcluster::grant::password: > ENC[PKCS7,MIIBeQYJKoZIhvcNAQcD[...]eoyzHtW/WGpbiUz innodbcluster::seed: mysql01 --- innodbcluster::mysql_root_password: > ENC[PKCS7,MIIBeQYJKoZIhvcNAQcD[...]eoyzHtW/WGpbiUz innodbcluster::mysql_bind_interface: eth1 innodbcluster::cluster_name: devopsWebinar innodbcluster::grant::user: fred innodbcluster::grant::password: > ENC[PKCS7,MIIBeQYJKoZIhvcNAQcD[...]eoyzHtW/WGpbiUz innodbcluster::seed: mysql01 --- classes: - innodbcluster Innodbcluster::mysql_serverid: 3 --- classes: - innodbcluster Innodbcluster::mysql_serverid: 3 common.yaml mysql03.yaml --- classes: - innodbcluster Innodbcluster::mysql_serverid: 2 --- classes: - innodbcluster Innodbcluster::mysql_serverid: 2 mysql02.yaml --- classes: - innodbcluster Innodbcluster::mysql_serverid: 1 --- classes: - innodbcluster Innodbcluster::mysql_serverid: 1 mysql01.yaml Encryption is done with hiera-eyaml
  • 17. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | AUTOMATION: MySQL administration (3) Roles are implemented in MySQL 8.0 It’s now possible to create roles and assign account to a role. Permissions are defined for the role. This way, all users won’t share the same credential but they will all have the same permission. For automation this is also very nice as any new use just need to be assigned to a role. mysql> CREATE ROLE ‘dba’; mysql> GRANT ALL on *.* TO ‘dba’; mysql> CREATE USER ‘lefred’@’%’ IDENTIFIED BY ‘MySQLRocks’; mysql> GRANT ‘dba’ TO ‘lefred’@’%’; 17
  • 18. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | AUTOMATION: MySQL operations Online DDLs The online DDL feature enhances many DDL operations that formerly required a table copy or blocked DML operations on the table. If well prepared, new deployment in production might not require an interruption of service. 18
  • 19. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | AUTOMATION: MySQL Enterprise MySQL Enterprise also provides complementary features that are easy to deploy: MySQL Enterprise Transaparent Data Encryption (TDE) MySQL Enterprise Authentication use external sources to allow central control of user authentication MySQL Enterprise Backup (MEB) meb can help automatic data deployment (provisioning) 19
  • 20. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | CAMS 3rd principle: MONITORING Monitoring your systems is mandatory, trending is often better than alerting. The main goals are: Find when a service is unavailable Understand failure post-mortem Learn from your infrastructure Anticipate failures & needs DBAs need also to monitor carefully diskspace and the most important, the evolution of Response Time 20
  • 21. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | CAMS 3rd principle: MONITORING Monitoring your systems is mandatory, trending is often better than alerting. The main goals are: Find when a service is unavailable Understand failure post-mortem Learn from your infrastructure Anticipate failures & needs DBAs need also to monitor carefully diskspace and the most important, the evolution of Response Time 21 We are constantly enhancing Performance_Schema by adding new metrics and reducing overhead. We also added sys schema. And we have a wonderful tool MySQL Enterprise Monitor that you get when using Oracle’s cloud. What can we do as MySQL ?
  • 22. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | CAMS 4th principle: VISIBILITY Share all relevant monitoring metrics on company wide dashboards (how many users connects, response time, services up & down, …) Share continuous builds and tests results 22
  • 23. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Q&A 23 Questions ?
  • 24. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | References 24 • https://dev.mysql.com/doc/refman/8.0/en/roles.html • https://dev.mysql.com/doc/refman/5.7/en/innodb-online-ddl.html • https://blog.marceloaltmann.com/mysql-8-0-set-persist-command/ • https://hub.docker.com/r/mysql/mysql-server/ • https://dev.mysql.com/doc/refman/5.7/en/x-plugin.html • https://github.com/mysql/mysql-snap • https://dev.mysql.com/downloads/repo/yum/ • https://dev.mysql.com/downloads/repo/apt/ • https://dev.mysql.com/downloads/repo/suse/ • http://lefred.be/content/mysql-innodb-cluster-automated-installation-with-puppet/