Erkennung von NGINX-Webservern
NGINX ist ein Open Source-Webserver mit einem Lastenausgleichsmodul. Discovery identifiziert den Webserver und Informationen in Bezug auf das Lastenausgleichsmodul.
Discovery identifiziert die Serversoftware NGINX mit dem folgenden Prozess:
- Die NGINX-Prozessklassifizierung erkennt einen laufenden Prozess, der die folgenden Kriterien während der Durchsuchung eines Linux-Servers erfüllt:
- Name beginnt mit „nginx“
- Name enthält „master“
- Wenn es eine Übereinstimmung gibt:
- In der Tabelle „NGINX-Webserver“ [cmdb_ci_nginx_web_server] wird ein Datensatz erstellt.
- In der CI-Beziehungstabelle [cmdb_rel_ci] wird für einen Linux-Server (Linux Server [cmdb_ci_linux_server]) und für einen NGINX-Webserver (NGINX Web Server [cmdb_ci_nginx_web_server]) eine Beziehung vom Typ „Wird ausgeführt auf“ erstellt.Die folgenden beiden Probes werden ausgelöst:Der Sensor in der ServiceNow-Instanz analysiert das Nutzlastergebnis und füllt die CMDB.
- NGINX – Version: Diese Probe enthält ein Bourne-Shell-Skript. Er bestimmt die Version von NGINX und füllt die Tabelle „NGINX-Webserver“ [cmdb_ci_nginx_web_server].
- NGINX – Get Configuration: Diese Probe enthält ein Bourne-Shell-Skript und ein Argument, das den Pfad der NGINX-Konfigurationsdatei bestimmt. Die Probe identifiziert Konfigurationsparameter basierend auf Schlüsselwörtern in der Konfigurationsdatei und gibt sie als einzelnes Nutzlastergebnis zurück.
Zur Erkennung eines NGINX-Webservers müssen die folgenden Voraussetzungen erfüllt sein:
- NGINX ist auf dem Server installiert und wird ausgeführt.
- Der MID Server hat Zugriff auf die NGINX-Konfigurationsdatei, die standardmäßig /
etc/nginx/nginx.conflautet.
Anforderungen
Für NGINIX-Server:
- NGINX ist auf dem Server installiert und wird ausgeführt.
- Der MID Server hat Zugriff auf die NGINX-Konfigurationsdatei, die standardmäßig /etc/nginx/nginx.conf lautet.
- Aktivieren Sie SSH-Befehle (Secure Shell), um die folgenden zugeordneten Elemente zu identifizieren:
- NGINX - Version
- NGINX - Get Configuration
Die folgenden Probes benötigen Ausführungsrechte, um Befehle auszuführen:
| Probe | Befehle |
|---|---|
| Nginx – Version | nginx |
| Nginx – Get Configuration | echo, sed, httpd, cut, grep, egrep (im Bourne-Shell-Skript) |
Probes und Sensoren
Discovery identifiziert die Serversoftware NGINX mit dem folgenden Prozess:
- Der Prozessklassifizierer „Nginx“ erkennt einen laufenden Prozess, der während der Erkundung eines UNIX-Servers die folgenden Kriterien erfüllt:
- Der Name des Prozesses beginnt mit nginx.
- Der Name des Prozesses enthält master.
- Wenn es eine Übereinstimmung gibt:
- In der Tabelle „Webserver“ [cmdb_ci_web_server] wird ein Datensatz erstellt.
- In der Tabelle „CI-Beziehung“ [cmdb_rel_ci] wird für den Linux-Server (Linux-Server [cmdb_ci_linux_server]) und für den Webserver (Webserver [cmdb_ci_web_server]) eine Beziehung vom Typ Wird ausgeführt auf erstellt.
- Die folgenden beiden Probes werden ausgelöst:
- Nginx – Version: Diese Probe enthält ein Bourne-Shell-Skript. Er bestimmt die Version von NGINX und füllt die Tabelle „Webserver“ [cmdb_ci_web_server].
- Nginx – Get Configuration: Diese Probe enthält ein Bourne-Shell-Skript und ein Argument, das den Pfad der NGINX-Konfigurationsdatei bestimmt. Die Probe identifiziert Konfigurationsparameter basierend auf Schlüsselwörtern in der Konfigurationsdatei und gibt sie als einzelnes Nutzlastergebnis zurück.
- Der Sensor in der ServiceNow-Instanz verarbeitet die Nutzlast und füllt die CMDB.
Erfasste Daten
Discovery erstellt oder aktualisiert einen CMDB-Datensatz, wenn ein laufender NGINX-Prozess erkannt wird. Die folgenden Daten werden erfasst.
| Tabellenname | Feld- und Bezeichnungsname | Probe |
|---|---|---|
| Name | cmdb_ci_lb_appl [name] | Nginx– Get Configuration |
| IP-Adresse | cmdb_ci_lb_appl [ip_address] | Nginx– Get Configuration |
| Zuletzt erkannt | cmdb_ci_lb_appl [last_discovered] | Nginx– Get Configuration |
| Version | cmdb_ci_lb_appl [version] | Nginx– Version |
| Name | cmdb_ci_lb_pool_member [name] | Nginx– Get Configuration |
| Zuletzt erkannt | cmdb_ci_lb_pool_member [last_discovered] | Nginx– Get Configuration |
| IP-Adresse | cmdb_ci_lb_pool_member [ip_address] | Nginx– Get Configuration |
| Lastenausgleich | cmdb_ci_lb_pool_member [load_balancer] | Nginx– Get Configuration |
| Vollqualifizierter Domänenname | cmdb_ci_lb_pool_member [fqdn] | Nginx– Get Configuration |
| Port | cmdb_ci_lb_pool_member [port] | Nginx– Get Configuration |
| Zuletzt erkannt | cmdb_ci_lb_service [last_discovered] | Nginx– Get Configuration |
| IP-Adresse | cmdb_ci_lb_service [ip_address] | Nginx– Get Configuration |
| Name | cmdb_ci_lb_service [name] | Nginx– Get Configuration |
| Lastenausgleich | cmdb_ci_lb_service [load_balancer] | Nginx– Get Configuration |
| Eingabe-URL | cmdb_ci_lb_service [input_url] | NGINX - Get Configuration |
Beziehungen
In die Tabelle [cmdb_rel_ci] werden die folgenden Beziehungen eingefügt:
- Die Datensätze in der Tabelle cmdb_ci_lb_appl werden in den Datensätzen der Tabelle cmdb_ci_web_server ausgeführt.
- Die Datensätze in der Tabelle cmdb_ci_lb_service verwenden die Datensätzen der Tabelle cmdb_ci_lb_pool.
- Die Datensätze in der Tabelle cmdb_ci_pool werden von den Datensätzen der Tabelle cmdb_ci_service verwendet.
- Die Datensätze in der Tabelle cmdb_ci_pool sind Mitglieder der Tabelle cmdb_ci_pool_member.
- Die Datensätze in der Tabelle cmdb_ci_pool_member sind Mitglieder der Tabelle cmdb_ci_pool.