SlideShare a Scribd company logo
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

Recommended for you

Apache Iceberg: An Architectural Look Under the Covers
Apache Iceberg: An Architectural Look Under the CoversApache Iceberg: An Architectural Look Under the Covers
Apache Iceberg: An Architectural Look Under the Covers

Data Lakes have been built with a desire to democratize data - to allow more and more people, tools, and applications to make use of data. A key capability needed to achieve it is hiding the complexity of underlying data structures and physical data storage from users. The de-facto standard has been the Hive table format addresses some of these problems but falls short at data, user, and application scale. So what is the answer? Apache Iceberg. Apache Iceberg table format is now in use and contributed to by many leading tech companies like Netflix, Apple, Airbnb, LinkedIn, Dremio, Expedia, and AWS. Watch Alex Merced, Developer Advocate at Dremio, as he describes the open architecture and performance-oriented capabilities of Apache Iceberg. You will learn: • The issues that arise when using the Hive table format at scale, and why we need a new table format • How a straightforward, elegant change in table format structure has enormous positive effects • The underlying architecture of an Apache Iceberg table, how a query against an Iceberg table works, and how the table’s underlying structure changes as CRUD operations are done on it • The resulting benefits of this architectural design

high throughput and low latencyp99p99 conf
M|18 Architectural Overview: MariaDB MaxScale
M|18 Architectural Overview: MariaDB MaxScaleM|18 Architectural Overview: MariaDB MaxScale
M|18 Architectural Overview: MariaDB MaxScale

MaxScale uses an asynchronous and multi-threaded architecture to route client queries to backend database servers. Each thread creates its own epoll instance to monitor file descriptors for I/O events, avoiding locking between threads. Listening sockets are added to a global epoll file descriptor that notifies threads when clients connect, allowing connections to be distributed evenly across threads. This architecture improves performance over the previous single epoll instance approach.

Spark Summit EU talk by Mike Percy
Spark Summit EU talk by Mike PercySpark Summit EU talk by Mike Percy
Spark Summit EU talk by Mike Percy

The document discusses Apache Kudu, an open source storage layer for Apache Hadoop that enables fast analytics on fast data. Kudu is designed to fill the gap between HDFS and HBase by providing fast analytics capabilities on fast-changing or frequently updated data. It achieves this through its scalable and fast tabular storage design that allows for both high insert/update throughput and fast scans/queries. The document provides an overview of Kudu's architecture and capabilities, examples of how to use its NoSQL and SQL APIs, and real-world use cases like enabling low-latency analytics pipelines for companies like Xiaomi.

apache spark
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

Recommended for you

Percona Live 2022 - MySQL Architectures
Percona Live 2022 - MySQL ArchitecturesPercona Live 2022 - MySQL Architectures
Percona Live 2022 - MySQL Architectures

In this tutorial, we cover the different deployment possibilities of the MySQL architecture depending on the business requirements for the data. We also deploy some architecture and see how to evolve to the next one. The tutorial covers the new MySQL Solutions like InnoDB ReplicaSet, InnoDB Cluster, and InnoDB ClusterSet.

mysql innodb clustermysqlmysql innodb replicaset
Galera Cluster Best Practices for DBA's and DevOps Part 1
Galera Cluster Best Practices for DBA's and DevOps Part 1Galera Cluster Best Practices for DBA's and DevOps Part 1
Galera Cluster Best Practices for DBA's and DevOps Part 1

In the first part of Galera Cluster best practices series, we will discuss the following topics: * ongoing monitoring of the cluster and detection of bottlenecks; * fine-tuning the configuration based on the actual database workload; * selecting the optimal State Snapshot Transfer (SST) method; * backup strategies (video:http://galeracluster.com/videos/2159/)

mysql scalabilitygeo-distributed galera clusterwan cluster
Common Strategies for Improving Performance on Your Delta Lakehouse
Common Strategies for Improving Performance on Your Delta LakehouseCommon Strategies for Improving Performance on Your Delta Lakehouse
Common Strategies for Improving Performance on Your Delta Lakehouse

The Delta Architecture pattern has made the lives of data engineers much simpler, but what about improving query performance for data analysts? What are some common places to look at for tuning query performance? In this session we will cover some common techniques to apply to our delta tables to make them perform better for data analysts queries. We will look at a few examples of how you can analyze a query, and determine what to focus on to deliver better performance results.

#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

Recommended for you

Running MariaDB in multiple data centers
Running MariaDB in multiple data centersRunning MariaDB in multiple data centers
Running MariaDB in multiple data centers

The document discusses running MariaDB across multiple data centers. It begins by outlining the need for multi-datacenter database architectures to provide high availability, disaster recovery, and continuous operation. It then describes topology choices for different use cases, including traditional disaster recovery, geo-synchronous distributed architectures, and how technologies like MariaDB Master/Slave and Galera Cluster work. The rest of the document discusses answering key questions when designing a multi-datacenter topology, trade-offs to consider, architecture technologies, and pros and cons of different approaches.

SeaweedFS introduction
SeaweedFS introductionSeaweedFS introduction
SeaweedFS introduction

Introduce SeaweedFS for beginners. SeaweedFS implements an object storage layer modeled after Facebook Haystack paper, a filer layer, supports S3 APIs, compatible with Hadoop file system.

distributedfile systemscalability
ASM
ASMASM
ASM

Automatic Storage Management (ASM) provides a simple way to manage Oracle database files across disk storage. ASM uses disk groups and metadata to distribute data extents across disks for redundancy. Rebalancing operations redistribute extents to maintain even distribution as disks are added or removed, and the estimated time for rebalancing can be found in V$ASM_OPERATION. ASM supports different redundancy levels including external, normal, and high redundancy.

asm
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

Recommended for you

Galera Cluster DDL and Schema Upgrades 220217
Galera Cluster DDL and Schema Upgrades 220217Galera Cluster DDL and Schema Upgrades 220217
Galera Cluster DDL and Schema Upgrades 220217

We will show how Galera Cluster executes DDLs in a safe, consistent manner across all the nodes in the cluster, and the differences with stand-alone MySQL. We will discuss how to prepare for and successfully carry out a schema upgrade and the considerations that need to be taken into account during the process.

mysql high availabilityschema changesmysql scalability
Apache Iceberg Presentation for the St. Louis Big Data IDEA
Apache Iceberg Presentation for the St. Louis Big Data IDEAApache Iceberg Presentation for the St. Louis Big Data IDEA
Apache Iceberg Presentation for the St. Louis Big Data IDEA

Presentation on Apache Iceberg for the February 2021 St. Louis Big Data IDEA. Apache Iceberg is an alternative database platform that works with Hive and Spark.

icebergstlbigdataideabig data
Understanding performance aspects of etcd and Raft
Understanding performance aspects of etcd and RaftUnderstanding performance aspects of etcd and Raft
Understanding performance aspects of etcd and Raft

The document discusses performance aspects of etcd and Raft consensus algorithm. It begins with an introduction to state machine replication techniques and why they are important for building highly available and consistent distributed systems. It then provides some tips for managing etcd clusters and developing applications using the Raft consensus package, including how compaction can impact performance and reducing execution time of state machine operations. It also discusses an idea for optimization based on group commit.

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

Recommended for you

Automated master failover
Automated master failoverAutomated master failover
Automated master failover

Automated, Non-Stop MySQL Operations and Failover discusses automating master failover in MySQL to minimize downtime. The goal is to have no single point of failure by automatically promoting a slave as the new master when the master goes down. This is challenging due to asynchronous replication and the possibility that not all slaves have received the same binary log events from the crashed master. Differential relay log events must be identified and applied to bring all slaves to an eventually consistent state.

mysql
MySQL Performance for DevOps
MySQL Performance for DevOpsMySQL Performance for DevOps
MySQL Performance for DevOps

MySQL performance can be improved by tuning queries, server options, and hardware. Traditionally it was an area of responsibility for three different roles: Development, DBA, and System Administrators. Now DevOps handle these all. But there is a gap. Knowledge gained by MySQL DBAs after years or focusing on a single product is hard to gain when you focus on more than one. This is why I am doing this session. I will show a minimal but most effective set of options to improve MySQL performance. For illustrations, I will use real user stories gained from my Support experience and Percona Kubernetes operators for PXC and MySQL.

mysqlperformancepercona
Galera Replication Demystified: How Does It Work?
Galera Replication Demystified: How Does It Work?Galera Replication Demystified: How Does It Work?
Galera Replication Demystified: How Does It Work?

Galera replication works by synchronizing data across multiple database servers so that any server can accept writes and all servers instantly reflect the new data. It uses global transaction IDs and group communication to replicate write sets in parallel to all nodes, ensuring consistency. Any node can join the cluster as long as it knows the cluster name and can find an active member to bootstrap from.

mysql galera pxc mgc
#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

Recommended for you

ProxySQL High Avalability and Configuration Management Overview
ProxySQL High Avalability and Configuration Management OverviewProxySQL High Avalability and Configuration Management Overview
ProxySQL High Avalability and Configuration Management Overview

The document provides an overview of high availability and configuration management options for ProxySQL. It discusses deploying ProxySQL locally on application servers, in a dedicated layer, or using both approaches. When deploying in a dedicated layer, options for high availability include keepalived, load balancers, Consul, and Kubernetes. Configuration can be managed through tools like Ansible, Puppet, or by loading SQL files. ProxySQL Cluster enables syncing configuration across nodes.

mysqlproxysqlconfiguration management
Galera explained 3
Galera explained 3Galera explained 3
Galera explained 3

This presentation is aim to give an initial understanding of how MySQL/Galera works, and some advice.

galeramysqlcluster
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

MySQL replication is a widely known and proven solution to build scalable clusters of databases. It is very easy to deploy, even easier with GTID. Easy deployment doesn't mean you don't need knowledge and skills to operate it correctly. If you'd like to learn what is needed to build a stable environment using MySQL replication, this webinar is for you. AGENDA 1. Sanity checks before migrating into MySQL replication setup 2. Operating system configuration 3. Replication 4. Backup 5. Provisioning 6. Performance 7. Schema changes 8. Reporting 9. Disaster recovery SPEAKER Krzysztof Książek, Senior Support Engineer at Severalnines, is a MySQL DBA with experience managing complex database environments for companies like Zendesk, Chegg, Pinterest and Flipboard.

mysqlstable environmentreplication
#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

Recommended for you

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...

This document provides an overview and agenda for a webinar on managing and monitoring MySQL clusters using ClusterControl by Severalnines. The webinar host is introduced and instructions are provided for asking questions. The webinar will cover topics such as operating system configuration, backup strategies, replication, query performance, schema changes, security, reporting, and disaster recovery. Case studies and customers are also briefly mentioned.

mysqlmariadbmysql cluster
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

RDS for MySQL provides a fully managed MySQL database in the cloud. It handles backups, provisioning, patching, and failover automatically. While convenient, RDS has some limitations like inability to choose database versions, limited control over maintenance windows, and downtime required for migrations or upgrades. Careful planning is needed for workloads with high availability or latency requirements. Overall RDS reduces DBA overhead but still requires expertise for design, tuning, and automation.

rdsmysqldba
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

We continuously see great interest in MySQL load balancing and HAProxy, so we thought it was about time we organised a live webinar on the topic! Here is the replay of that webinar! As most of you will know, database clusters and load balancing go hand in hand. Once your data is distributed and replicated across multiple database nodes, a load balancing mechanism helps distribute database requests, and gives applications a single database endpoint to connect to. Instance failures or maintenance operations like node additions/removals, reconfigurations or version upgrades can be masked behind a load balancer. This provides an efficient way of isolating changes in the database layer from the rest of the infrastructure. In this webinar, we cover the concepts around the popular open-source HAProxy load balancer, and show you how to use it with your SQL-based database clusters. We also discuss HA strategies for HAProxy with Keepalived and Virtual IP. Agenda: * What is HAProxy? * SQL Load balancing for MySQL * Failure detection using MySQL health checks * High Availability with Keepalived and Virtual IP * Use cases: MySQL Cluster, Galera Cluster and MySQL Replication * Alternative methods: Database drivers with inbuilt cluster support, MySQL proxy, MaxScale, ProxySQL

virtual ipkeepalivedgalera cluster
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!

Recommended for you

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

This document discusses backup solutions for MySQL databases. It begins by defining logical and physical backups. For logical backups, it recommends mysqldump and mydumper/myloader. For physical backups, it recommends xtrabackup and snapshots. It provides details on using these tools and best practices like regular testing of backups. It gives examples of setups for on-premises, Amazon Web Services, and using Cluster Control for managing backups.

mysqlxtrabackupdba
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...

You’re running MySQL as backend database, how do you tune it to make best use of the hardware? How do you optimize the Operating System? How do you best configure MySQL for a specific database workload? Do these questions sound familiar to you? Maybe you’re having to deal with that type of situation yourself? In this webinar, we’ve discussed some of the settings that are most often tweaked and which can bring you significant improvement in the performance of your MySQL database. We also covered some of the variables which are frequently modified even though they should not. Performance tuning is not easy, but you can go a surprisingly long way with a few basic guidelines. AGENDA Database tuning - the what and why Principles of the tuning process Tuning the Operating System configuration Tuning the MySQL configuration Useful tools pt-summary pt-mysql-summary What to avoid when tuning OS and MySQL configuration SPEAKER Krzysztof Książek, Senior Support Engineer at Severalnines, is a MySQL DBA with experience managing complex database environments for companies like Zendesk, Chegg, Pinterest and Flipboard. This webinar is based on our popular blog series ‘Become a MySQL DBA’.

mysqlperformance tuningdatabase
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

Verisure migrated their data warehouse from using Tungsten Replicator to native multi-source replication in MySQL 5.7 to simplify operations. They loaded data from production shards into the new data warehouse setup using XtraBackup backups and improved replication capacity with MySQL's parallel replication features. Some issues were encountered with replication lag reporting and crashes during the upgrade but most were resolved. Monitoring and management tools also required updates to support the new multi-source replication configuration.

mysqlreplicationpercona
#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

Recommended for you

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

In this webinar we cover one of the most basic, but essential tasks of the DBA: minor and major database upgrades in production environments. AGENDA What types of upgrades are there? How do I best prepare for the upgrades? Best practices for: Minor version upgrades - MySQL & Galera Major version upgrades - MySQL & Galera SPEAKER Krzysztof Książek, Senior Support Engineer at Severalnines, is a MySQL DBA with experience managing complex database environments for companies like Zendesk, Chegg, Pinterest and Flipboard. This webinar builds upon recent blog posts and related webinar series by Krzysztof on how to become a MySQL DBA. To view all the blogs of the ‘Become a MySQL DBA’ series visit: http://www.severalnines.com/blog-categories/db-ops

mysql clusterwebinargalera cluster
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?

There are many many approaches to MySQL high availability - from traditional, loosely-coupled database setups based on asynchronous replication to more modern, tightly-coupled architectures based on synchronous replication. These offer varying degrees of protection, and DBAs almost always have to choose a trade-off between high-availability and cost. In this webinar, we looked at some of the most widely used HA alternatives in the MySQL world and discuss their pros and cons. AGENDA - HA - what is it? - Caching layer - HA solutions • MySQL Replication • MySQL Cluster • Galera Cluster • Hybrid Replication - Proxy layer • HAProxy • MaxScale • Elastic Load Balancer (AWS) - Common issues • Split brain scenarios • GTID-based failover and Errant Transactions

maxscalemysqlgtid
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...

This document discusses redundancy models for MySQL, MariaDB, MongoDB and TokuMX databases. It covers asynchronous replication used in MySQL replication and MongoDB/TokuMX compared to synchronous replication in Galera and NDB Cluster. The document then zooms into recovery procedures for Galera clusters and discusses how to prevent split-brain situations in multi-datacenter setups through the use of additional nodes and assigning node weights.

mysqlmysql clustermongodb
#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

MySQL/MariaDB Proxy Software Test
MySQL/MariaDB Proxy Software TestMySQL/MariaDB Proxy Software Test
MySQL/MariaDB Proxy Software Test
I Goo Lee
 
Iceberg: A modern table format for big data (Strata NY 2018)
Iceberg: A modern table format for big data (Strata NY 2018)Iceberg: A modern table format for big data (Strata NY 2018)
Iceberg: A modern table format for big data (Strata NY 2018)
Ryan Blue
 
Iceberg: a fast table format for S3
Iceberg: a fast table format for S3Iceberg: a fast table format for S3
Iceberg: a fast table format for S3
DataWorks Summit
 
Apache Iceberg: An Architectural Look Under the Covers
Apache Iceberg: An Architectural Look Under the CoversApache Iceberg: An Architectural Look Under the Covers
Apache Iceberg: An Architectural Look Under the Covers
ScyllaDB
 
M|18 Architectural Overview: MariaDB MaxScale
M|18 Architectural Overview: MariaDB MaxScaleM|18 Architectural Overview: MariaDB MaxScale
M|18 Architectural Overview: MariaDB MaxScale
MariaDB plc
 
Spark Summit EU talk by Mike Percy
Spark Summit EU talk by Mike PercySpark Summit EU talk by Mike Percy
Spark Summit EU talk by Mike Percy
Spark Summit
 
Percona Live 2022 - MySQL Architectures
Percona Live 2022 - MySQL ArchitecturesPercona Live 2022 - MySQL Architectures
Percona Live 2022 - MySQL Architectures
Frederic Descamps
 
Galera Cluster Best Practices for DBA's and DevOps Part 1
Galera Cluster Best Practices for DBA's and DevOps Part 1Galera Cluster Best Practices for DBA's and DevOps Part 1
Galera Cluster Best Practices for DBA's and DevOps Part 1
Codership Oy - Creators of Galera Cluster
 
Common Strategies for Improving Performance on Your Delta Lakehouse
Common Strategies for Improving Performance on Your Delta LakehouseCommon Strategies for Improving Performance on Your Delta Lakehouse
Common Strategies for Improving Performance on Your Delta Lakehouse
Databricks
 
Running MariaDB in multiple data centers
Running MariaDB in multiple data centersRunning MariaDB in multiple data centers
Running MariaDB in multiple data centers
MariaDB plc
 
SeaweedFS introduction
SeaweedFS introductionSeaweedFS introduction
SeaweedFS introduction
chrislusf
 
ASM
ASMASM
Galera Cluster DDL and Schema Upgrades 220217
Galera Cluster DDL and Schema Upgrades 220217Galera Cluster DDL and Schema Upgrades 220217
Galera Cluster DDL and Schema Upgrades 220217
Codership Oy - Creators of Galera Cluster
 
Apache Iceberg Presentation for the St. Louis Big Data IDEA
Apache Iceberg Presentation for the St. Louis Big Data IDEAApache Iceberg Presentation for the St. Louis Big Data IDEA
Apache Iceberg Presentation for the St. Louis Big Data IDEA
Adam Doyle
 
Understanding performance aspects of etcd and Raft
Understanding performance aspects of etcd and RaftUnderstanding performance aspects of etcd and Raft
Understanding performance aspects of etcd and Raft
Hitoshi Mitake
 
Automated master failover
Automated master failoverAutomated master failover
Automated master failover
Yoshinori Matsunobu
 
MySQL Performance for DevOps
MySQL Performance for DevOpsMySQL Performance for DevOps
MySQL Performance for DevOps
Sveta Smirnova
 
Galera Replication Demystified: How Does It Work?
Galera Replication Demystified: How Does It Work?Galera Replication Demystified: How Does It Work?
Galera Replication Demystified: How Does It Work?
Frederic Descamps
 
ProxySQL High Avalability and Configuration Management Overview
ProxySQL High Avalability and Configuration Management OverviewProxySQL High Avalability and Configuration Management Overview
ProxySQL High Avalability and Configuration Management Overview
René Cannaò
 
Galera explained 3
Galera explained 3Galera explained 3
Galera explained 3
Marco Tusa
 

What's hot (20)

MySQL/MariaDB Proxy Software Test
MySQL/MariaDB Proxy Software TestMySQL/MariaDB Proxy Software Test
MySQL/MariaDB Proxy Software Test
 
Iceberg: A modern table format for big data (Strata NY 2018)
Iceberg: A modern table format for big data (Strata NY 2018)Iceberg: A modern table format for big data (Strata NY 2018)
Iceberg: A modern table format for big data (Strata NY 2018)
 
Iceberg: a fast table format for S3
Iceberg: a fast table format for S3Iceberg: a fast table format for S3
Iceberg: a fast table format for S3
 
Apache Iceberg: An Architectural Look Under the Covers
Apache Iceberg: An Architectural Look Under the CoversApache Iceberg: An Architectural Look Under the Covers
Apache Iceberg: An Architectural Look Under the Covers
 
M|18 Architectural Overview: MariaDB MaxScale
M|18 Architectural Overview: MariaDB MaxScaleM|18 Architectural Overview: MariaDB MaxScale
M|18 Architectural Overview: MariaDB MaxScale
 
Spark Summit EU talk by Mike Percy
Spark Summit EU talk by Mike PercySpark Summit EU talk by Mike Percy
Spark Summit EU talk by Mike Percy
 
Percona Live 2022 - MySQL Architectures
Percona Live 2022 - MySQL ArchitecturesPercona Live 2022 - MySQL Architectures
Percona Live 2022 - MySQL Architectures
 
Galera Cluster Best Practices for DBA's and DevOps Part 1
Galera Cluster Best Practices for DBA's and DevOps Part 1Galera Cluster Best Practices for DBA's and DevOps Part 1
Galera Cluster Best Practices for DBA's and DevOps Part 1
 
Common Strategies for Improving Performance on Your Delta Lakehouse
Common Strategies for Improving Performance on Your Delta LakehouseCommon Strategies for Improving Performance on Your Delta Lakehouse
Common Strategies for Improving Performance on Your Delta Lakehouse
 
Running MariaDB in multiple data centers
Running MariaDB in multiple data centersRunning MariaDB in multiple data centers
Running MariaDB in multiple data centers
 
SeaweedFS introduction
SeaweedFS introductionSeaweedFS introduction
SeaweedFS introduction
 
ASM
ASMASM
ASM
 
Galera Cluster DDL and Schema Upgrades 220217
Galera Cluster DDL and Schema Upgrades 220217Galera Cluster DDL and Schema Upgrades 220217
Galera Cluster DDL and Schema Upgrades 220217
 
Apache Iceberg Presentation for the St. Louis Big Data IDEA
Apache Iceberg Presentation for the St. Louis Big Data IDEAApache Iceberg Presentation for the St. Louis Big Data IDEA
Apache Iceberg Presentation for the St. Louis Big Data IDEA
 
Understanding performance aspects of etcd and Raft
Understanding performance aspects of etcd and RaftUnderstanding performance aspects of etcd and Raft
Understanding performance aspects of etcd and Raft
 
Automated master failover
Automated master failoverAutomated master failover
Automated master failover
 
MySQL Performance for DevOps
MySQL Performance for DevOpsMySQL Performance for DevOps
MySQL Performance for DevOps
 
Galera Replication Demystified: How Does It Work?
Galera Replication Demystified: How Does It Work?Galera Replication Demystified: How Does It Work?
Galera Replication Demystified: How Does It Work?
 
ProxySQL High Avalability and Configuration Management Overview
ProxySQL High Avalability and Configuration Management OverviewProxySQL High Avalability and Configuration Management Overview
ProxySQL High Avalability and Configuration Management Overview
 
Galera explained 3
Galera explained 3Galera explained 3
Galera explained 3
 

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 environment
Severalnines
 
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 Patterns
Laine 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 - Slides
Severalnines
 
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
Severalnines
 
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 @ Verisure
Kenny 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 slides
Severalnines
 
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 - Slides
Severalnines
 
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 MariaDB
Severalnines
 
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.ppt
nadirpervez2
 
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
Ulf 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 HA
Ulf Wendel
 
usenix
usenixusenix
usenix
xlight
 

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

WEBINAR SLIDES: CCX for Cloud Service Providers
WEBINAR SLIDES: CCX for Cloud Service ProvidersWEBINAR SLIDES: CCX for Cloud Service Providers
WEBINAR SLIDES: CCX for Cloud Service Providers
Severalnines
 
LIVE DEMO: CCX for CSPs, a drop-in DBaaS solution
LIVE DEMO: CCX for CSPs, a drop-in DBaaS solutionLIVE DEMO: CCX for CSPs, a drop-in DBaaS solution
LIVE DEMO: CCX for CSPs, a drop-in DBaaS solution
Severalnines
 
Kubernetes at Scale: Going Multi-Cluster with Istio
Kubernetes at Scale:  Going Multi-Cluster  with IstioKubernetes at Scale:  Going Multi-Cluster  with Istio
Kubernetes at Scale: Going Multi-Cluster with Istio
Severalnines
 
DIY DBaaS: A guide to building your own full-featured DBaaS
DIY DBaaS: A guide to building your own full-featured DBaaSDIY DBaaS: A guide to building your own full-featured DBaaS
DIY DBaaS: A guide to building your own full-featured DBaaS
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 DBaaS
Severalnines
 
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
Severalnines
 
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
Severalnines
 
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
Severalnines
 
(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 MariaDB
Severalnines
 
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
Severalnines
 
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 & MariaDB
Severalnines
 
MariaDB Performance Tuning Crash Course
MariaDB Performance Tuning Crash CourseMariaDB Performance Tuning Crash Course
MariaDB Performance Tuning Crash Course
Severalnines
 
Performance Tuning Cheat Sheet for MongoDB
Performance Tuning Cheat Sheet for MongoDBPerformance Tuning Cheat Sheet for MongoDB
Performance Tuning Cheat Sheet for MongoDB
Severalnines
 
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
Severalnines
 
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
Severalnines
 
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 PostgreSQL
Severalnines
 

More from Severalnines (20)

WEBINAR SLIDES: CCX for Cloud Service Providers
WEBINAR SLIDES: CCX for Cloud Service ProvidersWEBINAR SLIDES: CCX for Cloud Service Providers
WEBINAR SLIDES: CCX for Cloud Service Providers
 
LIVE DEMO: CCX for CSPs, a drop-in DBaaS solution
LIVE DEMO: CCX for CSPs, a drop-in DBaaS solutionLIVE DEMO: CCX for CSPs, a drop-in DBaaS solution
LIVE DEMO: CCX for CSPs, a drop-in DBaaS solution
 
Kubernetes at Scale: Going Multi-Cluster with Istio
Kubernetes at Scale:  Going Multi-Cluster  with IstioKubernetes at Scale:  Going Multi-Cluster  with Istio
Kubernetes at Scale: Going Multi-Cluster with Istio
 
DIY DBaaS: A guide to building your own full-featured DBaaS
DIY DBaaS: A guide to building your own full-featured DBaaSDIY DBaaS: A guide to building your own full-featured DBaaS
DIY DBaaS: A guide to building your own full-featured DBaaS
 
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
 

Recently uploaded

20240702 Présentation Plateforme GenAI.pdf
20240702 Présentation Plateforme GenAI.pdf20240702 Présentation Plateforme GenAI.pdf
20240702 Présentation Plateforme GenAI.pdf
Sally Laouacheria
 
WPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide DeckWPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide Deck
Lidia A.
 
Best Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdfBest Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdf
Tatiana Al-Chueyr
 
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Chris Swan
 
Recent Advancements in the NIST-JARVIS Infrastructure
Recent Advancements in the NIST-JARVIS InfrastructureRecent Advancements in the NIST-JARVIS Infrastructure
Recent Advancements in the NIST-JARVIS Infrastructure
KAMAL CHOUDHARY
 
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - MydbopsScaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
Mydbops
 
20240705 QFM024 Irresponsible AI Reading List June 2024
20240705 QFM024 Irresponsible AI Reading List June 202420240705 QFM024 Irresponsible AI Reading List June 2024
20240705 QFM024 Irresponsible AI Reading List June 2024
Matthew Sinclair
 
What’s New in Teams Calling, Meetings and Devices May 2024
What’s New in Teams Calling, Meetings and Devices May 2024What’s New in Teams Calling, Meetings and Devices May 2024
What’s New in Teams Calling, Meetings and Devices May 2024
Stephanie Beckett
 
Manual | Product | Research Presentation
Manual | Product | Research PresentationManual | Product | Research Presentation
Manual | Product | Research Presentation
welrejdoall
 
[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf
[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf
[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf
Kief Morris
 
Pigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdfPigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdf
Pigging Solutions
 
Implementations of Fused Deposition Modeling in real world
Implementations of Fused Deposition Modeling  in real worldImplementations of Fused Deposition Modeling  in real world
Implementations of Fused Deposition Modeling in real world
Emerging Tech
 
Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...
Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...
Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...
Erasmo Purificato
 
INDIAN AIR FORCE FIGHTER PLANES LIST.pdf
INDIAN AIR FORCE FIGHTER PLANES LIST.pdfINDIAN AIR FORCE FIGHTER PLANES LIST.pdf
INDIAN AIR FORCE FIGHTER PLANES LIST.pdf
jackson110191
 
DealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 editionDealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 edition
Yevgen Sysoyev
 
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdfWhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
ArgaBisma
 
Observability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetryObservability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetry
Eric D. Schabell
 
20240702 QFM021 Machine Intelligence Reading List June 2024
20240702 QFM021 Machine Intelligence Reading List June 202420240702 QFM021 Machine Intelligence Reading List June 2024
20240702 QFM021 Machine Intelligence Reading List June 2024
Matthew Sinclair
 
7 Most Powerful Solar Storms in the History of Earth.pdf
7 Most Powerful Solar Storms in the History of Earth.pdf7 Most Powerful Solar Storms in the History of Earth.pdf
7 Most Powerful Solar Storms in the History of Earth.pdf
Enterprise Wired
 
Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024
BookNet Canada
 

Recently uploaded (20)

20240702 Présentation Plateforme GenAI.pdf
20240702 Présentation Plateforme GenAI.pdf20240702 Présentation Plateforme GenAI.pdf
20240702 Présentation Plateforme GenAI.pdf
 
WPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide DeckWPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide Deck
 
Best Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdfBest Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdf
 
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
 
Recent Advancements in the NIST-JARVIS Infrastructure
Recent Advancements in the NIST-JARVIS InfrastructureRecent Advancements in the NIST-JARVIS Infrastructure
Recent Advancements in the NIST-JARVIS Infrastructure
 
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - MydbopsScaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
 
20240705 QFM024 Irresponsible AI Reading List June 2024
20240705 QFM024 Irresponsible AI Reading List June 202420240705 QFM024 Irresponsible AI Reading List June 2024
20240705 QFM024 Irresponsible AI Reading List June 2024
 
What’s New in Teams Calling, Meetings and Devices May 2024
What’s New in Teams Calling, Meetings and Devices May 2024What’s New in Teams Calling, Meetings and Devices May 2024
What’s New in Teams Calling, Meetings and Devices May 2024
 
Manual | Product | Research Presentation
Manual | Product | Research PresentationManual | Product | Research Presentation
Manual | Product | Research Presentation
 
[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf
[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf
[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf
 
Pigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdfPigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdf
 
Implementations of Fused Deposition Modeling in real world
Implementations of Fused Deposition Modeling  in real worldImplementations of Fused Deposition Modeling  in real world
Implementations of Fused Deposition Modeling in real world
 
Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...
Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...
Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...
 
INDIAN AIR FORCE FIGHTER PLANES LIST.pdf
INDIAN AIR FORCE FIGHTER PLANES LIST.pdfINDIAN AIR FORCE FIGHTER PLANES LIST.pdf
INDIAN AIR FORCE FIGHTER PLANES LIST.pdf
 
DealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 editionDealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 edition
 
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdfWhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
 
Observability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetryObservability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetry
 
20240702 QFM021 Machine Intelligence Reading List June 2024
20240702 QFM021 Machine Intelligence Reading List June 202420240702 QFM021 Machine Intelligence Reading List June 2024
20240702 QFM021 Machine Intelligence Reading List June 2024
 
7 Most Powerful Solar Storms in the History of Earth.pdf
7 Most Powerful Solar Storms in the History of Earth.pdf7 Most Powerful Solar Storms in the History of Earth.pdf
7 Most Powerful Solar Storms in the History of Earth.pdf
 
Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 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