SlideShare une entreprise Scribd logo
1  sur  33
Télécharger pour lire hors ligne
MySQL Hochverfügbarkeitslösungen


Lenz Grimmer
<lenz@grimmer.com>
2009-05-04
amoocon 2009, Rostock, Germany
Agenda
  Konzepte & Aspekte
●


● MySQL Replikation


● DRBD / Heartbeat


● MySQL Cluster


● Weitere HV-Applikationen
Warum Hochverfügbarkeit?
    Irgendetwas kann und wird ausfallen
●


    Notwendigkeit von Wartungsarbeiten
●


    Ausfallzeiten sind teuer
●


         Website-Besucher kommen nicht wieder
     ●


         Sie verlieren €€€
     ●


         Ihr Chef beschwert sich
     ●


    HV zu einem bereits vorhandenen System
●


    hinzuzufügen ist schwierig
Was ist HV-Clustering?
    Redundanz
●


    Ein Dienst fällt aus → ein anderer
●


    übernimmt
    Übernahme der IP Addresse und des
●


    Dienstes
    Failover vs. Failback vs. Switchover
●


    Nicht geeignet für mehr Leistung
●


    Nicht geeignet für mehr Durchsatz
●


    (Lastverteilung)
Hochverfügbarkeitslevel
Eliminierung des SPOF
    Was ausfallen wird
●


        Festplatten
    ●


        Lüfter
    ●


    Was ausfallen kann
●


         Absturz der Applikation
    ●


        ● OOM-Situationen, Kernel-Panics


        ● Netzwerkverbindungen/-kabel


        ● Stromversorgungen
HA Komponenten
    Heartbeat
●


         Überwachung der hochverfügbar zu
     ●


         machenden Dienste
         Kann einzelne Server, Dienste,
     ●


         Netzwerkverbundungen etc. prüfen
    HA Monitor
●


         Konfiguration der Dienste/Applikationen
     ●


         Regelt ordnungsgemäßen Start und Beenden
     ●


         Erlaubt manuelle Übernahme
     ●


    Shared storage (SAN) / Replikation
●
Replikation vs. SAN
    Konsistenz der replizierten Daten
●


    Synchrone vs. asynchrone Replikation
●


    Geteiltes Speichermedium kann zum SPOF
●


    werden
    “Split brain”-Situationen können zu
●


    Problemen führen (z.B. Gleichzeitiges
    Einhängen eines Dateisystems)
    SAN/NAS I/O Overhead
●
Split-Brain
    Ausfall der Kommunikations → separate
●


    Cluster-Partitionen
    “Split-brain” Situation: mehr als eine
●


    Partition will die Kontrolle über ihren Teil
    des Clusters übernehmen
    http://linux-ha.org/BadThingsWillHappen
●


    Vermeidung mittels “Fencing“ oder
●


    Moderation/Arbitrierung
Regeln zur Hochverfügbarkeit
    Auf Ausfälle vorbereitet sein
●


    Sicherstellen daß keine wichtigen Daten
●


    verloren gehen
    Keep it simple, stupid (KISS)
●


    Komplexität ist der Feind der
●


    Ausfallsicherheit
    Automatisieren was sinnvoll ist
●


    Häufig Tests durchführen!
●
MySQL Replikation
    Unidirektional
●


    Anweisungs- oder zeilenbasiert (MySQL 5.1)
●


    Bestandteil des MySQL-Servers
●


    Einfach zu bedienen und einzurichten
●


    Ein Master, viele Slaves
●


    Asynchron – Slaves können nachlaufen
●
MySQL Replikation (2)
    Master verwaltet Binärlogs & index
●


    Replikation auf Slave ist (noch) single-
●


    threaded
    http://forge.mysql.com/wiki/ReplicationFeatures/ParallelSlave

    Kein automatisiertes Fail-over
●


    Kein Heartbeat, kein Monitoring
●
MySQL Replikation - Überblick

        Read & Write


            Web/App
             Server
                                                                       Write

                                                 Relay
                                                  Log



                  mysqld                               I/O              SQL
                                                     Thread            Thread

                       Index &
                       Binlogs

Data

                                 Replication                  Binlog            Data

                                               mysqld

                                                         MySQL Slave
       MySQL Master
Anweisungsbasierte Replikation
    Pro
●


          Bewährt (seit MySQL 3.23 verfügbar)
     ●


          Kleinere Logdateien
     ●


          Auditing der tatsächlichen SQL-Anweisungen
     ●


          Kein Primärschlüssel bei replizierten Tabellen
     ●


          erforderlich
    Kontra
●


          Nicht-deterministische Funktionen und UDFs
     ●


          LOAD_FILE(), UUID(), USER(),
     ●


          FOUND_ROWS() (RAND() and NOW() gehen)
Zeilenbasierte Replikation
    Pro
●


          Alle Veränderungen können repliziert werden
     ●


          Verfahren ähnlich zu anderen DBMSen
     ●


          Erfordert weniger Locks für bestimmte INSERT,
     ●


          UPDATE oder DELETE Anweisungen
    Kontra
●


          Mehr Daten müssen gelogged werden
     ●


          Logfile-Größe (Auswirkungen auf Backup/Restore)
     ●


          Replizierte Tabellen benötigen expliziten
     ●


          Primärschlüssel
          Mögliche Ergebnis-Differenzen bei Bulk-INSERTs
     ●
Replikationstopologien

Master > Slave                           Master > Slaves




                                   Masters > Slave (Multi-Source)
Master > Slave > Slaves




                                         Ring (Multi-Master)
Master < > Master (Multi-Master)
Master-Master-Replikation
    Zwei Server sind sowohl Master als auch
●


    Slave zueinander
    Vereinfacht Failover
●


    Nicht geeignet um Schreiblast zu verteilen
●


        Änderungen erfolgen auf beiden Systemen
    ●


        Keines von beiden hat volle Autorität
    ●


    Nicht auf beide Master schreiben!
●


    Sharding oder Partitionierung (z.B. MySQL
●


    Proxy) eignen sich besser
MySQL Replikation als eine HV-Lösung
    Was passiert wenn der Master ausfällt?
●

         Nicht viel
     ●


         Applikation funktioniert nicht mehr
     ●


         Slave hat nichts mehr zu replizieren
     ●



    Was passiert wenn der Slave ausfällt?
●

         Nicht viel
     ●


         Daten werden nicht mehr repliziert
     ●



    Das klingt aber nicht nach Hochverfügbarkeit?
●

         Korrekt! Replikation kann Bestandteil einer HV-
     ●


         Lösung sein, implementiert jedoch nicht alle Teile
         einer HV-Konfiguration!
Replikation & Hochverfügbarkeit
    Kombiniert mit Heartbeat
●


    Übernahme der virtuellen IP-Adresse
●


    Slave wird zum Master befördert
●


    Nebeneffekt: Lastverteilung & Backup
●


    Failback kompliziert
●


    Keine automatische Konfliktauflösung
●


    Korrektes Failover muß gescriptet werden
●
Linux-HA / Heartbeat
    Unterstützt 2 oder mehr Knoten (v2)
●


    Wenig Abhängigkeiten/ Anforderungen
●


    Überwachung von Resourcen
●


    Aktiver Fencing-Mechanismus: STONITH
●


    Erkennung eines Knotenausfalls in
●


    Sekundenbruchteilen
    http://linux-ha.org/
●
Heartbeat (2)
    Richtlinien-basierte Resourcenverwaltung,
●


    Abhängigkeiten & Einschränkungen
    Zeitbasierte Regeln
●


    Unterstützt sehr viele Applikationen
●


    (incl. MySQL)
    Grafische Oberfläche
●
Applications




                                        Scale-out Slave
         Virtual IP
Master                       HA Slave




               Replication

                         Replication
DRBD
    Distributed Replicated Block Device
●


    “RAID-1 über das Netzwerk”
●


    Synchrone/asynchrone Block-Replizierung
●


    Automatische Resynchronisierung
●


    Applications-agnostisch
●


    Kann lokale I/O-Fehler maskieren
●


    Aktiv/passiv-Konfiguration vorgegeben
●


    Dual-primary Modus (benötigt ein Cluster
●


    Dateisystem wie GFS or OCFS2)
    http://drbd.org/
●
DRBD im Detail
    DRBD repliziert Datenblöcke zwischen zwei
●


    Plattenpartitionen
    DRBD kann mit Linux-HA und anderen HV-
●


    Lösungen gekoppelt
    werden
    MySQL läuft normal auf                    Applications
●


    dem Primärknoten
    MySQL ist nicht aktiv auf
●                                             Virtual IP
                                Active Node                  Passive Node



    dem Sekundärknoten
    DRBD ist nur für Linux
●                                                    DRBD



    verfügbar
MySQL Cluster
    “Shared-nothing”-Architektur
●


    Automatische Partitionierung
●


    Verteilte Fragmente
●


    Synchrone Replikation
●


    Schnelles, automatisches Fail-Over der
●


    Datenknoten
    Automatische Resynchronisierung
●


    Transparent für MySQL-Applikationen
●


    Unterstützt Transaktionen
●


    http://mysql.com/products/database/cluster/
●
MySQL Master-Master Replication Manager

    Scriptsammlung zur Überwachung/Failover
●


    und Management
    Master-Master Replikationskonfiguration
●


    (ein aktiver beschreibbarer Master)
    Failover mittels Übernahme einer virtuellen
●


    IP-Adresse
    http://code.google.com/p/mysql-master-master/
●
Flipper
    Perl Script zur Steuerung eines sich replizierenden
●

    Paars von MySQL-Servern (Master-Master)
    Automatisierter Switch-Over, manuell ausgelöst
●


    Kontrolliertes Herunterfahren einer Hälfte zu
●

    Wartungszwecken
    Die andere Hälfte übernimmt die Arbeit
●


    Verteilung von rollenbasierten IP Addressen (quot;nur-
●

    lesenquot;, quot;beschreibbarquot;) zwischen zwei Knoten im
    Master-Paar stellt sicher, daß beide Rollen
    verfügbar sind
    http://provenscaling.com/software/flipper/
●
Red Hat Cluster Suite
    HV und Lastverteilung
●


    Unterstützt bis zu 128 Knoten
●


    Unterstützt Shared Storage
●


    Überwacht Dienste, Dateisysteme und
●


    Netzwerk-Status
    Fencing (STONITH) oder distributed lock
●


    manager
    Synchronisierung der Konfiguration
●


    http://www.redhat.com/cluster_suite/
●
Solaris Cluster / OpenHA Cluster
    Provides failover and scalability services
●


    Solaris / OpenSolaris (Project Colorado)
●


    Kernel-level components plus userland
●


    Agents monitor applications
●


    Geo Edition to provide Disaster Recovery using
●


    Replication
    Open Source since June 2007
●


    http://www.opensolaris.org/os/community/ha-clusters/
●



    http://opensolaris.org/os/project/ha-mysql/
●
Weitere Werkzeuge/Links
    Maatkit
●

    http://maatkit.sourceforge.net/
    Continuent Tungsten Replicator
●

    https://community.continuent.com/community/tungsten-replicator

    Mon – scheduler and alert management
●

    http://www.kernel.org/software/mon/
    Linux Cluster Information Center
●

    http://www.lcic.org/ha.html
Q&A




Fragen, Kommentare?
Vielen Dank!
Lenz Grimmer <lenz@grimmer.com>

Contenu connexe

Tendances

DOAG 2011: MySQL Performance Tuning
DOAG 2011: MySQL Performance TuningDOAG 2011: MySQL Performance Tuning
DOAG 2011: MySQL Performance TuningFromDual 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-Server im Teamwork - Replikation und Cluster
MySQL-Server im Teamwork - Replikation und ClusterMySQL-Server im Teamwork - Replikation und Cluster
MySQL-Server im Teamwork - Replikation und ClusterFromDual GmbH
 
MySQL Backup/Recovery
MySQL Backup/RecoveryMySQL Backup/Recovery
MySQL Backup/RecoveryFromDual GmbH
 
DOAG: NoSQL with MySQL
DOAG: NoSQL with MySQLDOAG: NoSQL with MySQL
DOAG: NoSQL with MySQLFromDual GmbH
 
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 Oracle-DBA's
MySQL Performance Tuning für Oracle-DBA'sMySQL Performance Tuning für Oracle-DBA's
MySQL Performance Tuning für Oracle-DBA'sFromDual GmbH
 
MySQL für Oracle DBA's
MySQL für Oracle DBA'sMySQL für Oracle DBA's
MySQL für Oracle DBA'sFromDual GmbH
 
MySQL Beispiele aus der Praxis - Wie setzen Kunden MySQL ein?
MySQL Beispiele aus der Praxis - Wie setzen Kunden MySQL ein?MySQL Beispiele aus der Praxis - Wie setzen Kunden MySQL ein?
MySQL Beispiele aus der Praxis - Wie setzen Kunden MySQL ein?FromDual GmbH
 
MySQL Cluster with Galera Cluster for MySQL
MySQL Cluster with Galera Cluster for MySQLMySQL Cluster with Galera Cluster for MySQL
MySQL Cluster with Galera Cluster for MySQLFromDual GmbH
 
MySQL HA and Security
MySQL HA and SecurityMySQL HA and Security
MySQL HA and SecurityFromDual GmbH
 
Der Datenbank-Backup ist gemacht - was nun?
Der Datenbank-Backup ist gemacht - was nun?Der Datenbank-Backup ist gemacht - was nun?
Der Datenbank-Backup ist gemacht - was nun?FromDual GmbH
 
Sql Server Grundlagen für Sharepoint Administratoren
Sql Server Grundlagen für Sharepoint AdministratorenSql Server Grundlagen für Sharepoint Administratoren
Sql Server Grundlagen für Sharepoint AdministratorenCommunardo GmbH
 
Weltweite Produktionsdatenverwaltung mit MySQL-Replikation
Weltweite Produktionsdatenverwaltung mit MySQL-ReplikationWeltweite Produktionsdatenverwaltung mit MySQL-Replikation
Weltweite Produktionsdatenverwaltung mit MySQL-ReplikationFromDual GmbH
 
Nagios Conference 2007 | Vmware Monitoring by Ingo Latschner
Nagios Conference 2007 | Vmware Monitoring by Ingo LatschnerNagios Conference 2007 | Vmware Monitoring by Ingo Latschner
Nagios Conference 2007 | Vmware Monitoring by Ingo LatschnerNETWAYS
 
MySQL High Availability Solutions
MySQL High Availability SolutionsMySQL High Availability Solutions
MySQL High Availability SolutionsFromDual GmbH
 
Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenb...
Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenb...Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenb...
Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenb...Informatik Aktuell
 
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
 

Tendances (20)

DOAG 2011: MySQL Performance Tuning
DOAG 2011: MySQL Performance TuningDOAG 2011: MySQL Performance Tuning
DOAG 2011: MySQL Performance Tuning
 
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-Server im Teamwork - Replikation und Cluster
MySQL-Server im Teamwork - Replikation und ClusterMySQL-Server im Teamwork - Replikation und Cluster
MySQL-Server im Teamwork - Replikation und Cluster
 
NoSQL with MySQL
NoSQL with MySQLNoSQL with MySQL
NoSQL with MySQL
 
MySQL Backup/Recovery
MySQL Backup/RecoveryMySQL Backup/Recovery
MySQL Backup/Recovery
 
MySQL Backup
MySQL BackupMySQL Backup
MySQL Backup
 
DOAG: NoSQL with MySQL
DOAG: NoSQL with MySQLDOAG: NoSQL with MySQL
DOAG: NoSQL with MySQL
 
MySQL - New Features 5.6
MySQL - New Features 5.6MySQL - New Features 5.6
MySQL - New Features 5.6
 
MySQL Performance Tuning für Oracle-DBA's
MySQL Performance Tuning für Oracle-DBA'sMySQL Performance Tuning für Oracle-DBA's
MySQL Performance Tuning für Oracle-DBA's
 
MySQL für Oracle DBA's
MySQL für Oracle DBA'sMySQL für Oracle DBA's
MySQL für Oracle DBA's
 
MySQL Beispiele aus der Praxis - Wie setzen Kunden MySQL ein?
MySQL Beispiele aus der Praxis - Wie setzen Kunden MySQL ein?MySQL Beispiele aus der Praxis - Wie setzen Kunden MySQL ein?
MySQL Beispiele aus der Praxis - Wie setzen Kunden MySQL ein?
 
MySQL Cluster with Galera Cluster for MySQL
MySQL Cluster with Galera Cluster for MySQLMySQL Cluster with Galera Cluster for MySQL
MySQL Cluster with Galera Cluster for MySQL
 
MySQL HA and Security
MySQL HA and SecurityMySQL HA and Security
MySQL HA and Security
 
Der Datenbank-Backup ist gemacht - was nun?
Der Datenbank-Backup ist gemacht - was nun?Der Datenbank-Backup ist gemacht - was nun?
Der Datenbank-Backup ist gemacht - was nun?
 
Sql Server Grundlagen für Sharepoint Administratoren
Sql Server Grundlagen für Sharepoint AdministratorenSql Server Grundlagen für Sharepoint Administratoren
Sql Server Grundlagen für Sharepoint Administratoren
 
Weltweite Produktionsdatenverwaltung mit MySQL-Replikation
Weltweite Produktionsdatenverwaltung mit MySQL-ReplikationWeltweite Produktionsdatenverwaltung mit MySQL-Replikation
Weltweite Produktionsdatenverwaltung mit MySQL-Replikation
 
Nagios Conference 2007 | Vmware Monitoring by Ingo Latschner
Nagios Conference 2007 | Vmware Monitoring by Ingo LatschnerNagios Conference 2007 | Vmware Monitoring by Ingo Latschner
Nagios Conference 2007 | Vmware Monitoring by Ingo Latschner
 
MySQL High Availability Solutions
MySQL High Availability SolutionsMySQL High Availability Solutions
MySQL High Availability Solutions
 
Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenb...
Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenb...Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenb...
Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenb...
 
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
 

En vedette

Preparando La Navidad
Preparando La NavidadPreparando La Navidad
Preparando La Navidadhojitadepapel
 
Présentation cci cerner son offre
Présentation cci   cerner son offrePrésentation cci   cerner son offre
Présentation cci cerner son offreEcobiz 37
 
Publication Bougival Ensemble 2010
Publication Bougival Ensemble 2010Publication Bougival Ensemble 2010
Publication Bougival Ensemble 2010coteaux2seine
 
Les tendances du web
Les tendances du webLes tendances du web
Les tendances du webEmblematic
 
Entscheidende session xpdays_2010
Entscheidende session xpdays_2010Entscheidende session xpdays_2010
Entscheidende session xpdays_2010xpdaysgermany
 
El fantasma payaso
El fantasma payasoEl fantasma payaso
El fantasma payasocarmensimon
 
Notre dvd de Noël
Notre dvd de NoëlNotre dvd de Noël
Notre dvd de Noëlpiedadpcobo
 
Instrucciones envío actividades
Instrucciones envío actividadesInstrucciones envío actividades
Instrucciones envío actividadesJuan Pablo
 
Situation in Fukushima heute - Gefahren und Herausforderungen
Situation in Fukushima heute - Gefahren und HerausforderungenSituation in Fukushima heute - Gefahren und Herausforderungen
Situation in Fukushima heute - Gefahren und HerausforderungenOeko-Institut
 
Peintres français du siècle x xe (2)
Peintres français du siècle x xe (2)Peintres français du siècle x xe (2)
Peintres français du siècle x xe (2)pacitina
 
Chateaux de france
Chateaux de franceChateaux de france
Chateaux de franceJose Santos
 
Trabajo cuadro
Trabajo cuadroTrabajo cuadro
Trabajo cuadropacitina
 
Node gen fr
Node gen frNode gen fr
Node gen frNODE
 

En vedette (20)

Preparando La Navidad
Preparando La NavidadPreparando La Navidad
Preparando La Navidad
 
Présentation cci cerner son offre
Présentation cci   cerner son offrePrésentation cci   cerner son offre
Présentation cci cerner son offre
 
Publication Bougival Ensemble 2010
Publication Bougival Ensemble 2010Publication Bougival Ensemble 2010
Publication Bougival Ensemble 2010
 
Les tendances du web
Les tendances du webLes tendances du web
Les tendances du web
 
Entscheidende session xpdays_2010
Entscheidende session xpdays_2010Entscheidende session xpdays_2010
Entscheidende session xpdays_2010
 
Evid.1 cuestionario
Evid.1 cuestionarioEvid.1 cuestionario
Evid.1 cuestionario
 
Grafica
GraficaGrafica
Grafica
 
Send Mailist
Send MailistSend Mailist
Send Mailist
 
El fantasma payaso
El fantasma payasoEl fantasma payaso
El fantasma payaso
 
Notre dvd de Noël
Notre dvd de NoëlNotre dvd de Noël
Notre dvd de Noël
 
Starter
StarterStarter
Starter
 
Instrucciones envío actividades
Instrucciones envío actividadesInstrucciones envío actividades
Instrucciones envío actividades
 
Situation in Fukushima heute - Gefahren und Herausforderungen
Situation in Fukushima heute - Gefahren und HerausforderungenSituation in Fukushima heute - Gefahren und Herausforderungen
Situation in Fukushima heute - Gefahren und Herausforderungen
 
Peintres français du siècle x xe (2)
Peintres français du siècle x xe (2)Peintres français du siècle x xe (2)
Peintres français du siècle x xe (2)
 
Chateaux de france
Chateaux de franceChateaux de france
Chateaux de france
 
Trabajo cuadro
Trabajo cuadroTrabajo cuadro
Trabajo cuadro
 
Node gen fr
Node gen frNode gen fr
Node gen fr
 
Barrancabermeja
BarrancabermejaBarrancabermeja
Barrancabermeja
 
Belén viviente
Belén vivienteBelén viviente
Belén viviente
 
Peace
PeacePeace
Peace
 

Similaire à MySQL Hochverfügbarkeitslösungen

Sql Server GrundlagenfüR Share Point Admins
Sql Server GrundlagenfüR Share Point AdminsSql Server GrundlagenfüR Share Point Admins
Sql Server GrundlagenfüR Share Point AdminsSharepointUGDD
 
Cloud-native and Enterprise Java? Hold my beer!
Cloud-native and Enterprise Java? Hold my beer!Cloud-native and Enterprise Java? Hold my beer!
Cloud-native and Enterprise Java? Hold my beer!OPEN KNOWLEDGE GmbH
 
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im Überblick
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im ÜberblickBig Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im Überblick
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im ÜberblickKarin Patenge
 
SQL oder NoSQL - Die Auswahl der richtigen Datenbankplattform für die Cloud
SQL oder NoSQL - Die Auswahl der richtigen Datenbankplattform für die CloudSQL oder NoSQL - Die Auswahl der richtigen Datenbankplattform für die Cloud
SQL oder NoSQL - Die Auswahl der richtigen Datenbankplattform für die CloudAWS Germany
 
20160310_ModernApplicationDevelopment_NoSQL_KPatenge
20160310_ModernApplicationDevelopment_NoSQL_KPatenge20160310_ModernApplicationDevelopment_NoSQL_KPatenge
20160310_ModernApplicationDevelopment_NoSQL_KPatengeKarin Patenge
 
Einführung in den SQL-Developer
Einführung in den SQL-DeveloperEinführung in den SQL-Developer
Einführung in den SQL-DeveloperMarkus Flechtner
 
MT AG: Sesam oeffne Dich
MT AG: Sesam oeffne DichMT AG: Sesam oeffne Dich
MT AG: Sesam oeffne DichMT AG
 
Webanwendungen mit Apache HBase entwickeln
Webanwendungen mit Apache HBase entwickelnWebanwendungen mit Apache HBase entwickeln
Webanwendungen mit Apache HBase entwickelnRoman Roelofsen
 
Überblick Oracle Datenbank Hochverfügbarkeit
Überblick Oracle Datenbank HochverfügbarkeitÜberblick Oracle Datenbank Hochverfügbarkeit
Überblick Oracle Datenbank HochverfügbarkeitIleana Somesan
 
200 verteilte Oracle- Server mit Ansible ausrollen
200 verteilte Oracle- Server mit Ansible ausrollen200 verteilte Oracle- Server mit Ansible ausrollen
200 verteilte Oracle- Server mit Ansible ausrollenUwe Küchler
 
Oracle GoldenGate: Synchronisation zwischen Oracle und MySQL Datenbanken, Nov...
Oracle GoldenGate: Synchronisation zwischen Oracle und MySQL Datenbanken, Nov...Oracle GoldenGate: Synchronisation zwischen Oracle und MySQL Datenbanken, Nov...
Oracle GoldenGate: Synchronisation zwischen Oracle und MySQL Datenbanken, Nov...Ileana Somesan
 
Rails in Production - telewebber Architektur
Rails in Production - telewebber ArchitekturRails in Production - telewebber Architektur
Rails in Production - telewebber ArchitekturHeiko Seebach
 
JBoss AS / EAP Clustering
JBoss AS / EAP  ClusteringJBoss AS / EAP  Clustering
JBoss AS / EAP Clusteringhwilming
 
JSUG - OSGi by Michael Greifeneder
JSUG - OSGi by Michael GreifenederJSUG - OSGi by Michael Greifeneder
JSUG - OSGi by Michael GreifenederChristoph Pickl
 
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
 
Infracoders Graz, smartOS - vom Netzwerk in der Box - zum Software Cloud Stack
Infracoders Graz, smartOS - vom Netzwerk in der Box - zum Software Cloud StackInfracoders Graz, smartOS - vom Netzwerk in der Box - zum Software Cloud Stack
Infracoders Graz, smartOS - vom Netzwerk in der Box - zum Software Cloud StackEdmund Siegfried Haselwanter
 
Icsug conf 14_tipps-und-skripts-fuer-ibm-connections-administratoren
Icsug conf 14_tipps-und-skripts-fuer-ibm-connections-administratorenIcsug conf 14_tipps-und-skripts-fuer-ibm-connections-administratoren
Icsug conf 14_tipps-und-skripts-fuer-ibm-connections-administratorenICS User Group
 

Similaire à MySQL Hochverfügbarkeitslösungen (20)

Sql Server GrundlagenfüR Share Point Admins
Sql Server GrundlagenfüR Share Point AdminsSql Server GrundlagenfüR Share Point Admins
Sql Server GrundlagenfüR Share Point Admins
 
Cloud-native and Enterprise Java? Hold my beer!
Cloud-native and Enterprise Java? Hold my beer!Cloud-native and Enterprise Java? Hold my beer!
Cloud-native and Enterprise Java? Hold my beer!
 
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im Überblick
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im ÜberblickBig Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im Überblick
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im Überblick
 
SQL oder NoSQL - Die Auswahl der richtigen Datenbankplattform für die Cloud
SQL oder NoSQL - Die Auswahl der richtigen Datenbankplattform für die CloudSQL oder NoSQL - Die Auswahl der richtigen Datenbankplattform für die Cloud
SQL oder NoSQL - Die Auswahl der richtigen Datenbankplattform für die Cloud
 
20160310_ModernApplicationDevelopment_NoSQL_KPatenge
20160310_ModernApplicationDevelopment_NoSQL_KPatenge20160310_ModernApplicationDevelopment_NoSQL_KPatenge
20160310_ModernApplicationDevelopment_NoSQL_KPatenge
 
Einführung in den SQL-Developer
Einführung in den SQL-DeveloperEinführung in den SQL-Developer
Einführung in den SQL-Developer
 
MT AG: Sesam oeffne Dich
MT AG: Sesam oeffne DichMT AG: Sesam oeffne Dich
MT AG: Sesam oeffne Dich
 
PostgreSQL News
PostgreSQL NewsPostgreSQL News
PostgreSQL News
 
Webanwendungen mit Apache HBase entwickeln
Webanwendungen mit Apache HBase entwickelnWebanwendungen mit Apache HBase entwickeln
Webanwendungen mit Apache HBase entwickeln
 
Überblick Oracle Datenbank Hochverfügbarkeit
Überblick Oracle Datenbank HochverfügbarkeitÜberblick Oracle Datenbank Hochverfügbarkeit
Überblick Oracle Datenbank Hochverfügbarkeit
 
200 verteilte Oracle- Server mit Ansible ausrollen
200 verteilte Oracle- Server mit Ansible ausrollen200 verteilte Oracle- Server mit Ansible ausrollen
200 verteilte Oracle- Server mit Ansible ausrollen
 
Oracle GoldenGate: Synchronisation zwischen Oracle und MySQL Datenbanken, Nov...
Oracle GoldenGate: Synchronisation zwischen Oracle und MySQL Datenbanken, Nov...Oracle GoldenGate: Synchronisation zwischen Oracle und MySQL Datenbanken, Nov...
Oracle GoldenGate: Synchronisation zwischen Oracle und MySQL Datenbanken, Nov...
 
Rails in Production - telewebber Architektur
Rails in Production - telewebber ArchitekturRails in Production - telewebber Architektur
Rails in Production - telewebber Architektur
 
JBoss AS / EAP Clustering
JBoss AS / EAP  ClusteringJBoss AS / EAP  Clustering
JBoss AS / EAP Clustering
 
JSUG - OSGi by Michael Greifeneder
JSUG - OSGi by Michael GreifenederJSUG - OSGi by Michael Greifeneder
JSUG - OSGi by Michael Greifeneder
 
Hazelcast
HazelcastHazelcast
Hazelcast
 
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...
 
Ruby on Rails SS09 02
Ruby on Rails SS09 02Ruby on Rails SS09 02
Ruby on Rails SS09 02
 
Infracoders Graz, smartOS - vom Netzwerk in der Box - zum Software Cloud Stack
Infracoders Graz, smartOS - vom Netzwerk in der Box - zum Software Cloud StackInfracoders Graz, smartOS - vom Netzwerk in der Box - zum Software Cloud Stack
Infracoders Graz, smartOS - vom Netzwerk in der Box - zum Software Cloud Stack
 
Icsug conf 14_tipps-und-skripts-fuer-ibm-connections-administratoren
Icsug conf 14_tipps-und-skripts-fuer-ibm-connections-administratorenIcsug conf 14_tipps-und-skripts-fuer-ibm-connections-administratoren
Icsug conf 14_tipps-und-skripts-fuer-ibm-connections-administratoren
 

Plus de Lenz Grimmer

Ceph Management and Monitoring - DevConf.CZ - 2019-01-26
Ceph Management and Monitoring -  DevConf.CZ - 2019-01-26Ceph Management and Monitoring -  DevConf.CZ - 2019-01-26
Ceph Management and Monitoring - DevConf.CZ - 2019-01-26Lenz Grimmer
 
Managing and Monitoring Ceph - Ceph Day Berlin - 2018-11-12
Managing and Monitoring Ceph - Ceph Day Berlin - 2018-11-12Managing and Monitoring Ceph - Ceph Day Berlin - 2018-11-12
Managing and Monitoring Ceph - Ceph Day Berlin - 2018-11-12Lenz Grimmer
 
Ceph Management and Monitoring with Dashboard V2 - Cephalocon 2018-03-23
Ceph Management and Monitoring with Dashboard V2 - Cephalocon 2018-03-23Ceph Management and Monitoring with Dashboard V2 - Cephalocon 2018-03-23
Ceph Management and Monitoring with Dashboard V2 - Cephalocon 2018-03-23Lenz Grimmer
 
Ceph and Storage Management with openATTIC - FOSDEM 2017-02-05
Ceph and Storage Management with openATTIC - FOSDEM 2017-02-05Ceph and Storage Management with openATTIC - FOSDEM 2017-02-05
Ceph and Storage Management with openATTIC - FOSDEM 2017-02-05Lenz Grimmer
 
Ceph and Storage Management with openATTIC - Ceph Day Munich - 2016-09-23
Ceph and Storage Management with openATTIC - Ceph Day Munich - 2016-09-23Ceph and Storage Management with openATTIC - Ceph Day Munich - 2016-09-23
Ceph and Storage Management with openATTIC - Ceph Day Munich - 2016-09-23Lenz Grimmer
 
Ceph and Storage Management in openATTIC - solutions.hamburg - 2016-09-09
Ceph and Storage Management in openATTIC - solutions.hamburg - 2016-09-09Ceph and Storage Management in openATTIC - solutions.hamburg - 2016-09-09
Ceph and Storage Management in openATTIC - solutions.hamburg - 2016-09-09Lenz Grimmer
 
Storage Monitoring in openATTIC - Monitoring Workshop - 2016-09-07
Storage Monitoring in openATTIC - Monitoring Workshop - 2016-09-07Storage Monitoring in openATTIC - Monitoring Workshop - 2016-09-07
Storage Monitoring in openATTIC - Monitoring Workshop - 2016-09-07Lenz Grimmer
 
Ceph and Storage Management with openATTIC - FrOSCon 2016-08-21
Ceph and Storage Management with openATTIC - FrOSCon 2016-08-21Ceph and Storage Management with openATTIC - FrOSCon 2016-08-21
Ceph and Storage Management with openATTIC - FrOSCon 2016-08-21Lenz Grimmer
 
Ceph and Storage Management with openATTIC - SUSE MOST - 2016-06-07
Ceph and Storage Management with openATTIC - SUSE MOST - 2016-06-07Ceph and Storage Management with openATTIC - SUSE MOST - 2016-06-07
Ceph and Storage Management with openATTIC - SUSE MOST - 2016-06-07Lenz Grimmer
 
Ceph and Storage Management with openATTIC, Ceph Tech Talks 2016-06-23
Ceph and Storage Management with openATTIC, Ceph Tech Talks 2016-06-23Ceph and Storage Management with openATTIC, Ceph Tech Talks 2016-06-23
Ceph and Storage Management with openATTIC, Ceph Tech Talks 2016-06-23Lenz Grimmer
 
Ceph and Storage Management with openATTIC, openSUSE Conference 2016-06-23
Ceph and Storage Management with openATTIC, openSUSE Conference 2016-06-23Ceph and Storage Management with openATTIC, openSUSE Conference 2016-06-23
Ceph and Storage Management with openATTIC, openSUSE Conference 2016-06-23Lenz Grimmer
 
Storage Management mit openAttic - LinuxDay - 2015-11-21
Storage Management mit openAttic - LinuxDay - 2015-11-21Storage Management mit openAttic - LinuxDay - 2015-11-21
Storage Management mit openAttic - LinuxDay - 2015-11-21Lenz Grimmer
 
Flexibles Storage Management unter Linux mit OpenATTIC - Kielux 2015-09-18
Flexibles Storage Management unter Linux mit OpenATTIC - Kielux 2015-09-18Flexibles Storage Management unter Linux mit OpenATTIC - Kielux 2015-09-18
Flexibles Storage Management unter Linux mit OpenATTIC - Kielux 2015-09-18Lenz Grimmer
 
The Evolution of Storage on Linux - FrOSCon - 2015-08-22
The Evolution of Storage on Linux - FrOSCon - 2015-08-22The Evolution of Storage on Linux - FrOSCon - 2015-08-22
The Evolution of Storage on Linux - FrOSCon - 2015-08-22Lenz Grimmer
 
MySQL 5.5 Replication Enhancements – An Overview (FOSDEM 2011)
MySQL 5.5 Replication Enhancements – An Overview (FOSDEM 2011)MySQL 5.5 Replication Enhancements – An Overview (FOSDEM 2011)
MySQL 5.5 Replication Enhancements – An Overview (FOSDEM 2011)Lenz Grimmer
 
What's new in MySQL 5.5? FOSDEM 2011
What's new in MySQL 5.5? FOSDEM 2011What's new in MySQL 5.5? FOSDEM 2011
What's new in MySQL 5.5? FOSDEM 2011Lenz Grimmer
 
MySQL High Availability Solutions
MySQL High Availability SolutionsMySQL High Availability Solutions
MySQL High Availability SolutionsLenz Grimmer
 
How to build your own Quadrocopter
How to build your own QuadrocopterHow to build your own Quadrocopter
How to build your own QuadrocopterLenz Grimmer
 
What's new in MySQL 5.5?
What's new in MySQL 5.5?What's new in MySQL 5.5?
What's new in MySQL 5.5?Lenz Grimmer
 

Plus de Lenz Grimmer (20)

Ceph Management and Monitoring - DevConf.CZ - 2019-01-26
Ceph Management and Monitoring -  DevConf.CZ - 2019-01-26Ceph Management and Monitoring -  DevConf.CZ - 2019-01-26
Ceph Management and Monitoring - DevConf.CZ - 2019-01-26
 
Managing and Monitoring Ceph - Ceph Day Berlin - 2018-11-12
Managing and Monitoring Ceph - Ceph Day Berlin - 2018-11-12Managing and Monitoring Ceph - Ceph Day Berlin - 2018-11-12
Managing and Monitoring Ceph - Ceph Day Berlin - 2018-11-12
 
Ceph Management and Monitoring with Dashboard V2 - Cephalocon 2018-03-23
Ceph Management and Monitoring with Dashboard V2 - Cephalocon 2018-03-23Ceph Management and Monitoring with Dashboard V2 - Cephalocon 2018-03-23
Ceph Management and Monitoring with Dashboard V2 - Cephalocon 2018-03-23
 
Ceph and Storage Management with openATTIC - FOSDEM 2017-02-05
Ceph and Storage Management with openATTIC - FOSDEM 2017-02-05Ceph and Storage Management with openATTIC - FOSDEM 2017-02-05
Ceph and Storage Management with openATTIC - FOSDEM 2017-02-05
 
Ceph and Storage Management with openATTIC - Ceph Day Munich - 2016-09-23
Ceph and Storage Management with openATTIC - Ceph Day Munich - 2016-09-23Ceph and Storage Management with openATTIC - Ceph Day Munich - 2016-09-23
Ceph and Storage Management with openATTIC - Ceph Day Munich - 2016-09-23
 
Ceph and Storage Management in openATTIC - solutions.hamburg - 2016-09-09
Ceph and Storage Management in openATTIC - solutions.hamburg - 2016-09-09Ceph and Storage Management in openATTIC - solutions.hamburg - 2016-09-09
Ceph and Storage Management in openATTIC - solutions.hamburg - 2016-09-09
 
Storage Monitoring in openATTIC - Monitoring Workshop - 2016-09-07
Storage Monitoring in openATTIC - Monitoring Workshop - 2016-09-07Storage Monitoring in openATTIC - Monitoring Workshop - 2016-09-07
Storage Monitoring in openATTIC - Monitoring Workshop - 2016-09-07
 
Ceph and Storage Management with openATTIC - FrOSCon 2016-08-21
Ceph and Storage Management with openATTIC - FrOSCon 2016-08-21Ceph and Storage Management with openATTIC - FrOSCon 2016-08-21
Ceph and Storage Management with openATTIC - FrOSCon 2016-08-21
 
Ceph and Storage Management with openATTIC - SUSE MOST - 2016-06-07
Ceph and Storage Management with openATTIC - SUSE MOST - 2016-06-07Ceph and Storage Management with openATTIC - SUSE MOST - 2016-06-07
Ceph and Storage Management with openATTIC - SUSE MOST - 2016-06-07
 
Ceph and Storage Management with openATTIC, Ceph Tech Talks 2016-06-23
Ceph and Storage Management with openATTIC, Ceph Tech Talks 2016-06-23Ceph and Storage Management with openATTIC, Ceph Tech Talks 2016-06-23
Ceph and Storage Management with openATTIC, Ceph Tech Talks 2016-06-23
 
Ceph and Storage Management with openATTIC, openSUSE Conference 2016-06-23
Ceph and Storage Management with openATTIC, openSUSE Conference 2016-06-23Ceph and Storage Management with openATTIC, openSUSE Conference 2016-06-23
Ceph and Storage Management with openATTIC, openSUSE Conference 2016-06-23
 
Storage Management mit openAttic - LinuxDay - 2015-11-21
Storage Management mit openAttic - LinuxDay - 2015-11-21Storage Management mit openAttic - LinuxDay - 2015-11-21
Storage Management mit openAttic - LinuxDay - 2015-11-21
 
Flexibles Storage Management unter Linux mit OpenATTIC - Kielux 2015-09-18
Flexibles Storage Management unter Linux mit OpenATTIC - Kielux 2015-09-18Flexibles Storage Management unter Linux mit OpenATTIC - Kielux 2015-09-18
Flexibles Storage Management unter Linux mit OpenATTIC - Kielux 2015-09-18
 
The Evolution of Storage on Linux - FrOSCon - 2015-08-22
The Evolution of Storage on Linux - FrOSCon - 2015-08-22The Evolution of Storage on Linux - FrOSCon - 2015-08-22
The Evolution of Storage on Linux - FrOSCon - 2015-08-22
 
MySQL 5.5 Replication Enhancements – An Overview (FOSDEM 2011)
MySQL 5.5 Replication Enhancements – An Overview (FOSDEM 2011)MySQL 5.5 Replication Enhancements – An Overview (FOSDEM 2011)
MySQL 5.5 Replication Enhancements – An Overview (FOSDEM 2011)
 
What's new in MySQL 5.5? FOSDEM 2011
What's new in MySQL 5.5? FOSDEM 2011What's new in MySQL 5.5? FOSDEM 2011
What's new in MySQL 5.5? FOSDEM 2011
 
MySQL High Availability Solutions
MySQL High Availability SolutionsMySQL High Availability Solutions
MySQL High Availability Solutions
 
How to build your own Quadrocopter
How to build your own QuadrocopterHow to build your own Quadrocopter
How to build your own Quadrocopter
 
What's new in MySQL 5.5?
What's new in MySQL 5.5?What's new in MySQL 5.5?
What's new in MySQL 5.5?
 
ZFS unter Linux
ZFS unter LinuxZFS unter Linux
ZFS unter Linux
 

MySQL Hochverfügbarkeitslösungen

  • 2. Agenda Konzepte & Aspekte ● ● MySQL Replikation ● DRBD / Heartbeat ● MySQL Cluster ● Weitere HV-Applikationen
  • 3. Warum Hochverfügbarkeit? Irgendetwas kann und wird ausfallen ● Notwendigkeit von Wartungsarbeiten ● Ausfallzeiten sind teuer ● Website-Besucher kommen nicht wieder ● Sie verlieren €€€ ● Ihr Chef beschwert sich ● HV zu einem bereits vorhandenen System ● hinzuzufügen ist schwierig
  • 4. Was ist HV-Clustering? Redundanz ● Ein Dienst fällt aus → ein anderer ● übernimmt Übernahme der IP Addresse und des ● Dienstes Failover vs. Failback vs. Switchover ● Nicht geeignet für mehr Leistung ● Nicht geeignet für mehr Durchsatz ● (Lastverteilung)
  • 6. Eliminierung des SPOF Was ausfallen wird ● Festplatten ● Lüfter ● Was ausfallen kann ● Absturz der Applikation ● ● OOM-Situationen, Kernel-Panics ● Netzwerkverbindungen/-kabel ● Stromversorgungen
  • 7. HA Komponenten Heartbeat ● Überwachung der hochverfügbar zu ● machenden Dienste Kann einzelne Server, Dienste, ● Netzwerkverbundungen etc. prüfen HA Monitor ● Konfiguration der Dienste/Applikationen ● Regelt ordnungsgemäßen Start und Beenden ● Erlaubt manuelle Übernahme ● Shared storage (SAN) / Replikation ●
  • 8. Replikation vs. SAN Konsistenz der replizierten Daten ● Synchrone vs. asynchrone Replikation ● Geteiltes Speichermedium kann zum SPOF ● werden “Split brain”-Situationen können zu ● Problemen führen (z.B. Gleichzeitiges Einhängen eines Dateisystems) SAN/NAS I/O Overhead ●
  • 9. Split-Brain Ausfall der Kommunikations → separate ● Cluster-Partitionen “Split-brain” Situation: mehr als eine ● Partition will die Kontrolle über ihren Teil des Clusters übernehmen http://linux-ha.org/BadThingsWillHappen ● Vermeidung mittels “Fencing“ oder ● Moderation/Arbitrierung
  • 10. Regeln zur Hochverfügbarkeit Auf Ausfälle vorbereitet sein ● Sicherstellen daß keine wichtigen Daten ● verloren gehen Keep it simple, stupid (KISS) ● Komplexität ist der Feind der ● Ausfallsicherheit Automatisieren was sinnvoll ist ● Häufig Tests durchführen! ●
  • 11. MySQL Replikation Unidirektional ● Anweisungs- oder zeilenbasiert (MySQL 5.1) ● Bestandteil des MySQL-Servers ● Einfach zu bedienen und einzurichten ● Ein Master, viele Slaves ● Asynchron – Slaves können nachlaufen ●
  • 12. MySQL Replikation (2) Master verwaltet Binärlogs & index ● Replikation auf Slave ist (noch) single- ● threaded http://forge.mysql.com/wiki/ReplicationFeatures/ParallelSlave Kein automatisiertes Fail-over ● Kein Heartbeat, kein Monitoring ●
  • 13. MySQL Replikation - Überblick Read & Write Web/App Server Write Relay Log mysqld I/O SQL Thread Thread Index & Binlogs Data Replication Binlog Data mysqld MySQL Slave MySQL Master
  • 14. Anweisungsbasierte Replikation Pro ● Bewährt (seit MySQL 3.23 verfügbar) ● Kleinere Logdateien ● Auditing der tatsächlichen SQL-Anweisungen ● Kein Primärschlüssel bei replizierten Tabellen ● erforderlich Kontra ● Nicht-deterministische Funktionen und UDFs ● LOAD_FILE(), UUID(), USER(), ● FOUND_ROWS() (RAND() and NOW() gehen)
  • 15. Zeilenbasierte Replikation Pro ● Alle Veränderungen können repliziert werden ● Verfahren ähnlich zu anderen DBMSen ● Erfordert weniger Locks für bestimmte INSERT, ● UPDATE oder DELETE Anweisungen Kontra ● Mehr Daten müssen gelogged werden ● Logfile-Größe (Auswirkungen auf Backup/Restore) ● Replizierte Tabellen benötigen expliziten ● Primärschlüssel Mögliche Ergebnis-Differenzen bei Bulk-INSERTs ●
  • 16. Replikationstopologien Master > Slave Master > Slaves Masters > Slave (Multi-Source) Master > Slave > Slaves Ring (Multi-Master) Master < > Master (Multi-Master)
  • 17. Master-Master-Replikation Zwei Server sind sowohl Master als auch ● Slave zueinander Vereinfacht Failover ● Nicht geeignet um Schreiblast zu verteilen ● Änderungen erfolgen auf beiden Systemen ● Keines von beiden hat volle Autorität ● Nicht auf beide Master schreiben! ● Sharding oder Partitionierung (z.B. MySQL ● Proxy) eignen sich besser
  • 18. MySQL Replikation als eine HV-Lösung Was passiert wenn der Master ausfällt? ● Nicht viel ● Applikation funktioniert nicht mehr ● Slave hat nichts mehr zu replizieren ● Was passiert wenn der Slave ausfällt? ● Nicht viel ● Daten werden nicht mehr repliziert ● Das klingt aber nicht nach Hochverfügbarkeit? ● Korrekt! Replikation kann Bestandteil einer HV- ● Lösung sein, implementiert jedoch nicht alle Teile einer HV-Konfiguration!
  • 19. Replikation & Hochverfügbarkeit Kombiniert mit Heartbeat ● Übernahme der virtuellen IP-Adresse ● Slave wird zum Master befördert ● Nebeneffekt: Lastverteilung & Backup ● Failback kompliziert ● Keine automatische Konfliktauflösung ● Korrektes Failover muß gescriptet werden ●
  • 20. Linux-HA / Heartbeat Unterstützt 2 oder mehr Knoten (v2) ● Wenig Abhängigkeiten/ Anforderungen ● Überwachung von Resourcen ● Aktiver Fencing-Mechanismus: STONITH ● Erkennung eines Knotenausfalls in ● Sekundenbruchteilen http://linux-ha.org/ ●
  • 21. Heartbeat (2) Richtlinien-basierte Resourcenverwaltung, ● Abhängigkeiten & Einschränkungen Zeitbasierte Regeln ● Unterstützt sehr viele Applikationen ● (incl. MySQL) Grafische Oberfläche ●
  • 22. Applications Scale-out Slave Virtual IP Master HA Slave Replication Replication
  • 23. DRBD Distributed Replicated Block Device ● “RAID-1 über das Netzwerk” ● Synchrone/asynchrone Block-Replizierung ● Automatische Resynchronisierung ● Applications-agnostisch ● Kann lokale I/O-Fehler maskieren ● Aktiv/passiv-Konfiguration vorgegeben ● Dual-primary Modus (benötigt ein Cluster ● Dateisystem wie GFS or OCFS2) http://drbd.org/ ●
  • 24. DRBD im Detail DRBD repliziert Datenblöcke zwischen zwei ● Plattenpartitionen DRBD kann mit Linux-HA und anderen HV- ● Lösungen gekoppelt werden MySQL läuft normal auf Applications ● dem Primärknoten MySQL ist nicht aktiv auf ● Virtual IP Active Node Passive Node dem Sekundärknoten DRBD ist nur für Linux ● DRBD verfügbar
  • 25. MySQL Cluster “Shared-nothing”-Architektur ● Automatische Partitionierung ● Verteilte Fragmente ● Synchrone Replikation ● Schnelles, automatisches Fail-Over der ● Datenknoten Automatische Resynchronisierung ● Transparent für MySQL-Applikationen ● Unterstützt Transaktionen ● http://mysql.com/products/database/cluster/ ●
  • 26.
  • 27. MySQL Master-Master Replication Manager Scriptsammlung zur Überwachung/Failover ● und Management Master-Master Replikationskonfiguration ● (ein aktiver beschreibbarer Master) Failover mittels Übernahme einer virtuellen ● IP-Adresse http://code.google.com/p/mysql-master-master/ ●
  • 28. Flipper Perl Script zur Steuerung eines sich replizierenden ● Paars von MySQL-Servern (Master-Master) Automatisierter Switch-Over, manuell ausgelöst ● Kontrolliertes Herunterfahren einer Hälfte zu ● Wartungszwecken Die andere Hälfte übernimmt die Arbeit ● Verteilung von rollenbasierten IP Addressen (quot;nur- ● lesenquot;, quot;beschreibbarquot;) zwischen zwei Knoten im Master-Paar stellt sicher, daß beide Rollen verfügbar sind http://provenscaling.com/software/flipper/ ●
  • 29. Red Hat Cluster Suite HV und Lastverteilung ● Unterstützt bis zu 128 Knoten ● Unterstützt Shared Storage ● Überwacht Dienste, Dateisysteme und ● Netzwerk-Status Fencing (STONITH) oder distributed lock ● manager Synchronisierung der Konfiguration ● http://www.redhat.com/cluster_suite/ ●
  • 30. Solaris Cluster / OpenHA Cluster Provides failover and scalability services ● Solaris / OpenSolaris (Project Colorado) ● Kernel-level components plus userland ● Agents monitor applications ● Geo Edition to provide Disaster Recovery using ● Replication Open Source since June 2007 ● http://www.opensolaris.org/os/community/ha-clusters/ ● http://opensolaris.org/os/project/ha-mysql/ ●
  • 31. Weitere Werkzeuge/Links Maatkit ● http://maatkit.sourceforge.net/ Continuent Tungsten Replicator ● https://community.continuent.com/community/tungsten-replicator Mon – scheduler and alert management ● http://www.kernel.org/software/mon/ Linux Cluster Information Center ● http://www.lcic.org/ha.html
  • 33. Vielen Dank! Lenz Grimmer <lenz@grimmer.com>