Von Version < 1.22 >
bearbeitet von gru
am 30.04.2020, 06:04
Auf Version < 1.14 >
bearbeitet von awa
am 20.05.2019, 09:59
< >
Änderungskommentar: Es gibt keinen Kommentar für diese Version

Zusammenfassung

Details

Seiteneigenschaften
Dokument-Autor
... ... @@ -1,1 +1,1 @@
1 -XWiki.gru
1 +XWiki.awa
Inhalt
... ... @@ -5,13 +5,13 @@
5 5  {{formcycle/}} bietet für das Monitoring des Anwendungsstatus je Server-Typ eine entsprechende Monitoring-Bean an. Diese kann über JMX mit einem dazugehörigen Werkzeug (z.B. //JConsole//) angebunden und abgefragt werden. Die Namen unter der die entsprechenden Beans registriert sind lauten hierbei:
6 6  
7 7  ; Frontend-Server
8 -: de.xima.fc:type=FSMonitor,qualifier=<Kontext-Name>
8 +de.xima.fc:type=FSMonitor,qualifier=<Kontext-Name>
9 9  ; Master-Server
10 10  : de.xima.fc:type=MSMonitor,qualifier=<Kontext-Name>
11 11  
12 -Der //qualifier// ist hierbei für eine Parallel-Installation der entsprechenden Server notwendig und entspricht dem Kontext-Namen der Anwendung. Dieser ist hierbei standardmäßig der Namen der war-Datei, kann jedoch über den Kontext-Parameter //XFC_CONTEXT_NAME// innerhalb der //web.xml// angepasst werden. Ebenfalls wird während des Starts des entsprechenden Servers der konkret verwendete Name ausgeloggt. Hierfür kann es notwendig sein, die [[Logging-Einstellungen>>doc:.UserInterface.Logging]] anzupassen. Jede Bean besitzt zudem unterschiedliche Monitoring-Attribute, welche in folgenden Übersichten dargestellt sind:
12 +Der //qualifier// ist hierbei für eine Parallel-Installation der entsprechenden Server notwendig und entspricht dem Kontext-Namen der Anwendung. Dieser ist hierbei standardmäßig der Namen der *.war-Datei, kann jedoch über den Kontext-Parameter //XFC_CONTEXT_NAME// innerhalb der //web.xml// angepasst werden. Ebenfalls wird während des Starts des entsprechenden Servers der konkret verwendete Name ausgeloggt. Jede Bean besitzt zudem unterschiedliche Monitoring-Attribute welche in folgenden Übersichten dargstellt sind:
13 13  
14 -{{table caption="Übersicht über die Eigenschaften des MSMonitor (Master-Server)" dataTypeAlpha="0" preSort="0-asc"}}
14 +{{table caption="Übersicht über Eigenschaften MSMonitor (Master-Server)" dataTypeAlpha="0" preSort="0-asc"}}
15 15  |= Attribut|=Bedeutung|= Mögliche Werte
16 16  |running|Gibt an, ob der {{mserver/}} aktiv ist|true,false
17 17  |db_connected|Gibt an, ob der {{mserver/}} erfolgreich eine Datenbankverbindung herstellen konnte.|true,false
... ... @@ -25,7 +25,6 @@
25 25  AUTHENTICATING, WAIT_FOR_CONNECTION
26 26  |fs_disconnected_count| Gibt die Anzahl der nicht verbundenen {{fserver case="nom" number="plural"/}} an.|Zahlen größer/gleich 0
27 27  |fs_connected_count| Gibt die Anzahl der verbundenen {{fserver case="nom" number="plural"/}} an.|Zahlen größer/gleich 0
28 -|failed_login_count|Gibt die Anzahl der aktuell registrierten fehlerhaften Login-Versuche aus, also wie viele Login-Name sich Cache für die fehlerhaften Versuche befinden.|Eine Zahl größer oder gleich 0.
29 29  {{/table}}
30 30  
31 31  {{table dataTypeAlpha="0" preSort="0-asc" fullwidth="true" caption="Übersicht über die Eigenschaften des FSMonitor (frontend-Server)"}}
... ... @@ -35,17 +35,14 @@
35 35  |status|Gibt den konkreten Verbindungsstatus des {{fserver case="gen"/}} an.|CONNECTED,NOT_CONNECTED,ERROR,
36 36  RECONNECTING,DISCONNECTING,CONNECTING,
37 37  AUTHENTICATING, WAIT_FOR_CONNECTION
38 -|failed_login_count|Gibt die Anzahl der aktuell registrierten fehlerhaften Login-Versuche aus, also wie viele Login-Name sich Cache für die fehlerhaften Versuche befinden.|Eine Zahl größer oder gleich 0.
39 39  {{/table}}
40 40  
41 41  == JSON-REST-Schnittstelle ==
42 42  
43 -Die JSON-Schnittstelle ist seit Version 6.0.0 zu Gunsten einer separaten Jolokia-Installation entfernt worden. Die für das Monitoring verwendeten Beans sind nachwievor verfügbar. Die JSON-Schnittstelle des Monitorings erlaubte nur lesende Zugriff und war nur über den Anwendungsserver aufrufbar (localhost/127.0.0.1). Falls dies gewünscht ist müsste der Zugriff innerhalb der Jolokia Anwendung konfiguriert werden, weiter Infomationen finden Sie [[hier>>https://jolokia.org/reference/html/security.html#d0e3128||rel=" noopener noreferrer" target="_blank"]].
41 +Die für das Monitoring verwendeten Beans sind ebenfalls über eine bereitgestellte JSON-Schnittstelle aufrufbar. Ein möglicher Aufruf sieht hierbei zum Beispiel wie folgt aus:
44 44  
45 -Ein möglicher Aufruf, nach erfolgter Installation von Jolokia, sieht hierbei zum Beispiel wie folgt aus:
46 -
47 47  {{info}}
48 -[[http:~~/~~/localhost/jolokia/read/de.xima.fc:type=MSMonitor,qualifier=formcycle>>http://localhost/formcycle/monitoring/read/de.xima.fc:type=MSMonitor,qualifier=formcycle]]
44 +http://localhost/formcycle/monitoring/read/de.xima.fc:type=MSMonitor,qualifier=formcycle
49 49  {{/info}}
50 50  
51 51  JSON-Antwort:
... ... @@ -52,33 +52,43 @@
52 52  
53 53  {{code language="JSON"}}
54 54  {
55 - "request": {
56 - "mbean": "de.xima.fc:qualifier=formcycle,type=MSMonitor",
57 - "type": "read"
58 - },
59 - "value": {
60 - "running": true,
61 - "failed_login_count": 0,
62 - "fs_active": {
63 - "localhost": true
64 - },
65 - "db_connected": true,
66 - "fs_connected_count": 1,
67 - "fs_connected": {
68 - "localhost": true
69 - },
70 - "fs_disconnected_count": 0,
71 - "fs_status": {
72 - "localhost": "CONNECTED"
73 - }
74 - },
75 - "timestamp": 1579186291,
76 - "status": 200
51 +"timestamp":1440603508,
52 +"status":200,
53 +"request":{
54 + "mbean":"de.xima.fc:qualifier=formcycle,type=MSMonitor",
55 + "type":"read"
56 +},
57 +"value":{
58 + "fs_active":{
59 + "sas":true,
60 + "localhost":false,
61 + "mko":true
62 + },
63 + "fs_connected":{
64 + "sas":false,
65 + "localhost":false,
66 + "mko":false
67 + },
68 + "db_connected":true,"fs_status":{
69 + "sas":"ERROR",
70 + "localhost":"NOT_CONNECTED",
71 + "mko":"ERROR"
72 + },
73 + "fs_disconnected_count":3,
74 + "fs_connected_count":0,
75 + "running":true
76 + }
77 77  }
78 78  {{/code}}
79 79  
80 -Weitere Informationen zur Abindung des Framework [[Jolokia>>url:https://jolokia.org/||rel="__blank"]] und eine genauere Dokumentation finden sie [[hier>>url:https://jolokia.org/reference/html/||rel="__blank"]].
81 81  
81 +Wie erkennbar ist, befindet sich unter dem Kontext der Anwendung das Servlet //../monitoring// welches die eigentliche Interpretation der Beans und deren Aufbereitung in JSON realisiert. Hierfür kommt das Framework [[Jolokia>>url:https://jolokia.org/||rel="__blank"]] zum Einsatz, sodass dieses Servlet entsprechend konfigurierbar und über verschiedene Aufrufe benutzbar ist. Eine genauere Dokumentation hierfür finden sie [[hier>>url:https://jolokia.org/reference/html/||rel="__blank"]].
82 +
83 +{{warning}}
84 +Es ist zu beachten, dass die JSON-Schnittstelle des Monitorings nur lesende Zugriffe erlaubt und nur über den Anwendungsserver aufrufbar ist! (localhost/127.0.0.1)
85 +{{/warning}}
86 +
87 +
82 82  == Nagios-Anbindung ==
83 83  
84 84  Eine Anbindung der Nagios-Monitoring-Anwendung erfolgt über die beschriebene JSON-Schnittstelle. Hierfür muss das Nagios-Plugin [[jmx4perl>>url:http://search.cpan.org/~~roland/jmx4perl/||rel="__blank"]] installiert werden. Dieses erlaubt es Nagios das JSON zu interpretieren und entsprechende Abfragen aufzubauen. Eine genauere Installations-Dokumentation hierfür finden Sie [[hier>>url:https://jolokia.org/tutorial.html||rel="__blank"]]. Anschließend ist es möglich mit dem entsprechenden command des Plugins die Abfragen an die JSON-Schnittstelle zu formulieren.
... ... @@ -90,7 +90,7 @@
90 90  {{/warning}}
91 91  
92 92  {{panel title="Command" fullwidth="true" initial="hidden" triggerable="true"}}
93 -{{code language="none"}}
99 +{{code}}
94 94  define command{
95 95   command_name check_jmx4perl
96 96   command_line check_jmx4perl --url $ARG1$ --mbean $ARG2$ --attribute $ARG3$ $ARG4$
... ... @@ -101,7 +101,7 @@
101 101  {{panel title="Service-Definitionen" fullwidth="true" initial="hidden" triggerable="true"}}
102 102  Abfrage der Anzahl der am {{mserver case="dat"/}} nicht verbundenen {{fserver number="plural"/}}. Ist diese größer/gleich 1, erfolgt eine Warnung. Ist diese ferner größer/gleich 2, wird diese als kritisch im Nagios interpretiert:
103 103  <br>
104 -{{code language="none"}}
110 +{{code}}
105 105  define service{
106 106   use generic-service
107 107   host_name localhost
... ... @@ -112,7 +112,7 @@
112 112  {{/panel}}
113 113  
114 114  {{panel title="Abfrage des Datenbank-Verbindungsstatus des {{mserver case='gen'/~}~}" fullwidth="true" initial="hidden" triggerable="true"}}
115 -{{code language="none"}}
121 +{{code}}
116 116  define service{
117 117   use generic-service
118 118   host_name localhost
... ... @@ -123,7 +123,7 @@
123 123  {{/panel}}
124 124  
125 125  {{panel title="Abfrage, ob {{fserver/~}~} localhost mit {{mserver case='dat'/~}~} verbunden ist" fullwidth="true" initial="hidden" triggerable="true"}}
126 -{{code language="none"}}
132 +{{code}}
127 127  define service{
128 128   use generic-service
129 129   host_name localhost
... ... @@ -134,7 +134,7 @@
134 134  {{/panel}}
135 135  
136 136  {{panel title="Abfrage an {{fserver/~}~}, ob dieser erfolgreich mit einem {{mserver/~}~} verbunden ist" fullwidth="true" initial="hidden" triggerable="true"}}
137 -{{code language="none"}}
143 +{{code}}
138 138  define service{
139 139   use generic-service
140 140   host_name localhost
... ... @@ -150,11 +150,11 @@
150 150  
151 151  Eine weitere Möglichkeit um die Anbindung von Nagios von einem anderen Server aus zu ermöglichen, ist der parallele Betrieb von Jolokia und {{formcycle/}} bzw. dem {{fserver case="dat"/}}. Hierfür stellt Jolokia bereits einen in einer eigenen Anwendung gepackten //JavaEE-Agent// zur Verfügung. ([[Dokumentation>>url:https://jolokia.org/reference/html/agents.html#agents-war||rel="__blank"]], [[Download>>url:https://jolokia.org/download.html||rel="__blank"]])
152 152  
153 -Dieser besitzt standardmäßig keine Limitierung von Leseoperationen und Steueranweisungen und ist ebenso nicht bezüglich aufrufender Server bzw. IP-Adressen beschränkt. Da dies jedoch ein potentielles Sicherheitsrisiko darstellt, wird es ausdrücklich empfohlen, diese entsprechend der eigenen Server-Topologie und Anforderungen zu konfigurieren. Hierbei ist zum Beispiel anzuraten, den Zugriff lediglich auf den Nagios-Server zu beschränken. Eine ausführliche Dokumentation der Sicherheitsmechanismen von Jolokia finden Sie [[hier>>url:https://jolokia.org/reference/html/security.html||rel="__blank"]].
159 +Dieser besitzt standardmäßig keine Limitierung von Lese-Operationen und Steueranweisungen und ist ebenso nicht bezüglich aufrufender Server bzw. IP-Adressen beschränkt. Da dies jedoch ein potentielles Sicherheitsrisiko darstellt, wird es ausdrücklich empfohlen, diese entsprechend der eigenen Server-Topologie und Anforderungen zu konfigurieren. Hierbei ist zum Beispiel anzuraten, den Zugriff lediglich auf den Nagios-Server zu beschränken. Eine ausführliche Dokumentation der Sicherheitsmechanismen von Jolokia finden Sie [[hier>>url:https://jolokia.org/reference/html/security.html||rel="__blank"]].
154 154  
155 155  Entsprechend des Betriebs einer parallelen Jolokia-Installation ändert sich beispielhaft die Überprüfung der Verbindung zum {{fserver case="dat"/}} //localhost //wie folgt:
156 156  
157 -{{code language="none"}}
163 +{{code}}
158 158  define service{
159 159   use generic-service
160 160   host_name fc-test
Copyright 2000-2024