Sie sind auf Seite 1von 23

www.fromdual.

com

MySQL High Availability DOAG 2013 Datenbank 14. Mai 2013, Dsseldorf Oli Sennhauser
Senior MySQL Berater, FromDual GmbH

oli.sennhauser@fromdual.com

1 / 23

ber FromDual GmbH

www.fromdual.com

FromDual bietet neutral und unabhngig:


Beratung fr MySQL Support fr MySQL und Galera Cluster Remote-DBA Dienstleistungen fr MySQL MySQL Schulungen

Oracle Silver Partner (OPN) www.fromdual.com

2 / 23

Inhalt
HA Solutions MySQL High Availability

www.fromdual.com

Scale-Out Read scale-out vs. Scale-Up Replication set-up Master/Slave Replikation for HA Active/passive Replikation Master/Master fail-over MySQL Cluster Aktiv/passiv failover Cluster mit SAN Replication Cluster Aktiv/passiv failover Cluster mit DRBD Storage-Engine-Replication Galera Cluster fr MySQL MySQL (NDB) Cluster

3 / 23

MySQL Scale-Out vs Scale-Up


Kosten MySQL Design Physische Flaschenhlse

www.fromdual.com

Scale-Up

Relaxation of Constraints

Scale-Out
4 / 23

Master Slave Replikation


log_bin=on server_id=42 Application

www.fromdual.com

IO_ thread

Master

Slave

SQL_ thread

Wir brauchen:

...

bin-log.m

bin-log.n

...

relay-log.m

relay-log.n

Binary Log Server Id User fr die Replikation (auf dem Master) Konsistentes Backup MIT Binary Log Position
5 / 23

High-Availability mit Replikation


Application read only VIP Slave M async! Slave 1 Slave 2 Slave 3 ... Master rtw Slave Reporting Slave Backup

www.fromdual.com

Load balancer

Fail-over?
6 / 23

Replikation Fail-over
Application read only VIP Slave M Master rtw Slave Reporting async! Slave Backup ...

www.fromdual.com

Slave 1

Slave 2

Slave 3

Load balancer

7 / 23

Vorteile / Nachteile
Einfaches standard Set-up Sehr gut wenn r >> w Fail-over Seite ist bereits warm/heiss! Zeitversatz Master/Slave (asynchron!) Slave kann hinterherhinken (Slave ist oft Flaschenhals)

www.fromdual.com

Daten In-konsistenz (pttablechecksum/pttablesync) Wenn Master stirbt welcher Slave wird neuere Master?
Switch viel Arbeit, etwas heikel! Es gibt Tools die helfen (MMM v1/v2, MHA, Tungsten, ...)

8 / 23

Master-Master Replikation
App App App

www.fromdual.com

VIP

M1

M2

Slave1

Slave2

Slave3

SlaveBackup

Load balancer (LB)

9 / 23

Master-Master Replikation
App App App

www.fromdual.com

VIP

M1

M2

Slave1

Slave2

Slave3

SlaveBackup

Load balancer (LB)

10 / 23

Vorteile / Nachteile
Nur wenig komplexer als Master/Slave Sehr gut wenn r >> w Fail-over Seite ist bereits warm/heiss! Zeitversatz Master/Slave (asynchron!) Slave kann hinterherhinken (Slave ist oft Flaschenhals)

www.fromdual.com

Daten In-konsistenz (pttablechecksum/pttablesync) Wenn Master stirbt, ist die Hlfte der Slaves out of sync! Vorsicht beim Schreiben auf beide Master! Man erhlt dadurch NICHT mehr I/O Durchsatz! Ein wenig komplizierter (wieder-)aufzusetzen

11 / 23

Aktiv/passiv fail-over mit SAN


App App App

www.fromdual.com

VIP M' M

SAN

Slave1

Slave2 Load balancing (LB)

Slave3

12 / 23

Aktiv/passiv fail-over mit SAN

www.fromdual.com

SPOF 2!

App

App

App

VIP M' M

!!!
Slave1

SAN

Slave2 Load balancing (LB)

Slave3

13 / 23

Vorteile / Nachteile
Synchrone Replikation I/O Durchsatz hngt vom SAN (I/O System) ab Keine Daten IN-Konsistenzen mglich Nur eine mgliche Datenquelle Slaves werdenautomatisch und sauber geschwenkt SAN und Filesystem sind SpoFs! Teuer wenn SAN noch nicht vorhanden ist. SAN's sind nicht einfach richtig zu betreiben! Andere Seite ist kalt nach Fail-over! Hlfte der Hardware idelt Wesentlich komplexerr aufzusetzen

www.fromdual.com

14 / 23

Aktiv/passiv fail-over mit DRBD


App App App

www.fromdual.com

VIP M' M

Poor man's SAN

DRBD

Slave1

Slave2 Load balancing (LB)

Slave3

15 / 23

Activ/passiv fail-over mit DRBD

www.fromdual.com

SPOF 1!

App

App

App

VIP M' M

Poor man's SAN

DRBD

Slave1

Slave2 Load balancing (LB)

Slave3

16 / 23

Vorteile / Nachteile
Synchrone Replikation Keine Daten IN-Konsistenzen mglich Nur eine mgliche Datenquelle

www.fromdual.com

Slaves werdenautomatisch und sauber geschwenkt Filesystem ist SpoF! I/O Durchsatz tendenziell geringer als mit SAN Andere Seite ist kalt nach Fail-over! Hlfte der Hardware idelt Wesentlich komplexer aufzusetzen

17 / 23

Galera Cluster fr MySQL

www.fromdual.com

App

App

App

Load balancing (LB)

Node 1
wsrep

Node 2
wsrep

Node 3
wsrep

Galera replication

18 / 23

Galera Cluster fr MySQL

www.fromdual.com

App

App

App

Load balancing (LB)

Node 1
wsrep

Node 2
wsrep

Node 3
wsrep

Galera replication

19 / 23

Vorteile / Nachteile
Synchrone Replikation Aktiv-aktiv multi-Master Topology Lesen und Schreiben auf alle Cluster-Knoten Automatische Knotenverwaltung Echtes paralleles Replizieren auf Zeilenebene Kein Hinterherhinken des Slaves Keine verlohrene Transaktionen Lese-Skalierbarkeit (read Scale-Out!) und mehr Schreiben (+ SSD) Wartung im laufenden Betrieb mglich Basiert auf InnoDB Storage Engine (nur auf InnoDB!) Galera Binaries (nicht Oracle/MySQL)

www.fromdual.com

Achtung vor Hots-Spots auf einzelnen Zeilen (z. B. Sequenzen-Tabelle) Dadurch hhere wahrscheinlichkeit von Deadlocks Voll-Sychronisation (SST) blockiert Lesen und Schreiben 3 nodes
20 / 23

MySQL (NDB) Cluster


App App App

www.fromdual.com

Loadbalancing balancing(LB) (LB) Load

SQL nodes

MySQL Server

MySQL Server

MySQL Server

MGM client

NDB Cluster
(Data nodes)

MGM client NG0


mgmd

ndbd mgmd ndbd

ndbd ndbd

NG1

Data nodes / Mgmt nodes


21 / 23

Vorteile / Nachteile
Synchrone Replikation Nur eine mgliche Datenquelle Keine Daten IN-Konsistenzen mglich Extrem hoher Durchsatz (wenn richtig gemacht)

www.fromdual.com

Skaliert sehr gut fr Lesen UND Schreiben (wenn richtig gemacht) Wartung im laufenden Betrieb mglich Kein drop-in Ersatz fr InnoDB/MyISAM! Hoher Bedarf an RAM und Netzwerk Mindestens 3 Server (besser 4) sind erforderlich. Neue Datenbank zu lernen (MySQL Cluster != MySQL!) Komplexer aufzusetzen und zu betreiben als normales MySQL Schlecht fr Joins (Push Down Joins in v7.2)
22 / 23

Q&A
Fragen ? Diskussion?

www.fromdual.com

Wir haben Zeit fr ein High-Availability Audit...!

FromDual bietet neutral und unabhngig:

Beratung Remote-DBA Support fr MySQL und Galera Cluster Schulung

www.fromdual.com/presentations
23 / 23