Hinweise zum Update von service.monitor

Webapplikationen und Integrationen

Webapplikation /monitor

Die Webapplikation wird vollständig neu deployt. Die application.properties-Datei kann nachgenutzt und gemäß evtl. vorliegender Update-Hinweise ergänzt werden.

Webapplikation /monitor-analytics

Die Webapplikation wird vollständig neu deployt. Die application.properties-Datei kann nachgenutzt und gemäß evtl. vorliegender Update-Hinweise ergänzt werden.

map.apps Integration (Bundle)

Die neue Bundle-Version wird über den map.apps Manager hochgeladen.

Python APIs

Die Setup Python-API und die FME Python-API können in dem genutzten Python Environment über pip aktualisiert werden. In dem Beispiel unten wird zunächst das Python-Environment aktiviert. Danach kann die neue Version installiert werden. Zuletzt erfolgt die Ausgabe von Informationen des installierten Paketes. Die Ausgabe der Version dieses Kommandos muss mit der Version des Wheel-Packages übereinstimmen.

Aktualisierung der Setup Python API über pip (Linux)
#!/bin/sh
/etc/service.monitor/data/python/env/Scripts/activate.sh
pip install /etc/service.monitor/python/monitor_setup/monitor_setup-<VERSION>-py3-none-any.whl
pip show monitor_setup
Aktualisierung der FME Python API über pip (Linux)
#!/bin/sh
/etc/service.monitor/data/python/env/Scripts/activate.sh
pip install /etc/service.monitor/python/pipelines/pipelines-<VERSION>-py3-none-any.whl
pip show monitor_setup

In der Ausgabe des letzten Kommandos muss die gleich Version zu sehen sein, wie es der Dateiname der *.whl-Datei vorgibt.

Komponenten des Elasticsearch Stacks

Logstash-Pipelines

Die Pipeline-Dateien müssen aktualisiert oder in einem weiteren Verzeichnis Logstash zur Verfügung gestellt werden. Im letzteren Fall muss der geänderte Pfad in der pipelines.yml aktualisiert werden. Wird mit der Umgebungsvariablen PIPELINES_PATH gearbeitet, so muss deren Wert angepasst werden. Dies ist immer der Fall bei Installation unter Windows und NSSM Dienst-Erstellung.

Kibana: Space ct-monitor

Der default-Space ct-monitor muss nicht aktualisiert werden.

Durch Editierung der config.json der Setup API können andere Spaces als der Default-Space ct-monitor erstellt werden. Dazu wird in dem Abschnitt spaces / default die id und der name geändert.

Kibana: Dashboards, Diagramme, Index-Pattern

Die dem Produkt zugehörigen Dashboards, Diagramme und Index-Pattern müssen aktualisiert werden, wenn Anpassungen aus neuen Versionen sichtbar werden sollen. Bestehende Objekte werden beim Import überschrieben.

Kommando zur Aktualisierung von Kibana Dashboards und Diagrammen
#!/bin/sh
python -m monitor_setup -a import_dashboards -c /etc/service.monitor/data/setup/config.json

Durch diesen Aufruf werden alle Objekte des Ordners \resources\analytics\elasticsearch\kibana veröffentlicht.

Wenn Änderungen an den Dashboards durchgeführt wurden (neue Diagramme hinzugefügt, Diagrammanordnung geändert, etc.) dann gehen diese Änderungen beim Überschreiben verloren. Neu erstellte Diagramme als Teil der Visualize Library bleiben erhalten. Soll ein Überschreiben verhindert werden, empfiehlt sich der manuelle Import der Dashboards über die Kibana-Oberfläche, dort können Konflikte manuell behandelt werden.
Die hier genannten Objekte werden individuell im jeweiligen Kibana Space gespeichert, können also mehrfach in unterschiedlichen Spaces existieren.

Elasticsearch: Ingest Pipelines, Index Templates, Lifecycle Management Templates und Kickstart-Indizes

Die Ingest Pipelines und Templates definieren die Funktionsweise von service.monitor und ändern sich von Version zu Version. Unten sind die Änderungen detailliert aufgelistet. Grundsätzlich gilt: Wurden keine individuellen Änderungen an Objekten durchgeführt, kann die neue Version von service.monitor ganz normal installiert werden.

Wurden Änderungen durchgeführt, müssen diese manuell in die neue Version übertragen oder individuell abgewogen werden, onb die Änderungen übernommen werden sollen.

Typ Einschätzung

Ingest Pipelines

Customizations sollten übertragen werden, Pipelines werden aus fachlichen Gründen angepasst.

Index Templates

Änderungen durch das Produkt sollten übernommen werden.

Index Lifecycle Policies

Individuelle Änderungen am ILM haben zumeist fachliche Gründe (schnelleres Löschen von Daten, Erzeugen von größeren Indizes)

Kickstart Indizes

Änderungen durch das Produkt sollten übernommen werden.

Alle Objekte, die zu Elasticsearch gehören (Ingest Pipelines, Index Templates, Lifecycle Management Templates und die Kommandos zum Erstellen der initialen service.monitor Indizes), werden bei der Nutzung der Setup API über den Wert import_objects importiert.

Kommando zur Aktualisierung von Elasticsearch-Objekten
#!/bin/sh
python -m monitor_setup -a import_objects -c /etc/service.monitor/data/setup/config.json

Durch diesen Aufruf werden alle Objekte des Ordners \resources\analytics\elasticsearch\ingest und \resources\analytics\elasticsearch\dev-console veröffentlicht.

Wenn Änderungen an Objekten durchgeführt wurden, dann gehen diese Änderungen beim Überschreiben verloren. Neu erstellte Objekte bleiben erhalten. Soll ein Überschreiben verhindert werden, müssen ein Abgleich zwischen Produkt-Objekten und angepassten Objekten durchgeführt werden (zum Beispiel insbesondere bei Pipelines).

Kickstart Indizes

service.monitor enthält Kommandos zum initialen Anlegen von Indices. In einem Update-Szenario liegen diese also schon im System vor oder wurden durch das Lifecycle-Management auf read-only gesetzt oder entfernt. Das erneute Ausführen des Kommandos führt zwar zu einer Fehlermeldung von Elastic (z.B. alias [ct-arcgis-logfile] has more than one write index), stoppt jedoch nicht den Update-Prozess.

Detaillierte Änderungsübersicht Elasticsearch-Objekte

In dieser Übersicht werden Anpassungen an den genannten Objekt-Typen über die Versionen (ab Version 4.7) des Produktes protokolliert:

Ingest Pipelines

Version 4.8

  • keine Änderungen

Version 4.9

  • neue Ingest Pipelines: ct-monitor-arcgis-logfile-base, ct-monitor-arcgis-logfile, ct-monitor-arcgis-logfile-portal

  • ct-monitor-arcgis-parse-servicename aktualisiert

  • ct-monitor-fme-log aktualisiert

Index Templates

Version 4.8

  • keine Änderungen

Version 4.9

  • keine Änderungen

Index Lifecyle Policies

Version 4.8

  • keine Änderungen

Version 4.9

  • ct-fme-jobroutes-policy nutzt kein Rollover mehr