EinführungDieses Dokument beschreibt die Möglichkeiten das jtel System im Rahmen eines Betriebskonzeptes zu monitoren und in eine Alarmierung einzubinden, bzw. eine Telemetrie. Betreffend Architektur sowie Aufbau des Systems wird auf andere Dokumente verwiesen sowie auf das konkrete Projekt-Pflichtenheft. GenerellEs gibt viele Tools die genutzt werden können, um Systeme im laufenden Betrieb zu monitoren. jtel setzt auf das Tool Nagios, wobei durchaus andere Tools genutzt werden können. Im Einzelfall fragen Sie bei uns nach. Sollte es gewünscht sein, dass ein Monitoring für Ihr System aufgebaut wird, benötigt jtel in der Systemarchitektur einen zusätzlichen Server, auf dem der Nagios Server installiert wird. Haben Sie bereits einen Nagios Server, so kann dieser verwendet werden. Auf den einzelnen Servern des jtel Systems wird ein Nagios Client mit entsprechenden Plug-Ins installiert. Die Einrichtung erfolgt auf Dienstleistungsbasis. Generell sollte nicht mehr als ein Tag hierfür nötig sein. Desweiteren besteht die Möglichkeit, einen sogenannten End-to-End Test regelmäßig durchzuführen. Mit diesem Test kann sichergestellt werden, dass die Telefonie-Wege des Systems auch tatsächlich durchgehend funktionieren, indem ein externes System (bei jtel) das System auf einer Testrufnummer anruft und sich wiederrum auf ein externes System bei jtel verbinden lässt. Prometheus und Grafanajtel setzt auf das Prometheus-System, um Telemetrie-Daten zu gewinnen und Grafana um diese anzuzeigen. Andere Monitoring-Systeme können auf Wunsch als Projekt implementiert werden. Das Monitoring System wird so konfiguriert, dass diverse Punkte im System überwacht werden. Hierbei werden Messewerte wie RAM und CPU-Auslastung beobachtet, außerdem werden Einzelprozesse beobachtet, ob sie auch tatsächlich laufen. Es ist zu empfehlen das Monitoring System auf eine separate physikalische Maschine zu installieren. Sollte eine Schwelle überschritten werden oder ein Einzelteil des Systems nicht reagieren, wird ein Alarm ausgelöst. Dieser Alarm kann per SMS oder E-Mail versendet werden. Generell gilt: Der erste Fehlversuch einen Systemteil zu erreichen, sollte nicht unmittelbar einen Alarm auslösen, sondern der Test sollte eine kurze Zeit später wiederholt stattfinden. Erst bei zweifachem Fehlversuch sollte alarmiert werden. ÜberwachungJe nach System werden die Dienste, die es zu überwachen gilt, unterschiedlich sein. Die Auswahl der richtigen Dienste erfolgt anhand der entsprechend installierten Rollen. Siehe auch https://wiki.jtel.de/display/JPW/Installation. Um die eingesetzten Dienste zu überwachen, werden mehrere sogenannte „Exporter“ installiert. Diese liefern Telemetriedaten an Prometheus und werden regelmäßig abgefragt. So ist es möglich, eine Historie der Telemetriedaten in Grafana zu betrachten TelemetrieBei Telemetrie werden Werte gemessen. Werte können eine gewisse Warn- oder Fehler-Schwelle überschreiten, bei den eine Aktion ausgelöst wird – also eine Warnung oder Fehlermeldung generiert. Laufdende DiensteBei laufenden Diensten wird beschrieben welche Dienste laufen müssen damit eine gewisse Funktion gewährleistet ist. Diese Messung ist binär: läuft ein Dienst nicht, wird ein Fehler ausgelöst, da dann eine Funktion beeinträchtigt ist. Bitte beachten Sie, dass bei Installationen bei den gewisse Komponenten nicht laufen, manche Alarmierungen deaktiviert werden. Beispielsweise wurde der E-Mail-Dienst nicht lizenziert, so wird dieser Alarm deaktiviert. In den nachfolgenden Tabellen wird hier kein besonderer Alarm dokumentiert – wenn der Dienst nicht läuft wird stets ein Fehler per E-Mail und falls angebunden SMS ausgelöst. Alle RollenDiese Monitorpunkte sollten auf allen Systemen eingerichtet werden. TelemetrieMonitorpunkt | Messwert | Aktion bei Fehler | Kommentar | Ping Test | Ping erfolgreich | SMS + E-Mail | Maschine ist erreichbar. | Festplatte Betriebssystem + Daten | 80% 90% | E-Mail SMS + E-Mail | Bei Erreichen der Festplattenkapazität ist damit zu rechnen, dass einzelne Komponenten nicht mehr korrekt funktionieren. | CPU | > 80% über 2 Minuten 100% über eine Minute | E-Mail SMS + E-Mail | Das System ist überlastet. Ein Prozessteil funktioniert möglicherweise nicht korrekt. | Zeitsynchronisierung
| Zeit, Vergleich mit NTP Server, Delta < 2 Sekunden | SMS + E-Mail | Zeitsynchronisierungsunterschiede zwischen den Systemen können zu Fehlern in der Berechnung der Queues und Statistik führen. |
Laufende DiensteDienst | Messwert | Aktion bei Fehler | Kommentar | ntp Dienst (Windows) | Dienst läuft | SMS + E-Mail | Der Zeitsynchronisationsdienst läuft. | chronyd (Linux) | Dienst läuft | SMS + E-Mail | Der Zeitsynchronisationsdienst läuft. |
Rolle TELTelemetrieMonitorpunkt | Messwert | Aktion bei Fehler | Kommentar | error.log | Wächst zu schnell (> 10kB pro Sekunde) | SMS + E-Mail | Wächst der error.log schnell, so liegt womöglich ein Systemfehler vor. | error.log | DB Verbindungsfehler (ODBC Fehler) | SMS + E-Mail | Die Datenbankkonnektivität ist gestört. |
Laufende DiensteDienst | Programm | Kommentar | Telefonieserver | robot5.exe | Wenn dieser Prozess nicht läuft, ist die Telefonie nicht erreichbar. | SIP / RTP Dienst | giHal.exe | Wenn dieser Prozess nicht läuft, ist die Telefonie nicht erreichbar. | SIP Registrierungsdienst | giAcu.exe | Wenn dieser Prozess nicht läuft, wird der SIP Trunk zu TK-Anlage nicht registriert. Beachte: dieser Dienst ist nicht bei allen Installationen erforderlich. | Platform UDP Listener | javaw.exe (platform-UDP-listener-1.0-jar-with-dependencies.jar) | Wenn dieser Prozess nicht läuft, werden keine Nachrichten zu im Telefonie-Server laufenden Calls an den Rest der Installation übermittelt. Somit findet beispielsweise nur eine Teilweise- Aktualisierung der Daten im Agent-Home statt. |
Rolle LBTelemetrieMonitorpunkt | Messwert | Aktion bei Fehler | Kommentar | Port 80 TCP | Port ist erreichbar | SMS + E-Mail | Der Load-Balancer ist über http erreichbar. | Port 443 TCP | Port ist erreichbar | SMS + E-Mail | Der Load-Balancer ist über https erreichbar. | http Aufruf auf http://(ip)/admin | 200 OK inkl Web-Inhalt | SMS + E-Mail | Die Web-Anwendung sowie SOAP Schnittstellen sind über http erreichbar. | http Aufruf auf https://(ip)/admin | 200 OK inkl Web-Inhalt | SMS + E-Mail | Die Web-Anwendung sowie SOAP Schnittstellen sind über https erreichbar. |
Laufende DiensteDienst | Programm | Kommentar | Load Balancer Dienst | haproxy | Wenn dieser Prozess nicht läuft, ist die Webanwendung bzw. SOAP Schnittstelle der Lösung nicht erreichbar. |
Rolle WEBTelemetrieMonitorpunkt | Messwert | Aktion bei Fehler | Kommentar | Port 8080 TCP | Port ist erreichbar | SMS + E-Mail | Die Webanwendung bzw. SOAP Schnittstelle ist erreichbar. | http Aufruf auf http://(ip):8080/admin | 200 OK inkl Web-Inhalt | SMS + E-Mail | Die Web-Anwendung sowie SOAP Schnittstelle ist erreichbar. |
Laufende DiensteDienst | Programm | Kommentar | Web Server Dienst | wildfly | Wenn dieser Prozess nicht läuft, ist der Webserver nicht erreichbar. |
Rolle DBTelemetrieMonitorpunkt | Messwert | Aktion bei Fehler | Kommentar | MySQL Master | Alarmschwelle bei 30 Sekunden für lang andauernde Queries auf der Master-Datenbank. | SMS + E-Mail | Einzelne Datenbankqueries benötigen keine überproportional lange Zeit. | MySQL Slave | Keine Fehler, Seconds behind Master ist gering (< 5 Sekunden). | SMS + E-Mail | Die Slave Datenbank repliziert korrekt. |
Laufende DiensteDienst | Programm | Kommentar | MySQL Datenbank Server | mysqld | Wenn dieser Prozess nicht läuft, ist die Datenbank nicht erreichbar |
Rolle RESTDienst / Wo Installiert | Programm | Kommentar | jrest REST Service /
Rolle TEL oder einer der Linux Server | javaw.exe (jtel-jrest-1.0.jar)
jrest (linux)
| Wenn dieser Prozess nicht läuft, ist der jtel REST Service nicht erreichbar. |
TK- und Presence ConnectorenDienst / Wo Installiert | Programm | Kommentar | Presence Connector (Teams, NFON, Cisco und andere) / Rolle TEL | javaw.exe (jtel-system-presence-aggregator-1.0.jar) | Wenn dieser Prozess nicht läuft, werden keine Presence-Daten mehr von Teams sowie die TK-Anlage zum jtel System übermittelt. Auch die Rückübermittlung der Daten an Teams ist gestört. | Innovaphone PBX Connector / Rolle TEL | JTELInnovaphonePBXService.exe | Wenn dieser Prozess nicht läuft, werden keine Presence-Daten mehr von der TK-Anlage zum jtel System übermittelt. Die Funktion Abheben ist gestört. Die Erkennung, ob ein Anruf weitervermittelt wurde, ist gestört. | TAPI PBX Connector / Rolle TEL | jtelTAPIMonitorService.exe | Wenn dieser Prozess nicht läuft, werden keine Presence-Daten mehr von der TK-Anlage zum jtel System übermittelt. Die Funktion Abheben ist gestört. Die Erkennung, ob ein Anruf weitervermittelt wurde, ist gestört. | STARFACE v2 Connector / Rolle TEL | jtelStarface6v2SOAPWindowsService.exe | Wenn dieser Prozess nicht läuft, werden keine Calls zum jtel System durchgestellt. Es werden auch keine Presence-Daten mehr von der TK-Anlage zum jtel System übermittelt. |
E-Mail DiensteDienst / Wo Installiert | Programm | Kommentar | E-Mail (IMAP) / Rolle TEL | jtelIMAPMailService.exe | Wenn dieser Prozess nicht läuft, werden E-Mails nicht von IMAP Postfächern abgeholt und verarbeitet. | E-Mail (Exchange) / Rolle TEL | jtelEWSMailService.exe | Wenn dieser Prozess nicht läuft, werden E-Mails nicht von Exchange-Server-Postfächern abgeholt und verarbeitet. |
|