SlideShare uma empresa Scribd logo
1 de 19
Baixar para ler offline
www.fromdual.com

MySQL Cluster
mit Galera
DOAG Konferenz 2013
Nürnberg
Oli Sennhauser
Senior MySQL Consultant, FromDual GmbH

oli.sennhauser@fromdual.com

1 / 19
Über FromDual GmbH
●

www.fromdual.com

FromDual bietet neutral und unabhängig:
●

Beratung für MySQL und Galera

●

Support für MySQL und Galera

●

Remote-DBA Dienstleistungen

●

MySQL Schulungen

●

Partner der Open Database Alliance (ODBA.org)

●

Oracle Silver Partner (OPN)

www.fromdual.com
2 / 19
Inhalt

www.fromdual.com

Galera Cluster
➢
➢
➢
➢
➢
➢
➢

Bestehende Probleme
Was ist Galera Cluster für MySQL
Eigenschaften
Konfiguration
Betrieb
Demo
Weiteres

3 / 19
Bestehende Probleme

www.fromdual.com

Probleme mit bestehenden Lösungen:
●

Datenkonsistenz – M/S Replikation

●

Asynchron, Slave-Lag (Hinterherhinken) – M/S Replikation

●

Komplexität – a/p Failover-Cluster, NDB Cluster

●

Downtime – M/S Replikation, a/p Failover-Cluster

●

Nicht geeignet für komplexe Abfragen (= Joins) – NDB Cluster

●

●

Single Point of Failure (I/O System, File-System) – a/p FailoverCluster
Was wäre wenn es eine Lösung gäbe, die all diese Probleme
NICHT hat?
4 / 19
Galera Cluster

App

www.fromdual.com

App

App

r&w
Load balancing (LB)

InnoDB!

Node 1

Node 2

Node 3

wsrep

wsrep

wsrep

Galera replication

5 / 19
Eigenschaften von Galera

www.fromdual.com

Basiert auf der transaktionalen InnoDB SE
Synchrone Replikation
→ Keine verlorenen Transaktionen mehr
Echtes paralleles Replizieren auf Zeilenebene
→ Kein Slave Lag (Hinterherhinken) mehr
Aktiv/aktiv multi-Master-Topologie
→ Lesen von und Schreiben auf beliebige Knoten möglich
Lese-Skalierbarkeit und Erhöhung des Schreibdurchsatzes
(SSD)
Automatisches Knoten-Management
Rolling Cluster Restart: Upgrade von Hardware, O/S, DB
und Galera im Laufenden Betrieb...
6 / 19
Galera Konfiguration
●

www.fromdual.com

my.cnf (conf.d/galera.cnf,
conf.d/wsrep.cnf)
# wsrep_provider
wsrep_provider

= none
= …/lib/plugin/libgalera_smm.so

# wsrep_cluster_address
wsrep_cluster_address

= "gcomm://"
= "gcomm://node2,node3"

wsrep_cluster_name
wsrep_node_name

= 'Galera Cluster'
= 'Node A'

wsrep_sst_method
wsrep_sst_auth

= mysqldump
= sst:secret

7 / 19
Starten des Clusters

www.fromdual.com

Demo:
●

Starten des ersten Knotens

●

Staren der weiteren Knoten

●

Cluster Status

●

Starten des Load-Balancers (GLB)

●

Load-Balancer Status

●

Test-Applikation
●

Langsam

●

Schnell
8 / 19
Demo Eigenschaften
●

Storage Engine

●

Paralleles Replizieren

●

Lesen und Schreiben von allen Knoten

●

www.fromdual.com

Knoten Management
●

Full Sync (SST)

●

Incremental Sync (IST)

●

Rolling Cluster Restart: InnoDB Buffer Pool Size

●

DB-Upgrade

●

Galera-Upgrade
9 / 19
Online Schema Upgrade (OSU)

www.fromdual.com

●

Schema Upgrade = DDL ausgeführt gegen
die DB
●
●

●

Ändern der DB Struktur
Nicht transaktional!

2 Methoden:
●
●

●

Total Order Isolation (TOI) (default)
Rolling Schema Upgrade (RSU)

wsrep_osu_method = {TOI|RSU}

10 / 19
Online Schema Upgrade
●

www.fromdual.com

Total Order Isolation (TOI) (default)
●

DDL wird auf allen Knoten in der selben Reihenfolge ausgeführt

●

Ein Teil der DB wird während des DDLs gesperrt
+ Einfach, vorhersagbar und garantierte Datenkonsistenz
- Sperrende Operation

●

●

Gut für schnelle (= kleine) DDL Operationen

Rolling Schema Upgrade (RSU)
●

DDL wird nur auf einem Knoten aufs Mal ausgeführt

●

Knoten sind für die Dauer des DDL desynchronisiert

●

●

Nach DDL, werden die fehlenden Write Sets (= Transaktionen) nachgeführt,
ähnlich wie im IST.
DDL müssen von Hand auf jedem Knoten ausgeführt werden.
+ nur ein Knoten aufs Mal wird blockiert.
- Potentiell unsicher, kann fehlschlagen, wenn altes und neues Schema nicht
kompatibel sind

●

Gut für langsame (= grosse) DDL Operationen
11 / 19
Best of all worlds!

www.fromdual.com

12 / 19
Quorum

www.fromdual.com

13 / 19
2 + 1 Knoten Cluster
●
●

garbd

2 Knoten ist böse → Split Brain!
Minimalistisches Setup:
2+1

www.fromdual.com

wsrep

App

Load balancing (LB)

Node 1

Node 2

wsrep

wsrep

Galera replication
●

“Unser M/S-Replikation hat jetzt nur 2 Knoten!” oder

●

“Ich will nicht zu viel für Hardware ausgeben!”
→ 2 + 1 = 2 Galera Knoten + 1 Galera Arbitrator
14 / 19
Lese Scale-out
●

www.fromdual.com

4 und mehr Knoten Cluster
●
●

Dedizierter SST-Donor Knoten

●

●

Backup-Knoten
Reporting-Knoten, etc.

Ungerade Anzahl ist
empfohlen!
●

●

●

Ansonsten → gewichtetes Quorum?

App

Load balancing (LB)

Node 1

Node 2

Node 3

Node 4

wsrep

wsrep

wsrep

wsrep

Galera replication

Gerade Anzahl: Split Brain!

Grösster Cluster, nur so zum Spass: 17 Knoten!
15 / 19
Lastverteilung
●

Connectors
●
●

●

●

Connector/J
PHP: MySQLnd Replikations- und Load
Balancing Plug-in
libglb

SW Load Balancer
●

●

www.fromdual.com

GLB, Pen, LVS/IPVS/Ldirector, Ultra Monkey,
HAProxy, MySQL Proxy

HW Load Balancer
16 / 19
Lage der Lastverteilung

www.fromdual.com

17 / 19
Wir suchen noch:

●

www.fromdual.com

Erfahrene/r MySQL DBA / Open-Source
Enthusiast/in für MySQL Support / remoteDBA
und

●

Guter C++ Entwickler/in (mit Affinität zu
DBs, MySQL, Replikation und Cluster)
18 / 19
Q&A

www.fromdual.com

Fragen ?
Diskussion?
Wir haben Zeit für ein persönliches Gespräch...
●

FromDual bietet neutral und unabhängig:
●

Beratung

●

Remote-DBA

●

Support für MySQL, Galera, Percona Server und MariaDB

●

Schulung

www.fromdual.com/presentations
19 / 19

Mais conteúdo relacionado

Mais procurados

MySQL - New Features 5.6
MySQL - New Features 5.6MySQL - New Features 5.6
MySQL - New Features 5.6FromDual GmbH
 
MySQL Performance Tuning für Entwickler
MySQL Performance Tuning für EntwicklerMySQL Performance Tuning für Entwickler
MySQL Performance Tuning für EntwicklerFromDual GmbH
 
DOAG 2011: MySQL Replication
DOAG 2011: MySQL ReplicationDOAG 2011: MySQL Replication
DOAG 2011: MySQL ReplicationFromDual GmbH
 
DOAG 2010: MySQL Architekturen für Oracle DBA's
DOAG 2010: MySQL Architekturen für Oracle DBA'sDOAG 2010: MySQL Architekturen für Oracle DBA's
DOAG 2010: MySQL Architekturen für Oracle DBA'sFromDual GmbH
 
MySQL Replication for Beginners
MySQL Replication for BeginnersMySQL Replication for Beginners
MySQL Replication for BeginnersFromDual GmbH
 
DOAG 2011: MySQL Performance Tuning
DOAG 2011: MySQL Performance TuningDOAG 2011: MySQL Performance Tuning
DOAG 2011: MySQL Performance TuningFromDual GmbH
 
FROSCON 2011: MySQL Performance Tuning
FROSCON 2011: MySQL Performance TuningFROSCON 2011: MySQL Performance Tuning
FROSCON 2011: MySQL Performance TuningFromDual GmbH
 
FROSCON 2011: MySQL Replication
FROSCON 2011: MySQL ReplicationFROSCON 2011: MySQL Replication
FROSCON 2011: MySQL ReplicationFromDual GmbH
 
DAOG SIG: HA Architekturen mit MySQL
DAOG SIG: HA Architekturen mit MySQLDAOG SIG: HA Architekturen mit MySQL
DAOG SIG: HA Architekturen mit MySQLFromDual GmbH
 
Internet Briefing 2011: NoSQL with MySQL
Internet Briefing 2011: NoSQL with MySQLInternet Briefing 2011: NoSQL with MySQL
Internet Briefing 2011: NoSQL with MySQLFromDual GmbH
 
MySQL Hochverfügbarkeitslösungen
MySQL HochverfügbarkeitslösungenMySQL Hochverfügbarkeitslösungen
MySQL HochverfügbarkeitslösungenLenz Grimmer
 
DOAG SIG: MySQL Replikation, Scale-Out, Master- Master Replikation, Backup
DOAG SIG: MySQL Replikation, Scale-Out, Master- Master Replikation, BackupDOAG SIG: MySQL Replikation, Scale-Out, Master- Master Replikation, Backup
DOAG SIG: MySQL Replikation, Scale-Out, Master- Master Replikation, BackupFromDual GmbH
 
MySQL HA and Security
MySQL HA and SecurityMySQL HA and Security
MySQL HA and SecurityFromDual GmbH
 
Internet Briefing 2010: Performance Tuning & Scale-Out mit MySQL
Internet Briefing 2010: Performance Tuning & Scale-Out mit MySQLInternet Briefing 2010: Performance Tuning & Scale-Out mit MySQL
Internet Briefing 2010: Performance Tuning & Scale-Out mit MySQLFromDual GmbH
 
Microservices and Container Management with Mesosphere DC/OS
Microservices and Container Management with Mesosphere DC/OSMicroservices and Container Management with Mesosphere DC/OS
Microservices and Container Management with Mesosphere DC/OSRalf Ernst
 
MySQL High Availability Solutions
MySQL High Availability SolutionsMySQL High Availability Solutions
MySQL High Availability SolutionsFromDual GmbH
 
MySQL Hochverfügbarkeitslösungen
MySQL HochverfügbarkeitslösungenMySQL Hochverfügbarkeitslösungen
MySQL HochverfügbarkeitslösungenLenz Grimmer
 
Grundlagen postgresql
Grundlagen postgresqlGrundlagen postgresql
Grundlagen postgresqlinovex GmbH
 

Mais procurados (20)

MySQL Backup
MySQL BackupMySQL Backup
MySQL Backup
 
MySQL - New Features 5.6
MySQL - New Features 5.6MySQL - New Features 5.6
MySQL - New Features 5.6
 
MySQL Performance Tuning für Entwickler
MySQL Performance Tuning für EntwicklerMySQL Performance Tuning für Entwickler
MySQL Performance Tuning für Entwickler
 
DOAG 2011: MySQL Replication
DOAG 2011: MySQL ReplicationDOAG 2011: MySQL Replication
DOAG 2011: MySQL Replication
 
DOAG 2010: MySQL Architekturen für Oracle DBA's
DOAG 2010: MySQL Architekturen für Oracle DBA'sDOAG 2010: MySQL Architekturen für Oracle DBA's
DOAG 2010: MySQL Architekturen für Oracle DBA's
 
MySQL Replication for Beginners
MySQL Replication for BeginnersMySQL Replication for Beginners
MySQL Replication for Beginners
 
DOAG 2011: MySQL Performance Tuning
DOAG 2011: MySQL Performance TuningDOAG 2011: MySQL Performance Tuning
DOAG 2011: MySQL Performance Tuning
 
FROSCON 2011: MySQL Performance Tuning
FROSCON 2011: MySQL Performance TuningFROSCON 2011: MySQL Performance Tuning
FROSCON 2011: MySQL Performance Tuning
 
FROSCON 2011: MySQL Replication
FROSCON 2011: MySQL ReplicationFROSCON 2011: MySQL Replication
FROSCON 2011: MySQL Replication
 
DAOG SIG: HA Architekturen mit MySQL
DAOG SIG: HA Architekturen mit MySQLDAOG SIG: HA Architekturen mit MySQL
DAOG SIG: HA Architekturen mit MySQL
 
Internet Briefing 2011: NoSQL with MySQL
Internet Briefing 2011: NoSQL with MySQLInternet Briefing 2011: NoSQL with MySQL
Internet Briefing 2011: NoSQL with MySQL
 
MySQL Hochverfügbarkeitslösungen
MySQL HochverfügbarkeitslösungenMySQL Hochverfügbarkeitslösungen
MySQL Hochverfügbarkeitslösungen
 
DOAG SIG: MySQL Replikation, Scale-Out, Master- Master Replikation, Backup
DOAG SIG: MySQL Replikation, Scale-Out, Master- Master Replikation, BackupDOAG SIG: MySQL Replikation, Scale-Out, Master- Master Replikation, Backup
DOAG SIG: MySQL Replikation, Scale-Out, Master- Master Replikation, Backup
 
MySQL HA and Security
MySQL HA and SecurityMySQL HA and Security
MySQL HA and Security
 
Internet Briefing 2010: Performance Tuning & Scale-Out mit MySQL
Internet Briefing 2010: Performance Tuning & Scale-Out mit MySQLInternet Briefing 2010: Performance Tuning & Scale-Out mit MySQL
Internet Briefing 2010: Performance Tuning & Scale-Out mit MySQL
 
Microservices and Container Management with Mesosphere DC/OS
Microservices and Container Management with Mesosphere DC/OSMicroservices and Container Management with Mesosphere DC/OS
Microservices and Container Management with Mesosphere DC/OS
 
MySQL High Availability Solutions
MySQL High Availability SolutionsMySQL High Availability Solutions
MySQL High Availability Solutions
 
MySQL Hochverfügbarkeitslösungen
MySQL HochverfügbarkeitslösungenMySQL Hochverfügbarkeitslösungen
MySQL Hochverfügbarkeitslösungen
 
Grundlagen postgresql
Grundlagen postgresqlGrundlagen postgresql
Grundlagen postgresql
 
Hazelcast
HazelcastHazelcast
Hazelcast
 

Semelhante a MySQL Cluster with Galera Cluster for MySQL

MySQL Replikation - Die Eier legende Wollmilchsau?
MySQL Replikation - Die Eier legende Wollmilchsau?MySQL Replikation - Die Eier legende Wollmilchsau?
MySQL Replikation - Die Eier legende Wollmilchsau?FromDual GmbH
 
DOAG: NoSQL with MySQL
DOAG: NoSQL with MySQLDOAG: NoSQL with MySQL
DOAG: NoSQL with MySQLFromDual GmbH
 
Data Warehouse (DWH) with MySQL
Data Warehouse (DWH) with MySQLData Warehouse (DWH) with MySQL
Data Warehouse (DWH) with MySQLFromDual GmbH
 
Spezialitäten der Oracle Lizenzierung - DOAG Konferenz 2010 - OPITZ CONSULTI...
Spezialitäten der Oracle Lizenzierung -  DOAG Konferenz 2010 - OPITZ CONSULTI...Spezialitäten der Oracle Lizenzierung -  DOAG Konferenz 2010 - OPITZ CONSULTI...
Spezialitäten der Oracle Lizenzierung - DOAG Konferenz 2010 - OPITZ CONSULTI...OPITZ CONSULTING Deutschland
 
Hadoop aus IT-Operations-Sicht - Teil 1 (Hadoop-Grundlagen)
Hadoop aus IT-Operations-Sicht - Teil 1 (Hadoop-Grundlagen)Hadoop aus IT-Operations-Sicht - Teil 1 (Hadoop-Grundlagen)
Hadoop aus IT-Operations-Sicht - Teil 1 (Hadoop-Grundlagen)inovex GmbH
 
MySQL Security SLAC 2015
MySQL Security SLAC 2015MySQL Security SLAC 2015
MySQL Security SLAC 2015FromDual GmbH
 
Back to Basics - Webinar 6: Produktivsetzung einer Anwendung
Back to Basics - Webinar 6: Produktivsetzung einer AnwendungBack to Basics - Webinar 6: Produktivsetzung einer Anwendung
Back to Basics - Webinar 6: Produktivsetzung einer AnwendungMongoDB
 

Semelhante a MySQL Cluster with Galera Cluster for MySQL (8)

MySQL Replikation - Die Eier legende Wollmilchsau?
MySQL Replikation - Die Eier legende Wollmilchsau?MySQL Replikation - Die Eier legende Wollmilchsau?
MySQL Replikation - Die Eier legende Wollmilchsau?
 
DOAG: NoSQL with MySQL
DOAG: NoSQL with MySQLDOAG: NoSQL with MySQL
DOAG: NoSQL with MySQL
 
Data Warehouse (DWH) with MySQL
Data Warehouse (DWH) with MySQLData Warehouse (DWH) with MySQL
Data Warehouse (DWH) with MySQL
 
Spezialitäten der Oracle Lizenzierung - DOAG Konferenz 2010 - OPITZ CONSULTI...
Spezialitäten der Oracle Lizenzierung -  DOAG Konferenz 2010 - OPITZ CONSULTI...Spezialitäten der Oracle Lizenzierung -  DOAG Konferenz 2010 - OPITZ CONSULTI...
Spezialitäten der Oracle Lizenzierung - DOAG Konferenz 2010 - OPITZ CONSULTI...
 
Hadoop aus IT-Operations-Sicht - Teil 1 (Hadoop-Grundlagen)
Hadoop aus IT-Operations-Sicht - Teil 1 (Hadoop-Grundlagen)Hadoop aus IT-Operations-Sicht - Teil 1 (Hadoop-Grundlagen)
Hadoop aus IT-Operations-Sicht - Teil 1 (Hadoop-Grundlagen)
 
MySQL Security
MySQL SecurityMySQL Security
MySQL Security
 
MySQL Security SLAC 2015
MySQL Security SLAC 2015MySQL Security SLAC 2015
MySQL Security SLAC 2015
 
Back to Basics - Webinar 6: Produktivsetzung einer Anwendung
Back to Basics - Webinar 6: Produktivsetzung einer AnwendungBack to Basics - Webinar 6: Produktivsetzung einer Anwendung
Back to Basics - Webinar 6: Produktivsetzung einer Anwendung
 

Mais de FromDual GmbH

MariaDB/MySQL pitfalls - And how to come out again...
MariaDB/MySQL pitfalls - And how to come out again...MariaDB/MySQL pitfalls - And how to come out again...
MariaDB/MySQL pitfalls - And how to come out again...FromDual GmbH
 
MariaDB / MySQL tripping hazard and how to get out again?
MariaDB / MySQL tripping hazard and how to get out again?MariaDB / MySQL tripping hazard and how to get out again?
MariaDB / MySQL tripping hazard and how to get out again?FromDual GmbH
 
PXC 5.5 to MariaDB 10.4 Galera Cluster Migration Workshop
PXC 5.5 to MariaDB 10.4 Galera Cluster Migration WorkshopPXC 5.5 to MariaDB 10.4 Galera Cluster Migration Workshop
PXC 5.5 to MariaDB 10.4 Galera Cluster Migration WorkshopFromDual GmbH
 
IT Tage 2019 MariaDB 10.4 New Features
IT Tage 2019 MariaDB 10.4 New FeaturesIT Tage 2019 MariaDB 10.4 New Features
IT Tage 2019 MariaDB 10.4 New FeaturesFromDual GmbH
 
MariaDB 10.4 New Features
MariaDB 10.4 New FeaturesMariaDB 10.4 New Features
MariaDB 10.4 New FeaturesFromDual GmbH
 
MariaDB 10.2 New Features
MariaDB 10.2 New FeaturesMariaDB 10.2 New Features
MariaDB 10.2 New FeaturesFromDual GmbH
 
PERFORMANCE_SCHEMA and sys schema
PERFORMANCE_SCHEMA and sys schemaPERFORMANCE_SCHEMA and sys schema
PERFORMANCE_SCHEMA and sys schemaFromDual GmbH
 
Reading MySQL fingerprints
Reading MySQL fingerprintsReading MySQL fingerprints
Reading MySQL fingerprintsFromDual GmbH
 
High-availability with Galera Cluster for MySQL
High-availability with Galera Cluster for MySQLHigh-availability with Galera Cluster for MySQL
High-availability with Galera Cluster for MySQLFromDual GmbH
 
MySQL always-up with Galera Cluster
MySQL always-up with Galera ClusterMySQL always-up with Galera Cluster
MySQL always-up with Galera ClusterFromDual GmbH
 
MySQL Indexierung CeBIT 2014
MySQL Indexierung CeBIT 2014MySQL Indexierung CeBIT 2014
MySQL Indexierung CeBIT 2014FromDual GmbH
 
Need for Speed: Mysql indexing
Need for Speed: Mysql indexingNeed for Speed: Mysql indexing
Need for Speed: Mysql indexingFromDual GmbH
 
MySQL for Oracle DBAs
MySQL for Oracle DBAsMySQL for Oracle DBAs
MySQL for Oracle DBAsFromDual GmbH
 
MySQL Performance Tuning Variables
MySQL Performance Tuning VariablesMySQL Performance Tuning Variables
MySQL Performance Tuning VariablesFromDual GmbH
 

Mais de FromDual GmbH (15)

MariaDB/MySQL pitfalls - And how to come out again...
MariaDB/MySQL pitfalls - And how to come out again...MariaDB/MySQL pitfalls - And how to come out again...
MariaDB/MySQL pitfalls - And how to come out again...
 
MariaDB / MySQL tripping hazard and how to get out again?
MariaDB / MySQL tripping hazard and how to get out again?MariaDB / MySQL tripping hazard and how to get out again?
MariaDB / MySQL tripping hazard and how to get out again?
 
PXC 5.5 to MariaDB 10.4 Galera Cluster Migration Workshop
PXC 5.5 to MariaDB 10.4 Galera Cluster Migration WorkshopPXC 5.5 to MariaDB 10.4 Galera Cluster Migration Workshop
PXC 5.5 to MariaDB 10.4 Galera Cluster Migration Workshop
 
IT Tage 2019 MariaDB 10.4 New Features
IT Tage 2019 MariaDB 10.4 New FeaturesIT Tage 2019 MariaDB 10.4 New Features
IT Tage 2019 MariaDB 10.4 New Features
 
MariaDB 10.4 New Features
MariaDB 10.4 New FeaturesMariaDB 10.4 New Features
MariaDB 10.4 New Features
 
MariaDB 10.2 New Features
MariaDB 10.2 New FeaturesMariaDB 10.2 New Features
MariaDB 10.2 New Features
 
PERFORMANCE_SCHEMA and sys schema
PERFORMANCE_SCHEMA and sys schemaPERFORMANCE_SCHEMA and sys schema
PERFORMANCE_SCHEMA and sys schema
 
Reading MySQL fingerprints
Reading MySQL fingerprintsReading MySQL fingerprints
Reading MySQL fingerprints
 
High-availability with Galera Cluster for MySQL
High-availability with Galera Cluster for MySQLHigh-availability with Galera Cluster for MySQL
High-availability with Galera Cluster for MySQL
 
MySQL always-up with Galera Cluster
MySQL always-up with Galera ClusterMySQL always-up with Galera Cluster
MySQL always-up with Galera Cluster
 
HA with Galera
HA with GaleraHA with Galera
HA with Galera
 
MySQL Indexierung CeBIT 2014
MySQL Indexierung CeBIT 2014MySQL Indexierung CeBIT 2014
MySQL Indexierung CeBIT 2014
 
Need for Speed: Mysql indexing
Need for Speed: Mysql indexingNeed for Speed: Mysql indexing
Need for Speed: Mysql indexing
 
MySQL for Oracle DBAs
MySQL for Oracle DBAsMySQL for Oracle DBAs
MySQL for Oracle DBAs
 
MySQL Performance Tuning Variables
MySQL Performance Tuning VariablesMySQL Performance Tuning Variables
MySQL Performance Tuning Variables
 

MySQL Cluster with Galera Cluster for MySQL

  • 1. www.fromdual.com MySQL Cluster mit Galera DOAG Konferenz 2013 Nürnberg Oli Sennhauser Senior MySQL Consultant, FromDual GmbH oli.sennhauser@fromdual.com 1 / 19
  • 2. Über FromDual GmbH ● www.fromdual.com FromDual bietet neutral und unabhängig: ● Beratung für MySQL und Galera ● Support für MySQL und Galera ● Remote-DBA Dienstleistungen ● MySQL Schulungen ● Partner der Open Database Alliance (ODBA.org) ● Oracle Silver Partner (OPN) www.fromdual.com 2 / 19
  • 3. Inhalt www.fromdual.com Galera Cluster ➢ ➢ ➢ ➢ ➢ ➢ ➢ Bestehende Probleme Was ist Galera Cluster für MySQL Eigenschaften Konfiguration Betrieb Demo Weiteres 3 / 19
  • 4. Bestehende Probleme www.fromdual.com Probleme mit bestehenden Lösungen: ● Datenkonsistenz – M/S Replikation ● Asynchron, Slave-Lag (Hinterherhinken) – M/S Replikation ● Komplexität – a/p Failover-Cluster, NDB Cluster ● Downtime – M/S Replikation, a/p Failover-Cluster ● Nicht geeignet für komplexe Abfragen (= Joins) – NDB Cluster ● ● Single Point of Failure (I/O System, File-System) – a/p FailoverCluster Was wäre wenn es eine Lösung gäbe, die all diese Probleme NICHT hat? 4 / 19
  • 5. Galera Cluster App www.fromdual.com App App r&w Load balancing (LB) InnoDB! Node 1 Node 2 Node 3 wsrep wsrep wsrep Galera replication 5 / 19
  • 6. Eigenschaften von Galera www.fromdual.com Basiert auf der transaktionalen InnoDB SE Synchrone Replikation → Keine verlorenen Transaktionen mehr Echtes paralleles Replizieren auf Zeilenebene → Kein Slave Lag (Hinterherhinken) mehr Aktiv/aktiv multi-Master-Topologie → Lesen von und Schreiben auf beliebige Knoten möglich Lese-Skalierbarkeit und Erhöhung des Schreibdurchsatzes (SSD) Automatisches Knoten-Management Rolling Cluster Restart: Upgrade von Hardware, O/S, DB und Galera im Laufenden Betrieb... 6 / 19
  • 7. Galera Konfiguration ● www.fromdual.com my.cnf (conf.d/galera.cnf, conf.d/wsrep.cnf) # wsrep_provider wsrep_provider = none = …/lib/plugin/libgalera_smm.so # wsrep_cluster_address wsrep_cluster_address = "gcomm://" = "gcomm://node2,node3" wsrep_cluster_name wsrep_node_name = 'Galera Cluster' = 'Node A' wsrep_sst_method wsrep_sst_auth = mysqldump = sst:secret 7 / 19
  • 8. Starten des Clusters www.fromdual.com Demo: ● Starten des ersten Knotens ● Staren der weiteren Knoten ● Cluster Status ● Starten des Load-Balancers (GLB) ● Load-Balancer Status ● Test-Applikation ● Langsam ● Schnell 8 / 19
  • 9. Demo Eigenschaften ● Storage Engine ● Paralleles Replizieren ● Lesen und Schreiben von allen Knoten ● www.fromdual.com Knoten Management ● Full Sync (SST) ● Incremental Sync (IST) ● Rolling Cluster Restart: InnoDB Buffer Pool Size ● DB-Upgrade ● Galera-Upgrade 9 / 19
  • 10. Online Schema Upgrade (OSU) www.fromdual.com ● Schema Upgrade = DDL ausgeführt gegen die DB ● ● ● Ändern der DB Struktur Nicht transaktional! 2 Methoden: ● ● ● Total Order Isolation (TOI) (default) Rolling Schema Upgrade (RSU) wsrep_osu_method = {TOI|RSU} 10 / 19
  • 11. Online Schema Upgrade ● www.fromdual.com Total Order Isolation (TOI) (default) ● DDL wird auf allen Knoten in der selben Reihenfolge ausgeführt ● Ein Teil der DB wird während des DDLs gesperrt + Einfach, vorhersagbar und garantierte Datenkonsistenz - Sperrende Operation ● ● Gut für schnelle (= kleine) DDL Operationen Rolling Schema Upgrade (RSU) ● DDL wird nur auf einem Knoten aufs Mal ausgeführt ● Knoten sind für die Dauer des DDL desynchronisiert ● ● Nach DDL, werden die fehlenden Write Sets (= Transaktionen) nachgeführt, ähnlich wie im IST. DDL müssen von Hand auf jedem Knoten ausgeführt werden. + nur ein Knoten aufs Mal wird blockiert. - Potentiell unsicher, kann fehlschlagen, wenn altes und neues Schema nicht kompatibel sind ● Gut für langsame (= grosse) DDL Operationen 11 / 19
  • 12. Best of all worlds! www.fromdual.com 12 / 19
  • 14. 2 + 1 Knoten Cluster ● ● garbd 2 Knoten ist böse → Split Brain! Minimalistisches Setup: 2+1 www.fromdual.com wsrep App Load balancing (LB) Node 1 Node 2 wsrep wsrep Galera replication ● “Unser M/S-Replikation hat jetzt nur 2 Knoten!” oder ● “Ich will nicht zu viel für Hardware ausgeben!” → 2 + 1 = 2 Galera Knoten + 1 Galera Arbitrator 14 / 19
  • 15. Lese Scale-out ● www.fromdual.com 4 und mehr Knoten Cluster ● ● Dedizierter SST-Donor Knoten ● ● Backup-Knoten Reporting-Knoten, etc. Ungerade Anzahl ist empfohlen! ● ● ● Ansonsten → gewichtetes Quorum? App Load balancing (LB) Node 1 Node 2 Node 3 Node 4 wsrep wsrep wsrep wsrep Galera replication Gerade Anzahl: Split Brain! Grösster Cluster, nur so zum Spass: 17 Knoten! 15 / 19
  • 16. Lastverteilung ● Connectors ● ● ● ● Connector/J PHP: MySQLnd Replikations- und Load Balancing Plug-in libglb SW Load Balancer ● ● www.fromdual.com GLB, Pen, LVS/IPVS/Ldirector, Ultra Monkey, HAProxy, MySQL Proxy HW Load Balancer 16 / 19
  • 18. Wir suchen noch: ● www.fromdual.com Erfahrene/r MySQL DBA / Open-Source Enthusiast/in für MySQL Support / remoteDBA und ● Guter C++ Entwickler/in (mit Affinität zu DBs, MySQL, Replikation und Cluster) 18 / 19
  • 19. Q&A www.fromdual.com Fragen ? Diskussion? Wir haben Zeit für ein persönliches Gespräch... ● FromDual bietet neutral und unabhängig: ● Beratung ● Remote-DBA ● Support für MySQL, Galera, Percona Server und MariaDB ● Schulung www.fromdual.com/presentations 19 / 19