SlideShare a Scribd company logo
1 of 39
Nine DevOps Tips For Going Into 
Production With Galera Cluster 
Confidential 
November 11, 2014 
Johan Andersson & Jean-Jérôme Schmidt 
Severalnines 
johan@severalnines.com & jj@severalnines.com
Confidential 
Logistics 
! I'm Jean-Jérôme and I’ll be your host for today's 
webinar 
! Feel free to ask any questions in the Questions 
section of this application or via the Chat box 
! You can also contact me directly via the chat 
box or via email: jj@severalnines.com during or 
after the webinar 
2 
Copyright Severalnines AB
Confidential 
ClusterControl 
In a nutshell 
3 
Copyright 2012 Severalnines AB 
Manage Scale 
Deploy Monitor
Supported Databases 
Confidential 
SQL 
! MariaDB Cluster 
! MySQL Galera Cluster 
(Codership) 
! Percona XtraDB Cluster 
! MySQL Cluster (NDB) 
! MySQL Replication 5.6 
! Standalone MySQL/MariaDB 
NoSQL 
! MongoDB Sharded Cluster 
! MongoDB Replica Set 
! TokuMX Cluster 
Copyright Severalnines AB 
4
Confidential 
Customers 
5 
Copyright Severalnines AB
Confidential 
Agenda 
! 101 Sanity Check 
! Operating System 
! Backup Strategies 
! Galera Recovery 
! Query Performance 
! Schema Changes 
! Security / Encryption 
! Reporting 
! Protecting from Disasters 
6 
Copyright Severalnines AB
#1 – 101 Sanity Check (1/4) 
! Ensure ALL tables are InnoDB or XtraDB 
! Innodb supports FULLTEXT indexes in MySQL5.6 
! Ensure ALL tables have a PRIMARY KEY 
! If no PRIMARY KEY is defined you can do: 
ALTER TABLE table ADD COLUMN pkid BIGINT 
AUTO_INCREMENT PRIMARY KEY; 
! Ensure you have NO unbound queries 
! E.g UPDATE table SET x=x+1 (and there are many rows) 
! Update/delete in smaller batches (e.g 1000 records). 
! Better support for huge (unbound) queries are in the pipe 
Confidential 
7 
Copyright Severalnines AB
#1 – 101 Sanity Check (2/4) 
! Ensure that the application can tolerate non-sequential 
Confidential 
auto increments. 
! Redirect deadlock prone update queries on hot tables 
and rows to one of the Galera nodes: 
! E.g UPDATE counter_tbl SET counter = counter +1; 
! http://www.severalnines.com/blog/avoiding-deadlocks-galera- 
set-haproxy-single-node-writes-and-multi-node-reads 
! Use wsrep_sst_method=xtrabackup-v2 
8 
Copyright Severalnines AB
#1 – 101 Sanity Check (3/4) 
Confidential 
! WAN environment? 
! [Note] WSREP: (0b066c90-d4fb-11e1-0800-96b2cf43aaf6, 'tcp:// 
0.0.0.0:4567') turning message relay requesting on, nonlive 
peers: tcp://10.0.1.2:4567 
[Note] WSREP: (0b066c90-d4fb-11e1-0800-96b2cf43aaf6, 'tcp:// 
0.0.0.0:4567') reconnecting to df4e387f-d4e2- 
11e1-0800-2e6080299165 (tcp://10.0.1.2:4567), attempt 0 
! Increase timeouts 
! wsrep_provider_options=‘evs.keepalive_period=PT3S; 
evs.inactive_check_period=PT10S; 
evs.suspect_timeout=PT30S; 
evs.inactive_timeout=PT1M; 
evs.install_timeout=PT1M; 
evs.send_window=1024; 
evs.user_send_window=512’; 
! This will relax how fast a node will be evicted from the cluster. 
! Usually default values are good if networks with a ping time of 
<10-15 ms. 
9 
Copyright Severalnines AB
#1 – 101 Sanity Check (4/4) 
! There is no reason to use any 5.5 based MySQL variants 
! Use MySQL 5.6 / MariaDB 10.x 
! Lots of bug fixes 
! Performance optimizations 
! Write intensive workloads 
! Query optimizer enhancements 
! A good foundation for later upgrading to 5.7 based 
Confidential 
MySQL 
! Use Galera Version 3.x series 
10 
Copyright Severalnines AB
#2 – Operating System (1/2) 
Confidential 
! Swapping 
! echo “1” > /proc/sys/vm/swappiness 
! NUMA on Multi-socket 
! Can lead to contention and strange lock ups 
! Is it enabled: 
dmesg | grep –i numa 
! Grub boot option ”numa=off” 
! … and other possibilities 
! Filesystem 
! Reduce writes by mounting with 
! noatime 
11 
Copyright Severalnines AB
#2 – Operating System (2/2) 
! In Virtualized environments it is easy to over-commit 
resources on a single Host. 
! Keep track on the Host hosting the VMs 
! Is it heavily loaded? 
! CPU Steal (check on the VMs)? 
! Is it swapping? 
Confidential 
12 
Copyright Severalnines AB
Confidential 
#3 – Backup 
! Percona XtraBackup 
! Online consistent backup 
! Full and Incremental backups 
! Possible to backup databases and tables when 
innodb_file_per_table is used. 
! Parallelism & compression & encryption 
! mysqldump 
! Use with –single-transaction, consistent / online for innodb tables 
! May require tweaking of innodb_old_blocks_time and 
innodb_old_blocks_pct (default values in 5.6 are quite good). 
! S3 / Glazier or Swift can be used for offline/offsite storage 
13 
Copyright Severalnines AB
Copyright Severalnines AB 
#4 – Galera Recovery (IST) (1/3) 
! IST (Incremental State Transfer) is faster than SST (Snapshot 
Confidential 
State Transfer). 
! Each Galera node has a cache, gcache. 
! Stores committed write sets 
! Circular buffer 
! If a node is down (crash, maint window) and then 
becomes a JOINER: 
! Send ID of last applied write set to the DONOR 
! DONOR checks if it can send the next events from the 
gcache. 
! Yes == IST (fast) 
! No == SST (slow). E.g 3TB of data is no fun to SST.
#4 – Galera Recovery (IST) (2/3) 
! Dimension the gcache, example to handle a 
maintenance window of 6 hours: 
! Writes to cluster per second: 1MB/s 
! Maintenance window (seconds) = 6 hours *60*60 = 21600s 
! gcache size = 1 MB/s x 21600 s = 21GB 
! 1.5x or 2x the value to have margins: 
Confidential 
! gcache.size=42G 
! wsrep_provider_options=‘gcache.size=42G;…’ 
15 
Copyright Severalnines AB
Copyright Severalnines AB 
#4 – Galera Recovery (IST) (3/3) 
Confidential 
! How much do you write to the 
Galera Cluster? 
! Look at the sum of 
wsrep_replicated_bytes 
and 
wsrep_received_bytes 
and get the rate between 
two points in time. 
! Here we can see that a node 
handles: 
109575 + 33758 bytes / second 
= ~140KB/s 
16
Copyright Severalnines AB 
#4 – Galera Recovery (SST) 
! Two pitfalls to be avoided with SSTs: 
! wsrep_sst_method=rsync 
! you may have to change in /usr/bin/wsrep_sst_rsync: 
! timeout = 300 ! 3600 (or bigger) 
! Else the rsync daemons may timeout when initializing the SST. 
! wsrep_sst_method=xtrabackup[-v2] 
! Uses mysql tmpdir by default. 
! If tmpdir is too small SST may fail on the donor. The transaction 
Confidential 
log simply does not fit. 
! You can set in my.cnf: 
[xtrabackup] 
tmpdir=/a/bigger/partition 
! How big do I need tmpdir to be? [KB writes to node ] x [ backup 
time ]. Similar to the gcache.
#5 – Query Performance (1/5) 
! A number of things to watch out for: 
! Badly written queries or missing indexes 
! DDL locking many record (BEGIN; SELECT * FROM t1 FOR UPDATE; 
Confidential 
… ) 
! DDL updating/deleting many records in one chunk 
! wsrep_max_ws_rows/wsrep_max_ws_size sets upper limits 
! Update/delete “small” batches of 1000-10000 records. Do 
not update 100000 records. 
! Deadlocks and deadlock prone code 
! E.g running two mysqldumps at the same time 
! Updating the very same record in a very hot table from 
multiple threads on multiple hosts 
! Use your favorite tool to detect the problems 
18 
Copyright Severalnines AB
#5 – Query Performance (2/5) 
! When Performance grinds to a halt you want to know! 
Confidential 
19 
Copyright Severalnines AB
#5 – Query Performance (3/5) 
! You may want to have an Alarm notification (in 1.2.9) 
Confidential 
20 
Copyright Severalnines AB
#5 – Query Performance (4/5) 
! If a dead-lock happens, you want to tell your developers 
Confidential 
(in 1.2.9) 
21 
Copyright Severalnines AB
#5 – Query Performance (5/5) 
! And see if Galera is clogged up 
Confidential 
22 
Copyright Severalnines AB
#6 – Schema Changes (1/4) 
! Consider an upgrade from schema version V1 to version V2 
! There are two principal types of schema changes that can 
Confidential 
be performed: 
! Compatible 
! E.g ALTER TABLE .. ADD COLUMN … , CREATE INDEX .. 
! Application(s) will still continue with V1 
! Upgrade schema first, then applications 
! Incompatible 
! E.g ALTER TABLE .. DROP COLUMN … 
! Application(s) cannot use V2 
! Must upgrade applications first to support V2, and upgrade 
schema to V2 
23 
Copyright Severalnines AB
#6 – Schema Changes (2/4) 
! Galera supports multiple ways for upgrading schema 
Confidential 
from V1 to V2 
! Total Order Isolation (TOI) 
! wsrep_osu_method=TOI 
! Rolling Schema Upgrade (RSU) 
! wsrep_osu_method=RSU 
! Desynching nodes (not covered here),but check out 
http://www.severalnines.com/blog/webinar-replay-slides-galera- 
cluster-best-practices-zero-downtime-schema-changes 
24 
Copyright Severalnines AB
#6 – Schema Changes (3/4) 
! Total Order Isolation (TOI) 
Confidential 
! Default method 
! Executed in the same order wrt to other transactions on all 
Galera nodes. 
! Cluster behaves like a single mysql server 
! Ok for non-copying ALTER TABLE or tiny seldomly used tables 
(100s of records) or if application traffic is disabled. 
! ALTER TABLE … ADD INDEX.. / CREATE INDEX.. 
! Not ok for copying ALTERs, since table is LOCKED. 
! May wreak havoc 
25 
Copyright Severalnines AB
#6 – Schema Changes (4/4) 
! Rolling Schema Upgrade (RSU) 
! DDL is not replicated, executed on one node at a time 
! Executed on one node at a time: 
! node1> SET GLOBAL wsrep_OSU_method=RSU; 
node1> ALTER TABLE …. 
// check that node1 is SYNCED 
node2> SET GLOBAL wsrep_OSU_method=RSU; 
node2> ALTER TABLE …. 
! The change MUST be a compatible schema change. 
! E.g ALTER TABLE .. DROP COLUMN will wreak havoc. 
Confidential 
26 
Copyright Severalnines AB
#7 – Security / Encryption (1/2) 
! Encrypt replication links between Galera nodes. 
Especially in public cloud environments / WAN setups. 
! Create a certificate and a key 
http://www.severalnines.com/blog/performance-impact-encrypted-replication- 
galera-cluster-mysql 
! wsrep_provider_options=’socket.ssl_cert=galera_rep.crt; 
socket.ssl_key=galera_rep.key;<rest of wsrep provider 
options>’ 
! Requires a complete stop of all nodes. 
! Don’t forget to set this option for the garbd (arbitrator)! 
Confidential 
27 
Copyright Severalnines AB
#7 – Security / Encryption (2/2) 
! Nothing to do with Galera but… 
! Encrypt application links between Galera nodes and 
applications, especially in public/untrusted environments: 
! Dense howto: 
http://www.vmadmin.co.uk/linux/44-redhat/145- 
linuxmysqlencryption 
Confidential 
28 
Copyright Severalnines AB
Confidential 
#8 - Reporting 
! Try to separate OLTP and OLAP if possible 
! Run reports off an async slave or dedicated node 
! Remember: huge queries eat CPU, RAM and DISK. 
! Galera is not faster than its slowest node. 
! Watch out for reports with side effects 
! Large updates writing back? 
! Consider using Amazon Redshift (Data Warehouse) 
! Upload CSV files for processing. 
! http://www.severalnines.com/blog/data-warehouse-cloud-how- 
upload-mysql-data-amazon-redshift-reporting-and-analytics 
29 
Copyright Severalnines AB
#9 – Protecting from Disasters (1/5) 
! Eventually a disaster will happen 
! Software bugs 
! Network / router upgrades 
! AZ down 
! Schema / software / hardware upgrade going wrong 
! Too many connections 
Confidential 
30 
Copyright Severalnines AB
#9 – Protecting from Disasters (1/5) 
! One way of protecting from Cluster failures is to use an 
asynchronous slave replicating from the Galera Cluster. 
! If the Cluster would fail, the asynchronous slave could 
take over and handle the application work load until the 
cluster error has been resolved. 
Confidential 
31 
Copyright Severalnines AB 
Galera Cluster in DC1 Async Slave DC2 
READ ONLY!
#9 – Protecting from Disasters (2/5) 
! Asynchronously replicated slave, benefits: 
! + Decoupled from the Cluster 
! - Data loss is possible (minimize with semi-sync replication, but write 
Confidential 
performance will suffer) 
! Setup one or more Galera nodes to be Replication Masters (RM) 
and connect the Replication Slave (RS) 
32 
Copyright Severalnines AB 
Galera Cluster in DC1 
Async Slave DC2 
RM1 
RM2 
Asynchronous 
Replication, 
Semi sync is optional 
RS1 
READ ONLY!
#9 – Protecting from Disasters (3/5) 
! Using GTIDs (available in MySQL 5.6 and MariaDB 10.0) 
allows for easy fail-over from RM2 to RM1: 
! slave> CHANGE MASTER TO MASTER_HOST=’RM1’, 
MASTER_AUTO_POSITION=1; 
START SLAVE; 
Confidential 
33 
Copyright Severalnines AB 
Galera Cluster in DC1 
Async Slave DC2 
RM1 
RM2 
Asynchronous 
Replication, 
Semi sync is optional 
RS1
#9 – Protecting from Disasters (4/5) 
! Prepare each Galera Replication Master (MySQL 5.6 style): 
gtid_mode=ON 
enforce_gtid_consistency=1 
log_bin=binlog 
log_slave_updates=1 
expire_logs_days=7 
#loose_rpl_semi_sync_master_enabled=1 
server_id=X # must be a unique number 
! Prepare each Slave (MySQL 5.6 style): 
gtid_mode=ON 
enforce_gtid_consistency=1 
log_bin=binlog 
relay_log=relay-bin 
log_slave_updates=1 
expire_logs_days=7 
#loose_rpl_semi_sync_slave_enabled=1 
server_id=Y ## must be a unique number 
Confidential 
Copyright Severalnines AB
Copyright Severalnines AB 
#9 – Protecting from Disasters (5/5) 
! Enabling the binlog (log_slave_updates and log_bin) on 
the Galera nodes allows you to do Point In Time 
Recovery 
! Restore last backup (must be newer than 
Confidential 
expire_logs_days ) 
! Use the binary logs to roll forward until last transaction.
#9 – Protecting from Disasters (1/5) 
! A common problem is overload situations, which can 
originate from: 
! DDOS 
! Website is loading slow, user reload, creating more and more 
Confidential 
connections 
! Eventually the MySQL server runs out of connections 
(max_connections) 
! 5.6 only scales to 40 cores anyways 
! A good way of alleviating this is to use a Proxy, e.g 
HAProxy. 
36 
Copyright Severalnines AB
#9 – Protecting from Disasters (3/5) 
Confidential 
37 
Copyright Severalnines AB 
Galera Cluster 
Limit the # of 
backend 
connections 
HAProxy queues 
incoming 
connections
Confidential 38
Confidential 
Thank You! 
! Cluster Configurator 
! www.severalnines.com/config 
! ClusterControl 
! www.severalnines.com/clustercontrol 
! Severalnines Blog 
! www.severalnines.com/blog 
! Contact: jj@severalnines.com 
39

More Related Content

What's hot

Percona Live 2022 - MySQL Architectures
Percona Live 2022 - MySQL ArchitecturesPercona Live 2022 - MySQL Architectures
Percona Live 2022 - MySQL ArchitecturesFrederic Descamps
 
MySQL Administrator 2021 - 네오클로바
MySQL Administrator 2021 - 네오클로바MySQL Administrator 2021 - 네오클로바
MySQL Administrator 2021 - 네오클로바NeoClova
 
Proxysql use case scenarios fosdem17
Proxysql use case scenarios    fosdem17Proxysql use case scenarios    fosdem17
Proxysql use case scenarios fosdem17Alkin Tezuysal
 
The consequences of sync_binlog != 1
The consequences of sync_binlog != 1The consequences of sync_binlog != 1
The consequences of sync_binlog != 1Jean-François Gagné
 
Kafka replication apachecon_2013
Kafka replication apachecon_2013Kafka replication apachecon_2013
Kafka replication apachecon_2013Jun Rao
 
"It can always get worse!" – Lessons Learned in over 20 years working with Or...
"It can always get worse!" – Lessons Learned in over 20 years working with Or..."It can always get worse!" – Lessons Learned in over 20 years working with Or...
"It can always get worse!" – Lessons Learned in over 20 years working with Or...Markus Michalewicz
 
카프카, 산전수전 노하우
카프카, 산전수전 노하우카프카, 산전수전 노하우
카프카, 산전수전 노하우if kakao
 
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScaleThe Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScaleColin Charles
 
MySQL operator for_kubernetes
MySQL operator for_kubernetesMySQL operator for_kubernetes
MySQL operator for_kubernetesrockplace
 
Building ClickHouse and Making Your First Contribution: A Tutorial_06.10.2021
Building ClickHouse and Making Your First Contribution: A Tutorial_06.10.2021Building ClickHouse and Making Your First Contribution: A Tutorial_06.10.2021
Building ClickHouse and Making Your First Contribution: A Tutorial_06.10.2021Altinity Ltd
 
Kubernetes Disaster Recovery - Los Angeles K8s meetup Dec 10 2019
Kubernetes Disaster Recovery - Los Angeles K8s meetup Dec 10 2019Kubernetes Disaster Recovery - Los Angeles K8s meetup Dec 10 2019
Kubernetes Disaster Recovery - Los Angeles K8s meetup Dec 10 2019Steve Wong
 
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요Jo Hoon
 
Cache in API Gateway
Cache in API GatewayCache in API Gateway
Cache in API GatewayGilWon Oh
 
FOSDEM 2022 MySQL Devroom: MySQL 8.0 - Logical Backups, Snapshots and Point-...
FOSDEM 2022 MySQL Devroom:  MySQL 8.0 - Logical Backups, Snapshots and Point-...FOSDEM 2022 MySQL Devroom:  MySQL 8.0 - Logical Backups, Snapshots and Point-...
FOSDEM 2022 MySQL Devroom: MySQL 8.0 - Logical Backups, Snapshots and Point-...Frederic Descamps
 
Red hat ceph storage customer presentation
Red hat ceph storage customer presentationRed hat ceph storage customer presentation
Red hat ceph storage customer presentationRodrigo Missiaggia
 
MariaDB 10.5 binary install (바이너리 설치)
MariaDB 10.5 binary install (바이너리 설치)MariaDB 10.5 binary install (바이너리 설치)
MariaDB 10.5 binary install (바이너리 설치)NeoClova
 
Percona XtraDB Cluster ( Ensure high Availability )
Percona XtraDB Cluster ( Ensure high Availability )Percona XtraDB Cluster ( Ensure high Availability )
Percona XtraDB Cluster ( Ensure high Availability )Mydbops
 
[오픈소스컨설팅]RHEL7/CentOS7 Pacemaker기반-HA시스템구성-v1.0
[오픈소스컨설팅]RHEL7/CentOS7 Pacemaker기반-HA시스템구성-v1.0[오픈소스컨설팅]RHEL7/CentOS7 Pacemaker기반-HA시스템구성-v1.0
[오픈소스컨설팅]RHEL7/CentOS7 Pacemaker기반-HA시스템구성-v1.0Ji-Woong Choi
 

What's hot (20)

Percona Live 2022 - MySQL Architectures
Percona Live 2022 - MySQL ArchitecturesPercona Live 2022 - MySQL Architectures
Percona Live 2022 - MySQL Architectures
 
Using galera replication to create geo distributed clusters on the wan
Using galera replication to create geo distributed clusters on the wanUsing galera replication to create geo distributed clusters on the wan
Using galera replication to create geo distributed clusters on the wan
 
MySQL Administrator 2021 - 네오클로바
MySQL Administrator 2021 - 네오클로바MySQL Administrator 2021 - 네오클로바
MySQL Administrator 2021 - 네오클로바
 
Proxysql use case scenarios fosdem17
Proxysql use case scenarios    fosdem17Proxysql use case scenarios    fosdem17
Proxysql use case scenarios fosdem17
 
The consequences of sync_binlog != 1
The consequences of sync_binlog != 1The consequences of sync_binlog != 1
The consequences of sync_binlog != 1
 
Kafka replication apachecon_2013
Kafka replication apachecon_2013Kafka replication apachecon_2013
Kafka replication apachecon_2013
 
InnoDb Vs NDB Cluster
InnoDb Vs NDB ClusterInnoDb Vs NDB Cluster
InnoDb Vs NDB Cluster
 
"It can always get worse!" – Lessons Learned in over 20 years working with Or...
"It can always get worse!" – Lessons Learned in over 20 years working with Or..."It can always get worse!" – Lessons Learned in over 20 years working with Or...
"It can always get worse!" – Lessons Learned in over 20 years working with Or...
 
카프카, 산전수전 노하우
카프카, 산전수전 노하우카프카, 산전수전 노하우
카프카, 산전수전 노하우
 
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScaleThe Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
 
MySQL operator for_kubernetes
MySQL operator for_kubernetesMySQL operator for_kubernetes
MySQL operator for_kubernetes
 
Building ClickHouse and Making Your First Contribution: A Tutorial_06.10.2021
Building ClickHouse and Making Your First Contribution: A Tutorial_06.10.2021Building ClickHouse and Making Your First Contribution: A Tutorial_06.10.2021
Building ClickHouse and Making Your First Contribution: A Tutorial_06.10.2021
 
Kubernetes Disaster Recovery - Los Angeles K8s meetup Dec 10 2019
Kubernetes Disaster Recovery - Los Angeles K8s meetup Dec 10 2019Kubernetes Disaster Recovery - Los Angeles K8s meetup Dec 10 2019
Kubernetes Disaster Recovery - Los Angeles K8s meetup Dec 10 2019
 
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
 
Cache in API Gateway
Cache in API GatewayCache in API Gateway
Cache in API Gateway
 
FOSDEM 2022 MySQL Devroom: MySQL 8.0 - Logical Backups, Snapshots and Point-...
FOSDEM 2022 MySQL Devroom:  MySQL 8.0 - Logical Backups, Snapshots and Point-...FOSDEM 2022 MySQL Devroom:  MySQL 8.0 - Logical Backups, Snapshots and Point-...
FOSDEM 2022 MySQL Devroom: MySQL 8.0 - Logical Backups, Snapshots and Point-...
 
Red hat ceph storage customer presentation
Red hat ceph storage customer presentationRed hat ceph storage customer presentation
Red hat ceph storage customer presentation
 
MariaDB 10.5 binary install (바이너리 설치)
MariaDB 10.5 binary install (바이너리 설치)MariaDB 10.5 binary install (바이너리 설치)
MariaDB 10.5 binary install (바이너리 설치)
 
Percona XtraDB Cluster ( Ensure high Availability )
Percona XtraDB Cluster ( Ensure high Availability )Percona XtraDB Cluster ( Ensure high Availability )
Percona XtraDB Cluster ( Ensure high Availability )
 
[오픈소스컨설팅]RHEL7/CentOS7 Pacemaker기반-HA시스템구성-v1.0
[오픈소스컨설팅]RHEL7/CentOS7 Pacemaker기반-HA시스템구성-v1.0[오픈소스컨설팅]RHEL7/CentOS7 Pacemaker기반-HA시스템구성-v1.0
[오픈소스컨설팅]RHEL7/CentOS7 Pacemaker기반-HA시스템구성-v1.0
 

Similar to 9 DevOps Tips for Going in Production with Galera Cluster for MySQL - Slides

Webinar slides: Top 9 Tips for building a stable MySQL Replication environment
Webinar slides: Top 9 Tips for building a stable MySQL Replication environmentWebinar slides: Top 9 Tips for building a stable MySQL Replication environment
Webinar slides: Top 9 Tips for building a stable MySQL Replication environmentSeveralnines
 
Webinar slides: 9 DevOps Tips for Going in Production with Galera Cluster for...
Webinar slides: 9 DevOps Tips for Going in Production with Galera Cluster for...Webinar slides: 9 DevOps Tips for Going in Production with Galera Cluster for...
Webinar slides: 9 DevOps Tips for Going in Production with Galera Cluster for...Severalnines
 
RDS for MySQL, No BS Operations and Patterns
RDS for MySQL, No BS Operations and PatternsRDS for MySQL, No BS Operations and Patterns
RDS for MySQL, No BS Operations and PatternsLaine Campbell
 
How To Set Up SQL Load Balancing with HAProxy - Slides
How To Set Up SQL Load Balancing with HAProxy - SlidesHow To Set Up SQL Load Balancing with HAProxy - Slides
How To Set Up SQL Load Balancing with HAProxy - SlidesSeveralnines
 
Become a MySQL DBA - slides: Deciding on a relevant backup solution
Become a MySQL DBA - slides: Deciding on a relevant backup solutionBecome a MySQL DBA - slides: Deciding on a relevant backup solution
Become a MySQL DBA - slides: Deciding on a relevant backup solutionSeveralnines
 
Webinar slides: The Holy Grail Webinar: Become a MySQL DBA - Database Perform...
Webinar slides: The Holy Grail Webinar: Become a MySQL DBA - Database Perform...Webinar slides: The Holy Grail Webinar: Become a MySQL DBA - Database Perform...
Webinar slides: The Holy Grail Webinar: Become a MySQL DBA - Database Perform...Severalnines
 
Multi Source Replication With MySQL 5.7 @ Verisure
Multi Source Replication With MySQL 5.7 @ VerisureMulti Source Replication With MySQL 5.7 @ Verisure
Multi Source Replication With MySQL 5.7 @ VerisureKenny Gryp
 
Become a MySQL DBA: performing live database upgrades - webinar slides
Become a MySQL DBA: performing live database upgrades - webinar slidesBecome a MySQL DBA: performing live database upgrades - webinar slides
Become a MySQL DBA: performing live database upgrades - webinar slidesSeveralnines
 
Become a MySQL DBA - webinar series - slides: Which High Availability solution?
Become a MySQL DBA - webinar series - slides: Which High Availability solution?Become a MySQL DBA - webinar series - slides: Which High Availability solution?
Become a MySQL DBA - webinar series - slides: Which High Availability solution?Severalnines
 
Repair & Recovery for your MySQL, MariaDB & MongoDB / TokuMX Clusters - Webin...
Repair & Recovery for your MySQL, MariaDB & MongoDB / TokuMX Clusters - Webin...Repair & Recovery for your MySQL, MariaDB & MongoDB / TokuMX Clusters - Webin...
Repair & Recovery for your MySQL, MariaDB & MongoDB / TokuMX Clusters - Webin...Severalnines
 
Технологии работы с дисковыми хранилищами и файловыми системами Windows Serve...
Технологии работы с дисковыми хранилищами и файловыми системами Windows Serve...Технологии работы с дисковыми хранилищами и файловыми системами Windows Serve...
Технологии работы с дисковыми хранилищами и файловыми системами Windows Serve...Виталий Стародубцев
 
IMCSummit 2015 - Day 2 IT Business Track - 4 Myths about In-Memory Databases ...
IMCSummit 2015 - Day 2 IT Business Track - 4 Myths about In-Memory Databases ...IMCSummit 2015 - Day 2 IT Business Track - 4 Myths about In-Memory Databases ...
IMCSummit 2015 - Day 2 IT Business Track - 4 Myths about In-Memory Databases ...In-Memory Computing Summit
 
Load Balancing MySQL with HAProxy - Slides
Load Balancing MySQL with HAProxy - SlidesLoad Balancing MySQL with HAProxy - Slides
Load Balancing MySQL with HAProxy - SlidesSeveralnines
 
A Detailed Look At cassandra.yaml (Edward Capriolo, The Last Pickle) | Cassan...
A Detailed Look At cassandra.yaml (Edward Capriolo, The Last Pickle) | Cassan...A Detailed Look At cassandra.yaml (Edward Capriolo, The Last Pickle) | Cassan...
A Detailed Look At cassandra.yaml (Edward Capriolo, The Last Pickle) | Cassan...DataStax
 
Webinar slides: Replication Topology Changes for MySQL and MariaDB
Webinar slides: Replication Topology Changes for MySQL and MariaDBWebinar slides: Replication Topology Changes for MySQL and MariaDB
Webinar slides: Replication Topology Changes for MySQL and MariaDBSeveralnines
 
Webinar Slides : Migrating to MySQL, MariaDB Galera and/or Percona XtraDB Clu...
Webinar Slides : Migrating to MySQL, MariaDB Galera and/or Percona XtraDB Clu...Webinar Slides : Migrating to MySQL, MariaDB Galera and/or Percona XtraDB Clu...
Webinar Slides : Migrating to MySQL, MariaDB Galera and/or Percona XtraDB Clu...Severalnines
 
2007-05-23 Cecchet_PGCon2007.ppt
2007-05-23 Cecchet_PGCon2007.ppt2007-05-23 Cecchet_PGCon2007.ppt
2007-05-23 Cecchet_PGCon2007.pptnadirpervez2
 
MySQL 5.7 clustering: The developer perspective
MySQL 5.7 clustering: The developer perspectiveMySQL 5.7 clustering: The developer perspective
MySQL 5.7 clustering: The developer perspectiveUlf Wendel
 
PoC: Using a Group Communication System to improve MySQL Replication HA
PoC: Using a Group Communication System to improve MySQL Replication HAPoC: Using a Group Communication System to improve MySQL Replication HA
PoC: Using a Group Communication System to improve MySQL Replication HAUlf Wendel
 
usenix
usenixusenix
usenixxlight
 

Similar to 9 DevOps Tips for Going in Production with Galera Cluster for MySQL - Slides (20)

Webinar slides: Top 9 Tips for building a stable MySQL Replication environment
Webinar slides: Top 9 Tips for building a stable MySQL Replication environmentWebinar slides: Top 9 Tips for building a stable MySQL Replication environment
Webinar slides: Top 9 Tips for building a stable MySQL Replication environment
 
Webinar slides: 9 DevOps Tips for Going in Production with Galera Cluster for...
Webinar slides: 9 DevOps Tips for Going in Production with Galera Cluster for...Webinar slides: 9 DevOps Tips for Going in Production with Galera Cluster for...
Webinar slides: 9 DevOps Tips for Going in Production with Galera Cluster for...
 
RDS for MySQL, No BS Operations and Patterns
RDS for MySQL, No BS Operations and PatternsRDS for MySQL, No BS Operations and Patterns
RDS for MySQL, No BS Operations and Patterns
 
How To Set Up SQL Load Balancing with HAProxy - Slides
How To Set Up SQL Load Balancing with HAProxy - SlidesHow To Set Up SQL Load Balancing with HAProxy - Slides
How To Set Up SQL Load Balancing with HAProxy - Slides
 
Become a MySQL DBA - slides: Deciding on a relevant backup solution
Become a MySQL DBA - slides: Deciding on a relevant backup solutionBecome a MySQL DBA - slides: Deciding on a relevant backup solution
Become a MySQL DBA - slides: Deciding on a relevant backup solution
 
Webinar slides: The Holy Grail Webinar: Become a MySQL DBA - Database Perform...
Webinar slides: The Holy Grail Webinar: Become a MySQL DBA - Database Perform...Webinar slides: The Holy Grail Webinar: Become a MySQL DBA - Database Perform...
Webinar slides: The Holy Grail Webinar: Become a MySQL DBA - Database Perform...
 
Multi Source Replication With MySQL 5.7 @ Verisure
Multi Source Replication With MySQL 5.7 @ VerisureMulti Source Replication With MySQL 5.7 @ Verisure
Multi Source Replication With MySQL 5.7 @ Verisure
 
Become a MySQL DBA: performing live database upgrades - webinar slides
Become a MySQL DBA: performing live database upgrades - webinar slidesBecome a MySQL DBA: performing live database upgrades - webinar slides
Become a MySQL DBA: performing live database upgrades - webinar slides
 
Become a MySQL DBA - webinar series - slides: Which High Availability solution?
Become a MySQL DBA - webinar series - slides: Which High Availability solution?Become a MySQL DBA - webinar series - slides: Which High Availability solution?
Become a MySQL DBA - webinar series - slides: Which High Availability solution?
 
Repair & Recovery for your MySQL, MariaDB & MongoDB / TokuMX Clusters - Webin...
Repair & Recovery for your MySQL, MariaDB & MongoDB / TokuMX Clusters - Webin...Repair & Recovery for your MySQL, MariaDB & MongoDB / TokuMX Clusters - Webin...
Repair & Recovery for your MySQL, MariaDB & MongoDB / TokuMX Clusters - Webin...
 
Технологии работы с дисковыми хранилищами и файловыми системами Windows Serve...
Технологии работы с дисковыми хранилищами и файловыми системами Windows Serve...Технологии работы с дисковыми хранилищами и файловыми системами Windows Serve...
Технологии работы с дисковыми хранилищами и файловыми системами Windows Serve...
 
IMCSummit 2015 - Day 2 IT Business Track - 4 Myths about In-Memory Databases ...
IMCSummit 2015 - Day 2 IT Business Track - 4 Myths about In-Memory Databases ...IMCSummit 2015 - Day 2 IT Business Track - 4 Myths about In-Memory Databases ...
IMCSummit 2015 - Day 2 IT Business Track - 4 Myths about In-Memory Databases ...
 
Load Balancing MySQL with HAProxy - Slides
Load Balancing MySQL with HAProxy - SlidesLoad Balancing MySQL with HAProxy - Slides
Load Balancing MySQL with HAProxy - Slides
 
A Detailed Look At cassandra.yaml (Edward Capriolo, The Last Pickle) | Cassan...
A Detailed Look At cassandra.yaml (Edward Capriolo, The Last Pickle) | Cassan...A Detailed Look At cassandra.yaml (Edward Capriolo, The Last Pickle) | Cassan...
A Detailed Look At cassandra.yaml (Edward Capriolo, The Last Pickle) | Cassan...
 
Webinar slides: Replication Topology Changes for MySQL and MariaDB
Webinar slides: Replication Topology Changes for MySQL and MariaDBWebinar slides: Replication Topology Changes for MySQL and MariaDB
Webinar slides: Replication Topology Changes for MySQL and MariaDB
 
Webinar Slides : Migrating to MySQL, MariaDB Galera and/or Percona XtraDB Clu...
Webinar Slides : Migrating to MySQL, MariaDB Galera and/or Percona XtraDB Clu...Webinar Slides : Migrating to MySQL, MariaDB Galera and/or Percona XtraDB Clu...
Webinar Slides : Migrating to MySQL, MariaDB Galera and/or Percona XtraDB Clu...
 
2007-05-23 Cecchet_PGCon2007.ppt
2007-05-23 Cecchet_PGCon2007.ppt2007-05-23 Cecchet_PGCon2007.ppt
2007-05-23 Cecchet_PGCon2007.ppt
 
MySQL 5.7 clustering: The developer perspective
MySQL 5.7 clustering: The developer perspectiveMySQL 5.7 clustering: The developer perspective
MySQL 5.7 clustering: The developer perspective
 
PoC: Using a Group Communication System to improve MySQL Replication HA
PoC: Using a Group Communication System to improve MySQL Replication HAPoC: Using a Group Communication System to improve MySQL Replication HA
PoC: Using a Group Communication System to improve MySQL Replication HA
 
usenix
usenixusenix
usenix
 

More from Severalnines

Cloud's future runs through Sovereign DBaaS
Cloud's future runs through Sovereign DBaaSCloud's future runs through Sovereign DBaaS
Cloud's future runs through Sovereign DBaaSSeveralnines
 
Tips to drive maria db cluster performance for nextcloud
Tips to drive maria db cluster performance for nextcloudTips to drive maria db cluster performance for nextcloud
Tips to drive maria db cluster performance for nextcloudSeveralnines
 
Working with the Moodle Database: The Basics
Working with the Moodle Database: The BasicsWorking with the Moodle Database: The Basics
Working with the Moodle Database: The BasicsSeveralnines
 
SysAdmin Working from Home? Tips to Automate MySQL, MariaDB, Postgres & MongoDB
SysAdmin Working from Home? Tips to Automate MySQL, MariaDB, Postgres & MongoDBSysAdmin Working from Home? Tips to Automate MySQL, MariaDB, Postgres & MongoDB
SysAdmin Working from Home? Tips to Automate MySQL, MariaDB, Postgres & MongoDBSeveralnines
 
(slides) Polyglot persistence: utilizing open source databases as a Swiss poc...
(slides) Polyglot persistence: utilizing open source databases as a Swiss poc...(slides) Polyglot persistence: utilizing open source databases as a Swiss poc...
(slides) Polyglot persistence: utilizing open source databases as a Swiss poc...Severalnines
 
Webinar slides: How to Migrate from Oracle DB to MariaDB
Webinar slides: How to Migrate from Oracle DB to MariaDBWebinar slides: How to Migrate from Oracle DB to MariaDB
Webinar slides: How to Migrate from Oracle DB to MariaDBSeveralnines
 
Webinar slides: How to Automate & Manage PostgreSQL with ClusterControl
Webinar slides: How to Automate & Manage PostgreSQL with ClusterControlWebinar slides: How to Automate & Manage PostgreSQL with ClusterControl
Webinar slides: How to Automate & Manage PostgreSQL with ClusterControlSeveralnines
 
Webinar slides: How to Manage Replication Failover Processes for MySQL, Maria...
Webinar slides: How to Manage Replication Failover Processes for MySQL, Maria...Webinar slides: How to Manage Replication Failover Processes for MySQL, Maria...
Webinar slides: How to Manage Replication Failover Processes for MySQL, Maria...Severalnines
 
Webinar slides: Backup Management for MySQL, MariaDB, PostgreSQL & MongoDB wi...
Webinar slides: Backup Management for MySQL, MariaDB, PostgreSQL & MongoDB wi...Webinar slides: Backup Management for MySQL, MariaDB, PostgreSQL & MongoDB wi...
Webinar slides: Backup Management for MySQL, MariaDB, PostgreSQL & MongoDB wi...Severalnines
 
Disaster Recovery Planning for MySQL & MariaDB
Disaster Recovery Planning for MySQL & MariaDBDisaster Recovery Planning for MySQL & MariaDB
Disaster Recovery Planning for MySQL & MariaDBSeveralnines
 
MariaDB Performance Tuning Crash Course
MariaDB Performance Tuning Crash CourseMariaDB Performance Tuning Crash Course
MariaDB Performance Tuning Crash CourseSeveralnines
 
Performance Tuning Cheat Sheet for MongoDB
Performance Tuning Cheat Sheet for MongoDBPerformance Tuning Cheat Sheet for MongoDB
Performance Tuning Cheat Sheet for MongoDBSeveralnines
 
Advanced MySql Data-at-Rest Encryption in Percona Server
Advanced MySql Data-at-Rest Encryption in Percona ServerAdvanced MySql Data-at-Rest Encryption in Percona Server
Advanced MySql Data-at-Rest Encryption in Percona ServerSeveralnines
 
Polyglot Persistence Utilizing Open Source Databases as a Swiss Pocket Knife
Polyglot Persistence Utilizing Open Source Databases as a Swiss Pocket KnifePolyglot Persistence Utilizing Open Source Databases as a Swiss Pocket Knife
Polyglot Persistence Utilizing Open Source Databases as a Swiss Pocket KnifeSeveralnines
 
Webinar slides: Free Monitoring (on Steroids) for MySQL, MariaDB, PostgreSQL ...
Webinar slides: Free Monitoring (on Steroids) for MySQL, MariaDB, PostgreSQL ...Webinar slides: Free Monitoring (on Steroids) for MySQL, MariaDB, PostgreSQL ...
Webinar slides: Free Monitoring (on Steroids) for MySQL, MariaDB, PostgreSQL ...Severalnines
 
Webinar slides: An Introduction to Performance Monitoring for PostgreSQL
Webinar slides: An Introduction to Performance Monitoring for PostgreSQLWebinar slides: An Introduction to Performance Monitoring for PostgreSQL
Webinar slides: An Introduction to Performance Monitoring for PostgreSQLSeveralnines
 
Webinar slides: Our Guide to MySQL & MariaDB Performance Tuning
Webinar slides: Our Guide to MySQL & MariaDB Performance TuningWebinar slides: Our Guide to MySQL & MariaDB Performance Tuning
Webinar slides: Our Guide to MySQL & MariaDB Performance TuningSeveralnines
 
Webinar slides: Migrating to Galera Cluster for MySQL and MariaDB
Webinar slides: Migrating to Galera Cluster for MySQL and MariaDBWebinar slides: Migrating to Galera Cluster for MySQL and MariaDB
Webinar slides: Migrating to Galera Cluster for MySQL and MariaDBSeveralnines
 
Webinar slides: How to Measure Database Availability?
Webinar slides: How to Measure Database Availability?Webinar slides: How to Measure Database Availability?
Webinar slides: How to Measure Database Availability?Severalnines
 
Webinar slides: Designing Open Source Databases for High Availability
Webinar slides: Designing Open Source Databases for High AvailabilityWebinar slides: Designing Open Source Databases for High Availability
Webinar slides: Designing Open Source Databases for High AvailabilitySeveralnines
 

More from Severalnines (20)

Cloud's future runs through Sovereign DBaaS
Cloud's future runs through Sovereign DBaaSCloud's future runs through Sovereign DBaaS
Cloud's future runs through Sovereign DBaaS
 
Tips to drive maria db cluster performance for nextcloud
Tips to drive maria db cluster performance for nextcloudTips to drive maria db cluster performance for nextcloud
Tips to drive maria db cluster performance for nextcloud
 
Working with the Moodle Database: The Basics
Working with the Moodle Database: The BasicsWorking with the Moodle Database: The Basics
Working with the Moodle Database: The Basics
 
SysAdmin Working from Home? Tips to Automate MySQL, MariaDB, Postgres & MongoDB
SysAdmin Working from Home? Tips to Automate MySQL, MariaDB, Postgres & MongoDBSysAdmin Working from Home? Tips to Automate MySQL, MariaDB, Postgres & MongoDB
SysAdmin Working from Home? Tips to Automate MySQL, MariaDB, Postgres & MongoDB
 
(slides) Polyglot persistence: utilizing open source databases as a Swiss poc...
(slides) Polyglot persistence: utilizing open source databases as a Swiss poc...(slides) Polyglot persistence: utilizing open source databases as a Swiss poc...
(slides) Polyglot persistence: utilizing open source databases as a Swiss poc...
 
Webinar slides: How to Migrate from Oracle DB to MariaDB
Webinar slides: How to Migrate from Oracle DB to MariaDBWebinar slides: How to Migrate from Oracle DB to MariaDB
Webinar slides: How to Migrate from Oracle DB to MariaDB
 
Webinar slides: How to Automate & Manage PostgreSQL with ClusterControl
Webinar slides: How to Automate & Manage PostgreSQL with ClusterControlWebinar slides: How to Automate & Manage PostgreSQL with ClusterControl
Webinar slides: How to Automate & Manage PostgreSQL with ClusterControl
 
Webinar slides: How to Manage Replication Failover Processes for MySQL, Maria...
Webinar slides: How to Manage Replication Failover Processes for MySQL, Maria...Webinar slides: How to Manage Replication Failover Processes for MySQL, Maria...
Webinar slides: How to Manage Replication Failover Processes for MySQL, Maria...
 
Webinar slides: Backup Management for MySQL, MariaDB, PostgreSQL & MongoDB wi...
Webinar slides: Backup Management for MySQL, MariaDB, PostgreSQL & MongoDB wi...Webinar slides: Backup Management for MySQL, MariaDB, PostgreSQL & MongoDB wi...
Webinar slides: Backup Management for MySQL, MariaDB, PostgreSQL & MongoDB wi...
 
Disaster Recovery Planning for MySQL & MariaDB
Disaster Recovery Planning for MySQL & MariaDBDisaster Recovery Planning for MySQL & MariaDB
Disaster Recovery Planning for MySQL & MariaDB
 
MariaDB Performance Tuning Crash Course
MariaDB Performance Tuning Crash CourseMariaDB Performance Tuning Crash Course
MariaDB Performance Tuning Crash Course
 
Performance Tuning Cheat Sheet for MongoDB
Performance Tuning Cheat Sheet for MongoDBPerformance Tuning Cheat Sheet for MongoDB
Performance Tuning Cheat Sheet for MongoDB
 
Advanced MySql Data-at-Rest Encryption in Percona Server
Advanced MySql Data-at-Rest Encryption in Percona ServerAdvanced MySql Data-at-Rest Encryption in Percona Server
Advanced MySql Data-at-Rest Encryption in Percona Server
 
Polyglot Persistence Utilizing Open Source Databases as a Swiss Pocket Knife
Polyglot Persistence Utilizing Open Source Databases as a Swiss Pocket KnifePolyglot Persistence Utilizing Open Source Databases as a Swiss Pocket Knife
Polyglot Persistence Utilizing Open Source Databases as a Swiss Pocket Knife
 
Webinar slides: Free Monitoring (on Steroids) for MySQL, MariaDB, PostgreSQL ...
Webinar slides: Free Monitoring (on Steroids) for MySQL, MariaDB, PostgreSQL ...Webinar slides: Free Monitoring (on Steroids) for MySQL, MariaDB, PostgreSQL ...
Webinar slides: Free Monitoring (on Steroids) for MySQL, MariaDB, PostgreSQL ...
 
Webinar slides: An Introduction to Performance Monitoring for PostgreSQL
Webinar slides: An Introduction to Performance Monitoring for PostgreSQLWebinar slides: An Introduction to Performance Monitoring for PostgreSQL
Webinar slides: An Introduction to Performance Monitoring for PostgreSQL
 
Webinar slides: Our Guide to MySQL & MariaDB Performance Tuning
Webinar slides: Our Guide to MySQL & MariaDB Performance TuningWebinar slides: Our Guide to MySQL & MariaDB Performance Tuning
Webinar slides: Our Guide to MySQL & MariaDB Performance Tuning
 
Webinar slides: Migrating to Galera Cluster for MySQL and MariaDB
Webinar slides: Migrating to Galera Cluster for MySQL and MariaDBWebinar slides: Migrating to Galera Cluster for MySQL and MariaDB
Webinar slides: Migrating to Galera Cluster for MySQL and MariaDB
 
Webinar slides: How to Measure Database Availability?
Webinar slides: How to Measure Database Availability?Webinar slides: How to Measure Database Availability?
Webinar slides: How to Measure Database Availability?
 
Webinar slides: Designing Open Source Databases for High Availability
Webinar slides: Designing Open Source Databases for High AvailabilityWebinar slides: Designing Open Source Databases for High Availability
Webinar slides: Designing Open Source Databases for High Availability
 

Recently uploaded

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 

Recently uploaded (20)

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 

9 DevOps Tips for Going in Production with Galera Cluster for MySQL - Slides

  • 1. Nine DevOps Tips For Going Into Production With Galera Cluster Confidential November 11, 2014 Johan Andersson & Jean-Jérôme Schmidt Severalnines johan@severalnines.com & jj@severalnines.com
  • 2. Confidential Logistics ! I'm Jean-Jérôme and I’ll be your host for today's webinar ! Feel free to ask any questions in the Questions section of this application or via the Chat box ! You can also contact me directly via the chat box or via email: jj@severalnines.com during or after the webinar 2 Copyright Severalnines AB
  • 3. Confidential ClusterControl In a nutshell 3 Copyright 2012 Severalnines AB Manage Scale Deploy Monitor
  • 4. Supported Databases Confidential SQL ! MariaDB Cluster ! MySQL Galera Cluster (Codership) ! Percona XtraDB Cluster ! MySQL Cluster (NDB) ! MySQL Replication 5.6 ! Standalone MySQL/MariaDB NoSQL ! MongoDB Sharded Cluster ! MongoDB Replica Set ! TokuMX Cluster Copyright Severalnines AB 4
  • 5. Confidential Customers 5 Copyright Severalnines AB
  • 6. Confidential Agenda ! 101 Sanity Check ! Operating System ! Backup Strategies ! Galera Recovery ! Query Performance ! Schema Changes ! Security / Encryption ! Reporting ! Protecting from Disasters 6 Copyright Severalnines AB
  • 7. #1 – 101 Sanity Check (1/4) ! Ensure ALL tables are InnoDB or XtraDB ! Innodb supports FULLTEXT indexes in MySQL5.6 ! Ensure ALL tables have a PRIMARY KEY ! If no PRIMARY KEY is defined you can do: ALTER TABLE table ADD COLUMN pkid BIGINT AUTO_INCREMENT PRIMARY KEY; ! Ensure you have NO unbound queries ! E.g UPDATE table SET x=x+1 (and there are many rows) ! Update/delete in smaller batches (e.g 1000 records). ! Better support for huge (unbound) queries are in the pipe Confidential 7 Copyright Severalnines AB
  • 8. #1 – 101 Sanity Check (2/4) ! Ensure that the application can tolerate non-sequential Confidential auto increments. ! Redirect deadlock prone update queries on hot tables and rows to one of the Galera nodes: ! E.g UPDATE counter_tbl SET counter = counter +1; ! http://www.severalnines.com/blog/avoiding-deadlocks-galera- set-haproxy-single-node-writes-and-multi-node-reads ! Use wsrep_sst_method=xtrabackup-v2 8 Copyright Severalnines AB
  • 9. #1 – 101 Sanity Check (3/4) Confidential ! WAN environment? ! [Note] WSREP: (0b066c90-d4fb-11e1-0800-96b2cf43aaf6, 'tcp:// 0.0.0.0:4567') turning message relay requesting on, nonlive peers: tcp://10.0.1.2:4567 [Note] WSREP: (0b066c90-d4fb-11e1-0800-96b2cf43aaf6, 'tcp:// 0.0.0.0:4567') reconnecting to df4e387f-d4e2- 11e1-0800-2e6080299165 (tcp://10.0.1.2:4567), attempt 0 ! Increase timeouts ! wsrep_provider_options=‘evs.keepalive_period=PT3S; evs.inactive_check_period=PT10S; evs.suspect_timeout=PT30S; evs.inactive_timeout=PT1M; evs.install_timeout=PT1M; evs.send_window=1024; evs.user_send_window=512’; ! This will relax how fast a node will be evicted from the cluster. ! Usually default values are good if networks with a ping time of <10-15 ms. 9 Copyright Severalnines AB
  • 10. #1 – 101 Sanity Check (4/4) ! There is no reason to use any 5.5 based MySQL variants ! Use MySQL 5.6 / MariaDB 10.x ! Lots of bug fixes ! Performance optimizations ! Write intensive workloads ! Query optimizer enhancements ! A good foundation for later upgrading to 5.7 based Confidential MySQL ! Use Galera Version 3.x series 10 Copyright Severalnines AB
  • 11. #2 – Operating System (1/2) Confidential ! Swapping ! echo “1” > /proc/sys/vm/swappiness ! NUMA on Multi-socket ! Can lead to contention and strange lock ups ! Is it enabled: dmesg | grep –i numa ! Grub boot option ”numa=off” ! … and other possibilities ! Filesystem ! Reduce writes by mounting with ! noatime 11 Copyright Severalnines AB
  • 12. #2 – Operating System (2/2) ! In Virtualized environments it is easy to over-commit resources on a single Host. ! Keep track on the Host hosting the VMs ! Is it heavily loaded? ! CPU Steal (check on the VMs)? ! Is it swapping? Confidential 12 Copyright Severalnines AB
  • 13. Confidential #3 – Backup ! Percona XtraBackup ! Online consistent backup ! Full and Incremental backups ! Possible to backup databases and tables when innodb_file_per_table is used. ! Parallelism & compression & encryption ! mysqldump ! Use with –single-transaction, consistent / online for innodb tables ! May require tweaking of innodb_old_blocks_time and innodb_old_blocks_pct (default values in 5.6 are quite good). ! S3 / Glazier or Swift can be used for offline/offsite storage 13 Copyright Severalnines AB
  • 14. Copyright Severalnines AB #4 – Galera Recovery (IST) (1/3) ! IST (Incremental State Transfer) is faster than SST (Snapshot Confidential State Transfer). ! Each Galera node has a cache, gcache. ! Stores committed write sets ! Circular buffer ! If a node is down (crash, maint window) and then becomes a JOINER: ! Send ID of last applied write set to the DONOR ! DONOR checks if it can send the next events from the gcache. ! Yes == IST (fast) ! No == SST (slow). E.g 3TB of data is no fun to SST.
  • 15. #4 – Galera Recovery (IST) (2/3) ! Dimension the gcache, example to handle a maintenance window of 6 hours: ! Writes to cluster per second: 1MB/s ! Maintenance window (seconds) = 6 hours *60*60 = 21600s ! gcache size = 1 MB/s x 21600 s = 21GB ! 1.5x or 2x the value to have margins: Confidential ! gcache.size=42G ! wsrep_provider_options=‘gcache.size=42G;…’ 15 Copyright Severalnines AB
  • 16. Copyright Severalnines AB #4 – Galera Recovery (IST) (3/3) Confidential ! How much do you write to the Galera Cluster? ! Look at the sum of wsrep_replicated_bytes and wsrep_received_bytes and get the rate between two points in time. ! Here we can see that a node handles: 109575 + 33758 bytes / second = ~140KB/s 16
  • 17. Copyright Severalnines AB #4 – Galera Recovery (SST) ! Two pitfalls to be avoided with SSTs: ! wsrep_sst_method=rsync ! you may have to change in /usr/bin/wsrep_sst_rsync: ! timeout = 300 ! 3600 (or bigger) ! Else the rsync daemons may timeout when initializing the SST. ! wsrep_sst_method=xtrabackup[-v2] ! Uses mysql tmpdir by default. ! If tmpdir is too small SST may fail on the donor. The transaction Confidential log simply does not fit. ! You can set in my.cnf: [xtrabackup] tmpdir=/a/bigger/partition ! How big do I need tmpdir to be? [KB writes to node ] x [ backup time ]. Similar to the gcache.
  • 18. #5 – Query Performance (1/5) ! A number of things to watch out for: ! Badly written queries or missing indexes ! DDL locking many record (BEGIN; SELECT * FROM t1 FOR UPDATE; Confidential … ) ! DDL updating/deleting many records in one chunk ! wsrep_max_ws_rows/wsrep_max_ws_size sets upper limits ! Update/delete “small” batches of 1000-10000 records. Do not update 100000 records. ! Deadlocks and deadlock prone code ! E.g running two mysqldumps at the same time ! Updating the very same record in a very hot table from multiple threads on multiple hosts ! Use your favorite tool to detect the problems 18 Copyright Severalnines AB
  • 19. #5 – Query Performance (2/5) ! When Performance grinds to a halt you want to know! Confidential 19 Copyright Severalnines AB
  • 20. #5 – Query Performance (3/5) ! You may want to have an Alarm notification (in 1.2.9) Confidential 20 Copyright Severalnines AB
  • 21. #5 – Query Performance (4/5) ! If a dead-lock happens, you want to tell your developers Confidential (in 1.2.9) 21 Copyright Severalnines AB
  • 22. #5 – Query Performance (5/5) ! And see if Galera is clogged up Confidential 22 Copyright Severalnines AB
  • 23. #6 – Schema Changes (1/4) ! Consider an upgrade from schema version V1 to version V2 ! There are two principal types of schema changes that can Confidential be performed: ! Compatible ! E.g ALTER TABLE .. ADD COLUMN … , CREATE INDEX .. ! Application(s) will still continue with V1 ! Upgrade schema first, then applications ! Incompatible ! E.g ALTER TABLE .. DROP COLUMN … ! Application(s) cannot use V2 ! Must upgrade applications first to support V2, and upgrade schema to V2 23 Copyright Severalnines AB
  • 24. #6 – Schema Changes (2/4) ! Galera supports multiple ways for upgrading schema Confidential from V1 to V2 ! Total Order Isolation (TOI) ! wsrep_osu_method=TOI ! Rolling Schema Upgrade (RSU) ! wsrep_osu_method=RSU ! Desynching nodes (not covered here),but check out http://www.severalnines.com/blog/webinar-replay-slides-galera- cluster-best-practices-zero-downtime-schema-changes 24 Copyright Severalnines AB
  • 25. #6 – Schema Changes (3/4) ! Total Order Isolation (TOI) Confidential ! Default method ! Executed in the same order wrt to other transactions on all Galera nodes. ! Cluster behaves like a single mysql server ! Ok for non-copying ALTER TABLE or tiny seldomly used tables (100s of records) or if application traffic is disabled. ! ALTER TABLE … ADD INDEX.. / CREATE INDEX.. ! Not ok for copying ALTERs, since table is LOCKED. ! May wreak havoc 25 Copyright Severalnines AB
  • 26. #6 – Schema Changes (4/4) ! Rolling Schema Upgrade (RSU) ! DDL is not replicated, executed on one node at a time ! Executed on one node at a time: ! node1> SET GLOBAL wsrep_OSU_method=RSU; node1> ALTER TABLE …. // check that node1 is SYNCED node2> SET GLOBAL wsrep_OSU_method=RSU; node2> ALTER TABLE …. ! The change MUST be a compatible schema change. ! E.g ALTER TABLE .. DROP COLUMN will wreak havoc. Confidential 26 Copyright Severalnines AB
  • 27. #7 – Security / Encryption (1/2) ! Encrypt replication links between Galera nodes. Especially in public cloud environments / WAN setups. ! Create a certificate and a key http://www.severalnines.com/blog/performance-impact-encrypted-replication- galera-cluster-mysql ! wsrep_provider_options=’socket.ssl_cert=galera_rep.crt; socket.ssl_key=galera_rep.key;<rest of wsrep provider options>’ ! Requires a complete stop of all nodes. ! Don’t forget to set this option for the garbd (arbitrator)! Confidential 27 Copyright Severalnines AB
  • 28. #7 – Security / Encryption (2/2) ! Nothing to do with Galera but… ! Encrypt application links between Galera nodes and applications, especially in public/untrusted environments: ! Dense howto: http://www.vmadmin.co.uk/linux/44-redhat/145- linuxmysqlencryption Confidential 28 Copyright Severalnines AB
  • 29. Confidential #8 - Reporting ! Try to separate OLTP and OLAP if possible ! Run reports off an async slave or dedicated node ! Remember: huge queries eat CPU, RAM and DISK. ! Galera is not faster than its slowest node. ! Watch out for reports with side effects ! Large updates writing back? ! Consider using Amazon Redshift (Data Warehouse) ! Upload CSV files for processing. ! http://www.severalnines.com/blog/data-warehouse-cloud-how- upload-mysql-data-amazon-redshift-reporting-and-analytics 29 Copyright Severalnines AB
  • 30. #9 – Protecting from Disasters (1/5) ! Eventually a disaster will happen ! Software bugs ! Network / router upgrades ! AZ down ! Schema / software / hardware upgrade going wrong ! Too many connections Confidential 30 Copyright Severalnines AB
  • 31. #9 – Protecting from Disasters (1/5) ! One way of protecting from Cluster failures is to use an asynchronous slave replicating from the Galera Cluster. ! If the Cluster would fail, the asynchronous slave could take over and handle the application work load until the cluster error has been resolved. Confidential 31 Copyright Severalnines AB Galera Cluster in DC1 Async Slave DC2 READ ONLY!
  • 32. #9 – Protecting from Disasters (2/5) ! Asynchronously replicated slave, benefits: ! + Decoupled from the Cluster ! - Data loss is possible (minimize with semi-sync replication, but write Confidential performance will suffer) ! Setup one or more Galera nodes to be Replication Masters (RM) and connect the Replication Slave (RS) 32 Copyright Severalnines AB Galera Cluster in DC1 Async Slave DC2 RM1 RM2 Asynchronous Replication, Semi sync is optional RS1 READ ONLY!
  • 33. #9 – Protecting from Disasters (3/5) ! Using GTIDs (available in MySQL 5.6 and MariaDB 10.0) allows for easy fail-over from RM2 to RM1: ! slave> CHANGE MASTER TO MASTER_HOST=’RM1’, MASTER_AUTO_POSITION=1; START SLAVE; Confidential 33 Copyright Severalnines AB Galera Cluster in DC1 Async Slave DC2 RM1 RM2 Asynchronous Replication, Semi sync is optional RS1
  • 34. #9 – Protecting from Disasters (4/5) ! Prepare each Galera Replication Master (MySQL 5.6 style): gtid_mode=ON enforce_gtid_consistency=1 log_bin=binlog log_slave_updates=1 expire_logs_days=7 #loose_rpl_semi_sync_master_enabled=1 server_id=X # must be a unique number ! Prepare each Slave (MySQL 5.6 style): gtid_mode=ON enforce_gtid_consistency=1 log_bin=binlog relay_log=relay-bin log_slave_updates=1 expire_logs_days=7 #loose_rpl_semi_sync_slave_enabled=1 server_id=Y ## must be a unique number Confidential Copyright Severalnines AB
  • 35. Copyright Severalnines AB #9 – Protecting from Disasters (5/5) ! Enabling the binlog (log_slave_updates and log_bin) on the Galera nodes allows you to do Point In Time Recovery ! Restore last backup (must be newer than Confidential expire_logs_days ) ! Use the binary logs to roll forward until last transaction.
  • 36. #9 – Protecting from Disasters (1/5) ! A common problem is overload situations, which can originate from: ! DDOS ! Website is loading slow, user reload, creating more and more Confidential connections ! Eventually the MySQL server runs out of connections (max_connections) ! 5.6 only scales to 40 cores anyways ! A good way of alleviating this is to use a Proxy, e.g HAProxy. 36 Copyright Severalnines AB
  • 37. #9 – Protecting from Disasters (3/5) Confidential 37 Copyright Severalnines AB Galera Cluster Limit the # of backend connections HAProxy queues incoming connections
  • 39. Confidential Thank You! ! Cluster Configurator ! www.severalnines.com/config ! ClusterControl ! www.severalnines.com/clustercontrol ! Severalnines Blog ! www.severalnines.com/blog ! Contact: jj@severalnines.com 39