Intro

PostgreSQL ist heute für viele Nutzer das wichtigste RDBMS überhaupt. Für einen reibungslosen Betrieb wird jedoch eine entsprechende leistungsfähige Umgebung benötigt, die sämtliche Funktionalitäten abdeckt. Aus dem Bedarf heraus, Stand-Alone-Datenbankserver zu entwickeln, die als Appliance ohne weitere Abhängigkeiten in die eigene Infrastruktur integriert werden können, ist dieses Projekt entstanden.

Elephant Shed bündelt und integriert bewährte Komponenten, die für das Management eines PostgreSQL-Servers benötigt werden. Dabei werden erprobte Tools für alle relevanten Bereiche bereits vorinstalliert und vorkonfiguriert. Die Mehrzahl dieser Tools kann über eine komfortable Weboberfläche gesteuert werden. Selbst gestandene PostgreSQL-Administratoren werden kaum einen Bereich finden, der von Elephant Shed nicht abgedeckt wird.

Zu diesen Bereichen gehören:

  • Verwaltung der PostgreSQL-Instanzen (im PostgreSQL-Jargon auch Cluster genannt)
  • High-Level-Verwaltung von Datenbanken und Datenbankbenutzern
  • Performance-Monitoring, das alle relevanten System- und PostgreSQL-Metriken bündelt
  • Automatisierte Logauswertungen und Reporterstellung
  • Vorkonfiguriertes Backup zum Schutz der Daten

Dabei wird das Rad nicht neu erfunden. Anstelle von Neuentwicklungen kommen etablierte und zuverlässige Open-Source-Projekte aus den entsprechenden Bereichen zum Einsatz. Diese werden innerhalb einer von credativ entwickelten Benutzeroberfläche integriert und zur Verfügung gestellt. Automatisierte Skripte sorgen im Hintergrund dafür, dass das Zusammenspiel aller eingesetzten Tools reibungslos funktioniert. So werden beispielsweise neue Cluster oder Datenbanken automatisch in das Monitoring aufgenommen, Jobs für die Generierung der Reports angelegt und das Backup vorbereitet. All dies erfolgt, ohne dass manuelle Nacharbeiten erforderlich sind. Hierbei werden die Abläufe und Automatismen zeitgemäß über systemd abgebildet.

Der größte Aufwand bestand hier nicht in der Entwicklung der GUI, sondern im Paketieren der einzelnen Komponenten, sowie der Integration zu einem effektiven Gesamtsystem. Im Rahmen dieser Arbeiten sind viele neue Pakete für Debian entstanden (z.B. pgAdmin4). Damit auch alle anderen Debian-Nutzer davon profitieren, sind wir bereits dabei, diese bis zum nächsten Release umfassend in Debian selbst zu integrieren.

Features und Komponenten

Dashboard

Die Administration der PostgreSQL-Datenbanken kann bei Bedarf vollständig im Webinterface geschehen. Ob es darum geht eine neuen Benutzer anzulegen, das Datenbankschema zu aktualisieren oder Konfigurationsänderungen vorzunehmen; alle Aufgaben erledigen Sie komfortabel im Webinterface der Appliance.

Dashboard

Performance-Metriken

Das eigens entwickelte Performance-Monitoring ermöglicht detaillierte Einblicke in das zugrundeliegende System und alle relevanten Datenbankmetriken. Durch einen einzigen Blick können so Performance-Engpässe sowie mögliche Fehlerquellen identifiziert werden. Dabei passt sich das Monitoring-System automatisch den Gegebenheiten an. Neu erstellte PostgreSQL-Instanzen und Datenbanken werden automatisch erfasst und überwacht. Eine aufwändige und fehleranfällige Konfiguration des Systems entfällt. Für das Dashboard wird Grafana verwendet.

Die Metriken werden über Prometheus und mehrere Exporter gesammelt und aggregiert.

Grafana

Logauswertung

Eine automatisierte Zusammenfassung der protokollierten Ereignisse ermöglicht eine schnelle Analyse im Bedarfsfall. Dabei ist es egal, ob Sie fehlgeschlagene Loginversuche analysieren möchten oder die Laufzeit einer Abfrage in Erfahrung bringen wollen.

In dem automatisch generierten Report werden alle relevanten Informationen zusammengefasst und in einer schnell zu erfassenden Übersicht präsentiert.

Für die Reports wird pgBadger verwendet.

pgBadger

Backup

Auch an Datensicherheit wurde gedacht. Das Backup wird so vorkonfiguriert, das nicht nur die Wiederherstellung der Daten, sondern auch die sekundengenaue Bestimmung des Wiederherstellungszeitpunkts ermöglicht wird.

Hierzu kann im Webinterface einfach definiert werden, für welche Instanz (Cluster) das Backup aktiviert werden soll und auch ob Archivierung für Point-in-Time-Recover gewünscht ist. Für die Backups wird pgBackRest verwendet und durch unsere GUI entsprechend ergänzt.

Backup

DB-Administration

Um die Datenbanken komfortabel administrieren zu können, wird pgAdmin4 bereitgestellt. Der Nachfolger des weit verbreiteten Werkzeugs pgAdmin3 ist jetzt nicht nur als Desktop-Applikation, sondern auch als Webinterface verfügbar.

pgadmin4 ermöglicht einen bequemen Zugriff auf die zu verwaltenden Datenbanken. Es bietet neben der Verwaltung der Benutzer und Datenbankobjekte auch die Möglichkeit, Ad-hoc-Abfragen abzusetzen.

pgAdmin4

System(d)-Management

Alle wichtigen Funktionen, um das zugrundeliegende System zu verwalten, werden über das Webinterface zur Verfügung gestellt. So können Dienste gestartet, gestoppt, neugestartet, Logmeldungen eingesehen oder auch das gesamte System aktualisiert werden.

Alle Managementfunktionen werden über das Systemd-Frontend Cockpit bereitgestellt.

Cockpit

Shell im Webinterface

Auch Aktionen, die einen direkten Zugriff über die Konsole benötigen, können komfortabel über das Webinterface erledigt werden. Hierzu wird eine Shell im Browser gestartet. Ein direkter SSH-Login ist nicht erforderlich.

Realisiert wird dies durch Shell In A Box.

Shell

Dokumentation

Software muss auch entsprechend dokumentiert sein, um sie effektiv verwenden zu können. Darum wird die Dokumentation für Elephant Shed direkt mitgeliefert und über das Webinterface zur Verfügung gestellt.

Natürlich wird diese bei Updates automatisch aktualisiert und aktuell gehalten. Wo immer möglich, werden direkte Links auf die entsprechenden Module eingebunden.

Die Dokumentation ist natürlich auch online verfügbar, elephant-shed.io/doc.

Download und Installation

Elephant Shed ist unterstützt auf Debian 9 (Stretch), Ubuntu 18.04 (Bionic) und RedHat/CentOS 7. Pakete sind für die Architekturen amd64 (64-bit x86 Intel) and ppc64el (64-bit IBM POWER, nur Debian) verfügbar.

RedHat-Pakete

Pakete für RedHat/CentOS 7

Ubuntu-Pakete

Pakete für Ubuntu 18.04 (Bionic)

Debian-Pakete

Pakete für Debian 9 (Stretch)

Vagrant-Box

Boxen für Vagrant und VirtualBox

Source auf github.com

Quellcode herunterladen oder forken

Roadmap

Features

  • Steuerung der Komponenten über REST-API
    • PostgreSQL-common
    • Backup (pgBackRest)
  • Multi-Host-Support, zentrale Steuerung von mehreren Elephant-Shed-Instanzen

User Interface

  • Änderung von PostgreSQL-Konfigurationsparametern innerhalb des Elephant Shed-Webinterface

Aktuelle und kommende Vorträge

PostgreSQL und alles was dazugehört
2018-08-26 2:40 PM
Taking care of the elephant
2018-10-15 4:30 PM
Taking care of the elephant
2018-10-25 2:40 PM
Taking care of the elephant
2018-06-08 2:45 PM
PostgreSQL und alles was dazugehört
2018-04-13 2:40 PM
Taking care of the elephant
2018-04-18 10:00 AM
Taking care of the elephant
2018-03-19 1:00 PM

Support und mehr

Haben Sie eine spontane Frage oder möchten mehr erfahren?

Brauchen Sie professionellen Support oder ergänzende Dienstleistungen?

Elephant Shed ist ein Open-Source-Projekt, entwickelt und gepflegt von credativ.

Für Elephant Shed bietet die credativ einen umfassenden technischen Support mit garantierten Service Level Agreements, der optional auch an 365 Tagen im Jahr rund um die Uhr zur Verfügung steht.

Eine Unterstützung bei der Installation und Integration, sowie eine Einführung in Elephant Shed ist selbstverständlich auch Bestandteil der Services von credativ. Bei Interesse können Sie uns gerne kontaktieren.

credativ logo

Für weitere Fragen oder Beratung sind wir Montags bis Freitags von 9:00 Uhr bis 17:00 Uhr für Sie erreichbar.