MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Verwalten mehrerer Datenbanktechnologien mit ClusterControl

Die Verwaltung mehrerer Open-Source-Datenbanktechnologien in einer beliebigen Umgebung kann eine entmutigende Aufgabe sein, insbesondere wenn Sie über weniger Ressourcen verfügen. Das Szenario könnte noch schlimmer werden, wenn Bereitstellung, Überwachung und andere Datenbankverwaltungsaufgaben manuell durchgeführt werden. Wenn Ihnen dieses Szenario bekannt vorkommt, kann Ihnen dieser Blog dabei helfen, die Verwaltung von heterogenen Open-Source-Datenbanken mithilfe von Datenbankautomatisierungstools wie ClusterControl zu automatisieren.

Für Organisationen oder Unternehmen, die nach Unternehmenslösungen suchen, um ihre Open-Source-Datenbanken basierend auf verschiedenen Technologien zu verwalten, wäre ClusterControl eine großartige Option. ClusterControl unterstützt verschiedene beliebte Open-Source-Datenbanktechnologien, darunter MySQL, MongoDB, PostgreSQL, MariaDB und viele mehr, und wird von großen Organisationen und Unternehmen gleichermaßen für Unternehmensanwendungen und komplexe Architekturen verwendet.

Lösungsarchitekten können ClusterControl effizient nutzen, um es in ihre vorhandene Umgebung und Architektur einzufügen. ClusterControl ist eine monolithische Anwendung, verfügt jedoch über mehrere Komponenten, die mit cmon kommunizieren. Diese Komponenten arbeiten zusammen, um die verschiedenen Arten von Open-Source-Datenbanken, die ClusterControl unterstützt, nahtlos zu verwalten.

Von ClusterControl unterstützte Datenbankanbieter 

ClusterControl ermöglicht Ihnen das Bereitstellen oder Erstellen eines Datenbankclusters von Grund auf neu für verschiedene Open-Source-Datenbanken von RDBMS bis NoSQL. Alles, was Sie tun müssen, ist, Server-Konnektivitätsinformationen wie SSH-Anmeldeinformationen bereitzustellen. ClusterControl verwaltet alle Macken und Leckerbissen, die zum Ausführen Ihrer Datenbankserver erforderlich sind, die auf die unterstützten Linux-Betriebssysteme beschränkt sind. ClusterControl fügt die erforderlichen Konfigurationsparameter hinzu, hilft beim Tuning und bei Benutzern, die es für notwendig erachtet, insbesondere für Backups, Redundanz und Hochverfügbarkeit für registrierte (oder erstellte) und importierte Datenbanken.

Die meisten der von ClusterControl unterstützten Datenbanktechnologien (mit Ausnahme von MongoDB-Varianten und NDB) können problemlos mit verschiedenen Load Balancern oder Proxys verbunden werden, was mit wenigen Klicks über die ClusterControl-Benutzeroberfläche denkbar einfach einzurichten ist .

So sieht es aus, wenn ClusterControl mehrere Datenbanktechnologien verwaltet:

ClusterControl kann Tausende von Clustern verwalten, dies hängt jedoch von der Kapazität und den Ressourcen Ihres Servers ab, der die ClusterControl-Software hostet.

MySQL/MariaDB/ Percona-Server

Oracle MySQL kann in ClusterControl bereitgestellt oder importiert werden und kann als Primär-Standby-/Master-Slave-Replikation eingerichtet werden. Nach der Bereitstellung und Einrichtung mit ClusterControl verwendet Ihre Oracle MySQL-Replikation standardmäßig die halbsynchronisierte Replikation, die mehr Konsistenz bietet als die asynchrone Replikation. Dies wird vom ClusterControl-Monitor - cmon - als Standardkonfiguration konfiguriert und festgelegt, wenn eine primäre Standby-Replikation bereitgestellt wird.

MariaDB und Percona Server können als Primär-Standby/Master-Slave-Replikation eingerichtet werden und können auch mit dem Galera Replication Plugin eingerichtet werden, um eine synchrone Replikation zu erstellen. Wie bei Oracle MySQL gilt das Setup für die Primär-Standby-Replikation auch für eine Primär-Standby-Replikation.

Wenn MariaDB und Percona Server für die Bereitstellung eines Galera-Clusters eingerichtet sind, bedeutet dies, dass die einzurichtende Replikation als synchrone Replikation betrachtet wird.

MySQL-Cluster (NDB)

ClusterControl unterstützt auch MySQL Cluster (NDB), ein verteiltes Datenbanksystem, das häufig in der Telekommunikation oder verwandten Branchen verwendet wird. Diese Technologie ist auf hohe Verfügbarkeit ausgelegt und wird häufig in geschäftskritischen Unternehmensanwendungen eingesetzt, die ein hohes Leistungsniveau erfordern. ClusterControl stellt NDB mit einer Benutzeroberfläche bereit und ist aus Benutzersicht relativ einfach einzurichten. Dennoch sind die Überwachungs- und Verwaltungsfunktionen für NDB im Vergleich zu dem, was für andere Datenbanktechnologien angeboten wird, begrenzt. Obwohl MySQL Cluster (NDB) eine kompliziert zu verwaltende Datenbank ist, kann es, sobald Sie sich an die Arbeit mit NDB gewöhnt haben, leistungsstark sein, insbesondere mit seinen hochverfügbaren Funktionen.

PostgreSQL/TimescaleDB

PostgreSQL wird als die fortschrittlichste relationale Open-Source-Datenbank der Welt bezeichnet und kann in ClusterControl bereitgestellt oder importiert werden und bietet außerdem umfangreiche Funktionen. ClusterControl ermöglicht dem Benutzer, eine PostgreSQL-Replikation einzurichten, um entweder synchrone oder herkömmliche asynchrone Replikation zu wählen.

TimescaleDB ist eine Erweiterung von PostgreSQL, das hauptsächlich als relationale Open-Source-Datenbank für Zeitreihendaten spezialisiert ist. Obwohl es nur sehr wenige Unterschiede gibt, wie cmon TimescaleDB über PostgreSQL verwaltet, sind die meisten, wenn nicht alle Funktionen gleich. Es kann sich in den unterstützten Versionen unterscheiden, aber Verwaltung und Überwachung sind für beide gleich.

MongoDB/Percona-Server für MongoDB

ClusterControl unterstützt MongoDB oder Percona Server für MongoDB als Teil der NoSQL-Datenbankfamilie. Beide Anbieter unterscheiden sich nicht darin, wie es von ClusterControl verwaltet und überwacht wird. Alle Funktionen, die zum Aktivieren der NoSQL-Unterstützung durch ClusterControl vorhanden sind, gelten für beide Anbieter. Sie können mit ClusterControl ein ReplicaSet oder MongoDB-Shards bereitstellen, und es ist ziemlich einfach zu verwalten und einzurichten.

Automatisches Failover mit ClusterControl

ClusterControl wurde entwickelt, um Ausfälle automatisch ohne weitere Änderungen von der administrativen Seite zu verwalten. Fehler können in Form von Hardwarefehlern, Datenbeschädigungen oder Unfällen auftreten, z. B. wenn die Prozess-ID abgebrochen oder das Datenverzeichnis physisch gelöscht wird. ClusterControl ist mit automatischen Wiederherstellungsmodi für die Cluster- und Knotenwiederherstellung ausgestattet, wie unten gezeigt:

Knotenwiederherstellung bedeutet, dass ClusterControl einen Datenbankknoten im Falle eines zeitweiligen Ausfalls wiederherstellen kann, indem der Prozess und die Verbindung zu den Datenbankknoten überwacht werden. Der Prozess funktioniert ähnlich wie systemd, wo er sicherstellt, dass der MySQL-Dienst gestartet und ausgeführt wird, es sei denn, Sie haben ihn absichtlich über die ClusterControl-Benutzeroberfläche gestoppt.

Andererseits stellt die Clusterwiederherstellung sicher, dass ClusterControl die Datenbanktopologie versteht und Best Practices bei der Durchführung der Wiederherstellung befolgt. Bei einem Datenbankcluster mit integrierter Fehlertoleranz wie Galera Cluster, NDB Cluster und MongoDB Replicaset wird der Failover-Prozess automatisch vom Datenbankserver über Quorumberechnung, Heartbeat und Rollenwechsel (falls vorhanden) durchgeführt. ClusterControl überwacht den Prozess und nimmt die notwendigen Anpassungen an der Visualisierung vor, wie z. B. das Wiedergeben der Änderungen in der Topologieansicht und das Anpassen der Überwachungs- und Verwaltungskomponente für die neue Rolle, z. B. neuer primärer Knoten in einem Replikatsatz.

Wenn Sie mehr über diesen Vorgang erfahren möchten, tun Sie dies hier.

Gewährleistung der Sicherheit Ihrer Infrastruktur

Sicherheit ist auch einer der wichtigsten Aspekte beim Betrieb einer Datenbank. Ob Sie ein Entwickler oder ein DBA sind, es liegt in Ihrer Verantwortung, Ihre Daten zu schützen und sie vor unbefugtem Zugriff zu schützen, wenn Sie Datenbanken verwalten.

Die Sicherheit Ihrer Datenbanken erfordert Aufmerksamkeit für Details und ein Verständnis der Verschlüsselung, sowohl während der Übertragung als auch im Ruhezustand. Einige Branchen unterliegen strengen Standards zur Rechenschaftspflicht mit schwerwiegenden Folgen für die Nichteinhaltung (denken Sie an die DSGVO und Ähnliches). 

Anstatt Ihre Teams ihre Open-Source-Datenbanken manuell einrichten zu lassen, können Sie mit der Point-and-Click-Benutzeroberfläche von ClusterControl einfach und sicher bereitstellen, um menschliche Fehler zu vermeiden. Es ist außerdem mit erweiterten Sicherheitsfunktionen ausgestattet, die Ihrer Datenbankinfrastruktur ein hohes Maß an Schutz hinzufügen und Ihre Daten sicher halten.

Schutz Ihrer Daten

ClusterControl bietet eine effiziente und benutzerfreundliche Benutzeroberfläche zur Aktivierung von SSL, wodurch die Konfiguration und Einrichtung Ihrer sicheren Übertragungsschicht automatisiert wird. In MySQL-Datenbankvarianten kann dies beispielsweise wie unten gezeigt auf der Registerkarte Sicherheit zu finden sein:

 ClusterControl aktiviert SSL/TLS für die Client-Server-Kommunikation und die Kommunikation innerhalb der Replikation in einem Galera-basierten Replikationscluster, wie im obigen Screenshot gezeigt. ClusterControl bietet auch erweiterte Sicherungsfunktionen, mit denen Sie die Verschlüsselung im Ruhezustand aktivieren können, wie im folgenden Screenshot zu sehen:

 

FotoautorFotobeschreibung

Datenbankautomatisierung mit ClusterControl

Automatisierungsskripte sind auch nicht erforderlich, wenn Sie ClusterControl haben. Beispielsweise können in ClusterControl Backups im laufenden Betrieb erstellt und ausgeführt werden, und man kann auch eine Backup-Richtlinie erstellen und ein Backup so planen, dass es automatisch ausgeführt wird. So funktioniert es:

Jede Aktion löst einen Job im Hintergrund der Anwendung aus und Sie werden benachrichtigt, wenn der Job abgeschlossen ist. Basierend auf der Sicherung, die wir zuvor ausgelöst haben, werden wir beispielsweise sehen, dass nach Abschluss dieser Aufgabe ein Alarm ausgelöst und entsprechend per E-Mail oder über Ihr integriertes Benachrichtigungssystem eines Drittanbieters zugestellt wird. Dies hängt von Ihren Setup-Einstellungen innerhalb von ClusterControl ab. Im folgenden Beispiel-Screenshot löst ClusterControl den Alarm aus, da es Sie über eine erfolgreiche Sicherung benachrichtigt, die über seinen automatisierten Umgebungsmechanismus ausgeführt wurde.

Fazit

ClusterControl macht es effizient und einfach, große Datenbanken und Umgebungen mit mehreren Datenbanktechnologien zu verwalten. Obwohl ClusterControl monolithisch ist, bietet es viele Vorteile und unterstützt verschiedene Arten von Architekturen, da es über Cloud- oder containerisierte Umgebungen ausgeführt werden kann. Testen Sie ClusterControl noch heute 30 Tage lang kostenlos und wir sehen uns beim nächsten.