Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
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

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 = '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
  • 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/