Docker Virtualisierung
Discovery Verwendet Docker PatternDient zum Erfassen von Daten zu bestimmten Objekten in einem Docker Engine, wird auf ausgeführt Linux Host.
Die ServiceNow® Die Plattform unterstützt die Discovery von Docker Release 1.11.0 oder höher.
Voraussetzungen
- Anwenderberechtigungen
- Der Anwender, dessen Anmeldeinformationen zum Ausführen von Docker verwendet werden Discovery Muss über Berechtigungen verfügen, die durch eine der folgenden Methoden definiert sind:
- Geben Sie einen Anwender mit erweiterten Rechten für die Ausführung von Befehlen an, da der Docker-Daemon als Stammanwender ausgeführt wird. Das Docker-Muster unterstützt die Verwendung von Privilegierte Befehle , Z. B. sudoOder pbrun, Um als Stammanwender auszuführen.
- Einer Gruppe mit dem Namen zugewiesen docker , Das über spezielle Berechtigungen für die Ausführung von Docker-Befehlen verfügt. Anweisungen zum Einrichten einer Gruppe finden Sie in der Dokumentation unter Docker .
- Neueste Muster
- Stellen Sie die neueste Anwendung für Discovery- und Servicezuordnungsmuster in bereit ServiceNow Store.
Docker-Einschränkungen und Überlegungen
- Der erste Discovery Der Prozessscan kann eine Anwendung in einem Container identifizieren und korrekt klassifizieren. Nachfolgende Probes, die zum Erkunden dieser Anwendung gestartet wurden, können jedoch im Container nicht angezeigt werden und können keine Details zur Anwendung zurückgeben.
- Discovery Scannt alle gefundenen Container, einschließlich inaktiver Container, was sich verlangsamen kann Discovery. Sie sollten Container löschen, die nicht ausgeführt werden.
- Vor der Einstellung sn_itom_pattern.manifest_digest_image_id Eigenschaft bis Wahr Und Discovery wird ausgeführt: Duplikat verhindern Docker Datensätze, die durch Löschen aller erstellt werden Docker Bilddatensätze.
- Pro Computer ist nur eine Docker-Engine zulässig (entweder auf einem physischen oder virtuellen Computer).
Von Discovery während der horizontalen Erkennung erfasste Daten
| Tabelle und Felder | Beschreibung |
|---|---|
| Docker-Engine [cmdb_ci_docker_engine] | |
| Name [Name] | Speichert Informationen zu Instanzen der Docker-Engine. |
| BS-Bogen [os_Arch] | |
| GIT-Commit [git_Commit] | |
| Build-Datum [Build_date] | |
| Version [Version] | |
| API-Version [api_Version] | |
| Go-Version [GO_Version] | |
| Ist geclustert [is_clustered] | |
| Laufender Prozess [running_Process] | |
| Prozessbefehl wird ausgeführt [running_Process_command] | |
| Schlüsselparameter für laufenden Prozess [running_process_key_parameters] | |
| Docker-Image [cmdb_ci_docker_image] | |
| Name [Name] | Speichert Informationen zur global eindeutigen Darstellung von Docker-Images. |
| Bild-ID [image_ID] | |
| Image-Digest [image_digest] | |
| Größe (Byte) [size_byte] | |
| Bild erstellt [Image_created_at] | |
| Lokales Docker-Bild [cmdb_ci_docker_local_image] | |
| Name [Name] | Speichert lokale Instanzen von Docker-Images. |
| Bild-ID [image_ID] | |
| Docker-Image-Tag [cmdb_ci_docker_image_tag] | |
| Name [Name] | Speichert Tags aus lokalen Docker-Images. |
| Bild-ID [image_ID] | |
| Repository [Repository] | |
| Tag [Tag] | |
| Docker-Container [cmdb_ci_docker_container] | |
| Name [Name] | Speichert Docker-Container, die auf dem Host gefunden wurden. In Fällen, in denen doppelte Datensätze erstellt werden, werden Deduplizierungsaufgaben angezeigt, sobald die Discovery ausgeführt wird. Informationen zur Lösung dieser Aufgaben finden Sie unter Docker-Container-Bezeichner unabhängig machen [KB1443042] artikel in ServiceNow® Knowledge Base. |
| Bild-ID [image_ID] | |
| Container-ID [Container_ID] | |
| Größe (Byte) [size_bytes] | |
| Befehl [Befehl] | |
| Container erstellt [Container_created] | |
| Status [Status] | |
| Tabelle und Feld | Beschreibung |
|---|---|
| Container-Repository [cmdb_ci_container_repository] | |
| Name [Name] | Der Name des Container-Repositorys. |
| Container-Repository-Eintrag [cmdb_ci_container_repository_entry] | |
| Name [Name] | Der Name des Container-Repository-Eintrags. |
| Kategorie [Kategorie] | Die Kategorie des Container-Repository-Eintrags. |
CI-Beziehungen
| CI | Beziehung | CI |
|---|---|---|
| cmdb_ci_server | Wird Ausgeführt::Ausgeführt Auf | cmdb_ci_docker_engine |
| cmdb_ci_docker_engine | Verwaltet::Verwaltet Von | cmdb_ci_docker_container |
| cmdb_ci_docker_engine | Verwaltet::Verwaltet Bis | cmdb_ci_docker_local_image |
|
cmdb_ci_docker_image |
Instanziiert::Instanziiert Bis |
cmdb_ci_docker_container |
|
cmdb_ci_docker_local_image Hinweis:
Die Richtung dieser Beziehung ist für alle Store-Versionen vor dem 1,0.99, Februar 2023 umgekehrt. |
Instanziiert::Instanziiert Bis |
cmdb_ci_docker_container |
| cmdb_ci_docker_image_tag | Registriert Am::Hat Registriert | cmdb_ci_docker_local_image |
| cmdb_ci_docker_local_image | Instanziiert::Instanziiert Von | cmdb_ci_docker_image |
| CI | Beziehung | CI |
|---|---|---|
| Docker-Image [cmdb_ci_docker_image] | Bereitgestellt Von::Provisioned | Container-Repository-Eintrag [cmdb_ci_container_repository_entry] |
| Container-Repository-Eintrag [cmdb_ci_container_repository_entry] | Gehostet auf::Hostet | Container-Repository [cmdb_ci_container_repository] |
Identifizierungs-, Containment- und Hosting-Regeln
Discovery verwendet einen Anwendungsregelbezeichner Um die Docker-Engine zu finden und dann andere Regeln anzuwenden, um bestimmte Docker-Objekte zu identifizieren.
- Anwendungsregelbezeichner
Das System erstellt das cmdb_ci_docker_engine Configuration Item (CI) während der Prozessklassifizierung. Basierend darauf verwendet Discovery den Anwendungsregelbezeichner In der Tabelle „Anwendung“ [cmdb_ci_appl], um die bestimmte gefundene Docker-Engine zu identifizieren. Nach der Einrichtung dieser Identität verwendet Discovery die in den Containment- und Hosting-Regeln definierten Beziehungen, um die einzelnen CIs der Docker-Komponente im Zusammenhang mit dieser Engine genau zu erstellen und zu aktualisieren.
- Bezeichner
Name Tabelle Attribute Docker-Container Docker-Container [cmdb_ci_docker_container] container_id Globales Docker-Bild Docker-Image [cmdb_ci_docker_image] image_id Lokales Docker-Bild Lokales Docker-Bild [cmdb_ci_docker_local_image] image_id Docker-Image-Tag Docker-Image-Tag [cmdb_ci_docker_image_tag] Repository, Tag - Containment- und Hosting-Regeln
- Docker-Discovery verwendet diese Erstellen oder bearbeiten Sie eine Sammlung von Containment-Regeln Und Erstellen oder bearbeiten Sie eine Sammlung von Hosting-Regeln Regeln zum Erstellen von Konfigurationselementen (CI) aus der Datenretur n ed durch das Docker-Muster. Nachdem die Discovery die Docker-Engine anhand ihrer Beziehung zur Anwendungstabelle [cmdb_ci_appl] identifiziert hat, verwendet sie diese Regeln, um die spezifischen CIs zu identifizieren, die mit dieser Engine aus ihren Beziehungen zueinander verbunden sind. Indem Sie die Komponenten auf diese Weise miteinander verbinden, von der Anwendung nach unten, beginnend mit der Engine, Discovery Vermeidet das Erstellen doppelter CIs für Komponenten aus anderen Docker-Engines, die denselben Namen oder dieselbe image_ID verwenden
Tabelle : 1. Containment-Regel Übergeordnet Untergeordnetes Element Beziehung Lokales Docker-Bild Docker-Image-Tag Wurde registriert Tabelle : 2. Hosting-Regeln Übergeordnet Untergeordnetes Element Beziehung Docker-Container Docker-Engine Verwaltet von Lokales Docker-Bild Docker-Engine Verwaltet von