Durch Überwachung können Sie feststellen, ob Ihre Systeme ordnungsgemäß funktionieren. Selbst wenn Sie eine robuste Technologie wie PostgreSQL verwenden, ist es wichtig, über ein gutes Überwachungssystem zu verfügen, mit dem Sie Probleme verhindern können, bevor sie sich auf Ihr Unternehmen auswirken. Der beste Weg, Ihre Datenbank proaktiv zu überwachen, besteht darin, benutzerdefinierte Überprüfungen zu haben, um sie an Ihre Arbeitslast anzupassen, sowie Benachrichtigungen, um sicherzustellen, dass Sie im Falle eines Fehlers benachrichtigt werden.
Dies könnte eine zeitaufwändige Aufgabe sein, da Sie alles manuell erstellen müssen, aber was ist mit der Verwendung von ClusterControl dafür? Ja, das können Sie tun, und in diesem Blog werden wir herausfinden, wie.
ClusterControl-Benachrichtigungen
ClusterControl verfügt über ein Alarmsystem, das Advisors verwendet, um Sie im Falle eines Fehlers oder unerwarteten Verhaltens zu benachrichtigen. Es wird mit einigen vordefinierten Advisors geliefert, aber Sie können es ändern oder sogar ein neues erstellen, indem Sie das integrierte Tool von Developer Studio verwenden. Außerdem ist es in Tools von Drittanbietern wie Slack oder PagerDuty integriert, sodass Sie auch dort Benachrichtigungen erhalten können.
ClusterControl-Berater
ClusterControl verfügt über ein internes Miniprogramm namens Advisors, in dem Sie ein kleines Programm schreiben, das in der Struktur der ClusterControl-Objekte lebt und ausgeführt wird. Sie können es sich als eine geplante Funktion vorstellen, die ein in Developer Studio erstelltes Skript ausführt und ein Ergebnis erzeugt, das Status, Ratschläge und Begründungen enthält. Auf diese Weise können Benutzer die Funktionalität von ClusterControl einfach erweitern, indem sie benutzerdefinierte Berater erstellen, die bei Bedarf oder nach Zeitplan ausgeführt werden können.
Es gibt einige vordefinierte Advisors, die unter ClusterControl -> Performance zu finden sind -> Berater, aber Sie können auch neue mit der Option "Berater planen" planen:Die Option leitet Sie zum Abschnitt "Entwicklerstudio" weiter.
Für die bestehenden Advisors können Sie die Zeitplankonfiguration, die letzte Ausführung und auch Informationen wie den aktuellen Status, die Datenbankinstanz, eine Meldung über die Ausgabe und bei Bedarf einen Ratschlag sehen.
ClusterControl-Entwicklerstudio
Die erwähnten Advisors sind Miniskripte, die in der ClusterControl Domain Specific Language (DSL) geschrieben sind, einer Javascript-ähnlichen Sprache. Diese Skripte können in ClusterControl geschrieben, kompiliert, gespeichert, ausgeführt und geplant werden, indem das in ClusterControl integrierte Developer Studio-Tool verwendet wird.
Um auf dieses Tool zuzugreifen, gehen Sie zu ClusterControl -> Manage -> Developer Studio . Dort können Sie die verfügbaren Skripte sehen, aber auch neue Skripte können erstellt, importiert oder exportiert werden.
Wenn Sie ein Skript ändern oder erstellen, können Sie Ihren Job kompilieren, kompilieren und ausführen, planen oder ganz deaktivieren.
Falls Sie ein neues Skript planen möchten, ist die Konfiguration im Grunde ein Cron-Job, bei dem Sie angeben können, wann und wie oft Sie es in zwei verschiedenen Modi ausführen möchten:Einfach (Basis) oder Erweitert .
Wenn Sie ein vorhandenes Skript planen, können Sie die Ausgabe im sehen Nachrichtenbereich.
Und wenn Sie zum Beispiel ein neues Skript erstellen möchten, um Führen Sie eine SQL-Abfrage in Ihrer PostgreSQL-Datenbank aus, um die aktuelle Version zu erfahren. Es gibt ein einfaches Beispiel:
Weitere Beispiele zur Verwendung der DSL-Sprache finden Sie unter die offizielle Dokumentation.
Fazit
Ein gutes Überwachungssystem muss in der Lage sein, Benachrichtigungen zu senden, Alarme anzuzeigen und auch die Möglichkeit zu bieten, die Skripte anzupassen, um sie an Ihr Unternehmen anzupassen.
ClusterControl hat alle erwähnten Funktionen:Es kann Funktionen anbieten, die von vielen Verwaltungs- und Überwachungsfunktionen wie automatische Wiederherstellung, Backups, Bereitstellung bis hin zu Sicherheit und mehr reichen.
Am Anfang könnte das Erstellen benutzerdefinierter Advisors für Ihre PostgreSQL-Datenbank schwierig sein, da Sie Javascript-Kenntnisse und einige Grundkenntnisse über ClusterControl benötigen, aber sobald Sie Ihren ersten Advisor erstellt haben, sollte der Rest eine leichte Aufgabe sein.