Nachdem ich bereits über erste Versuche, Backups der Grafana-Konfiguration anzufertigen berichtet habe, habe ich mich nun noch einmal darangemacht und das Projekt in eine Form gebracht, in der es vielleicht auch für andere nützlich sein könnte.
Bisher waren die Skripte nur in der Lage, Datasources und Dashboards zu sichern und Dashboards wiederherzustellen - Datasources mussten zunächst noch manuell hinzugefügt werden.
Die von Grund auf überarbeiteten Skripte sind jetzt in einem Repository veröffentlicht worden, das man einfach forken kann - anschließend muss man noch eine Konfigurationsdatei anlegen und kann dann sofort das erste Backup anfertigen. Die Skripte sorgen auch dafür, dass alle hinzugefügten oder modifizierten Konfigurationen in das lokale Repository committed werden - möchte man auch auf das remote Repo pushen, muss man das noch selbst anstoßen.
Aus der Readme des Projektes:
Dies ist ein Projekt, das eine Reihe von Bash-Skripten enthält, die ein geordnetes Backup/Restore für Grafana möglich machen. Das Skript grafana_backup.sh extrahiert alle
Es enthält
Es stellt
Alternativ dazu kann dafür auch das Skript grafana_restore_ba.sh verwendet werden: Dieses erlaubt es, den Inhalt dieses Repositorys in einer beliebigen Grafana-Instanz wieder herzustellen. Dieses Skript unterscheidet sich von grafana_restore.sh dahingehend, dass es keine Zugriffstoken für die Autorisierung verwendet, sondern stattdessen Basic Auth. Dies ist praktisch, wenn die Wiederherstellung gegen ein neu installiertes System durchgeführt werden soll - zum Beispiel eine grafana-Docker-Instanz, in der noch keine Zugriffstoken konfiguriert sind.
Dies ist auch die Basis für die in .gitlab-ci.yml vorbereitete Gitlab-Pipeline: Es gibt eine auskommentierte Stage namens deploy - Wenn diese aktiviert (und korrekt konfiguriert) wurde, wird das Skript grafana_restore_ba.sh ausgeführt und das Backup in der konfigurierten Instanz wiederhergestellt. So kann man problemlos verifizieren, dass das Backup korrekt erstellt wurde und ggf. wiederhergestellt werden kann.
Fährnisse des Buildprozesses unter Windows
17.07.2019
Nachdem ich begonnen hatte, mich mit der Beschleunigung der Berechnung des Mandelbrot-Fraktals unter Zuhilfenahme der Shadereinheiten in Graphikkarten zu beschäftigen und erste Erfolge feiern konnte, wollte ich das mal auf einer richtigen Graphikkarte ausprobieren...
Weiterlesen...Android Basteln C und C++ Chaos Datenbanken Docker dWb+ ESP Wifi Garten Geo Git(lab|hub) Go GUI Gui Hardware Java Jupyter Komponenten Links Linux Markdown Markup Music Numerik PKI-X.509-CA Python QBrowser Rants Raspi Revisited Security Software-Test sQLshell TeleGrafana Verschiedenes Video Virtualisierung Windows Upcoming...
Ich bin heute nochmal inspiriert worden, weiter über die Trojan Source Vulnerability nachzudenken. Meiner Meinung nach bestehen hier noch Probleme - speziell bei Nutzereingaben oder Daten, die über externe Schnittstellen ampfangen werden.
Weiterlesen...Ich habe die auf OpenStreetMap basierende OpenSource Navigationslösung Graphhopper in einen Docker-Container gepackt und als neuestes Mitglied in meinem Docker-Zoo willkommen geheißen.
Weiterlesen...Ich habe neulich über eine Möglichkeit berichtet, SQLite mittels der sQLshell und Beanshell-Skripten um SQL-Funktionen zu erweitern. In diesem Artikel versprach ich auch, über eine solche Möglichkeit für Aggregatfunktionen zu berichten.
Weiterlesen...Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.
Wer daran teilhaben und eventuell sogar davon profitieren möchte, muß damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.
Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...
PS: Meine öffentlichen GitHub-Repositories findet man hier - meine öffentlichen GitLab-Repositories finden sich dagegen hier.