MariaDB Maxscale: Die fehlende Komponente für verteilte MySQL-Setups

MariaDB Maxscale kann den Betrieb von verteilten MySQL- und MariaDB-Setups erheblich vereinfachen. Wir haben uns die erste stabile Version der Software angesehen, die als Proxy, Binlog-Server und Loadbalancer in MySQL-Setups eingesetzt werden kann.

Artikel veröffentlicht am , Thomas Stein/Syseleven
Maxacale 1.0 GA von MariaDB veröffentlicht
Maxacale 1.0 GA von MariaDB veröffentlicht (Bild: MariaDB)

MariaDB hat mit Maxscale 1.0 GA einen flexiblen MySQL-Proxy veröffentlicht, der die Skalierung von MySQL-Installationen erheblich vereinfachen soll. Er soll zugleich als MySQL-Loadbalancer und Binlog-Server eingesetzt werden können. Die Software ermöglicht es, Datenbank-Querys anhand von Regeln auf unterschiedliche MySQL-Server und -Cluster zu verteilen, ohne dass die eigentliche Applikation angepasst werden muss.

Inhalt:
  1. MariaDB Maxscale: Die fehlende Komponente für verteilte MySQL-Setups
  2. Installation und Konfiguration

MySQL lässt sich horizontal, also durch das Hinzufügen weiterer Server, skalieren. Das geht durch Replikation der Daten von einem auf einen oder mehrere Server, das Sharding genannte Aufteilen der Daten, wenn ein Server die Schreiblast nicht bewältigen kann, oder den Aufbau eines Clusters. Durch verteilte Setups werden die Datenbanken zudem sicherer vor Ausfällen. All diese Ansätze aber erhöhen die Komplexität, was im Betrieb zu höheren Kosten führt. Zudem muss in aller Regel die eingesetzte Software geeignet sein, ein verteiltes Datenbank-Setup effizient zu nutzen.

Datenbank-Proxys sollen helfen, die Komplexität zu reduzieren, denn der Proxy verteilt die Datenbankanfragen auf die verschiedenen Datenbankserver. Es ist also nicht mehr nötig, die Applikation anzupassen. Allerdings sind Lösungen wie MySQL Proxy oder HAProxy nicht überzeugend.

Maxscale versteht Querys dank MariaDB-Parser

Mit Maxscale bietet MariaDB nun eine weitere Option an, die seit kurzem in der ersten stabilen Version 1.0 GA zur Verfügung steht. Der Unterschied zu den zuvor genannten Datenbank-Proxys ist auf den ersten Blick groß: Maxscale weiß, dass es mit Datenbanken spricht und kennt, richtig konfiguriert, den Zustand der Backend-Server. So kann Maxscale reagieren, wenn ein Slave-Server nicht mit seinem Master synchron ist oder die Replikation nicht mehr funktioniert.

Darüber hinaus versteht Maxscale die Querys, denn es verwendet den gleichen Parser wie MariaDB. So kann die Software anhand von Filtern und Regeln unterschiedlich reagieren, um die Anfragen beispielsweise auf einen oder mehrere Datenbankserver zu verteilen und die Querys, wenn nötig, verändern. Auch erhält der Nutzer ein zentrales Performance-Log über alle Server und kann veraltete Applikationen an neue Datenbankversionen anbinden.

Mit Plugins flexibel erweiterbar

Maxscale lässt sich dabei mittels Plugins erweitern. So kann beispielsweise Sharding implementiert werden, ohne dass die Applikation davon etwas mitbekommt. Auch eine MySQL-Firewall kann umgesetzt werden, die SQL-Injection-Angriffe verhindert. Es ist so möglich, den Masterserver in einem Setup umzustellen, ohne dass die Applikation angepasst werden muss, oder einzelne Querys mit Hilfe eines regulären Ausdrucks auf einen bestimmten Server zu leiten.

Per Plugin kann Maxscale auch als Binlog-Server eingesetzt werden. Er fungiert dabei gegenüber dem MySQL-Master als Client, speichert die Binlogs zwischen und tritt gegenüber den Slave-Servern als Master auf. Da Maxscale darüber hinaus aber keine Daten speichert und keine Querys ausführt, ist ein Binlog-Server mit Maxscale schneller und kleiner als einer mit MySQL oder MariaDB.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
Installation und Konfiguration 
  1. 1
  2. 2
  3.  


aFrI 02. Feb 2015

Generell: Die Galera-Extension ist schon länger verfügbar und kann genutzt werden (z.B...

Shuro 30. Jan 2015

Und was genau hat dieser Beitrag nun mit Oracle zu tun? Maxscale ist von MariaDB, nicht...

Baron Münchhausen. 30. Jan 2015

LOL. Schon wieder hat das Ding einen neuen Beitrag erstellt, statt zu bearbeiten.



Aktuell auf der Startseite von Golem.de
Künstliche Intelligenz
So funktioniert ChatGPT

Das mächtige Sprachmodell ChatGPT erzeugt Texte, die sich kaum von denen menschlicher Autoren unterscheiden lassen. Wir erklären die Technologie hinter dem Hype.
Ein Deep Dive von Helmut Linde

Künstliche Intelligenz: So funktioniert ChatGPT
Artikel
  1. Streamer: Rocket Beans muss in Kurzarbeit
    Streamer
    Rocket Beans muss in Kurzarbeit

    Der Gaming-Kanal Rocket Beans hat wirtschaftliche Schwierigkeiten. Mitarbeiter müssen in Kurzarbeit, einige Sendungen entfallen.

  2. i4: BMW lässt sich am Berg nicht updaten
    i4
    BMW lässt sich am Berg nicht updaten

    Die Besitzerin eines BMW i4 hat die Fehlermeldung entdeckt, ihr Parkplatz sei zu steil für ein Update der Bordsoftware.

  3. Volker Wissing: Schienengüterverbände sind gegen Autobahnausbau
    Volker Wissing
    Schienengüterverbände sind gegen Autobahnausbau

    Für den Güterverkehr sollte vermehrt auf die Bahn gesetzt werden und nicht auf mehr LKW. Für die gebe es eh nicht genug Fahrer, meinen Verbände.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • RAM im Preisrutsch - neue Tiefstpreise! • Powercolor RX 7900 XTX 1.195€ • AMD Ryzen 7 5800X3D 329€ • Nur noch heute TV-Sale mit bis 77% Rabatt bei Otto • Lenovo Tab P11 Plus 249€ • MindStar: Intel Core i7 13700K 429€ • Logitech G915 Lightspeed 219,89€ • PCGH Cyber Week [Werbung]
    •  /