AWS Lambda-Erkennung
Die Anwendungen ServiceNow Discovery und Service-Mapping können Lambda-Funktionen suchen und zuordnen, die in Ihrer AWS-Cloud ausgeführt werden. Die Erkennung einiger dieser Ressourcen erfordert ein Update der Anwendung Muster für Discovery und Service-Mappingaus dem ServiceNow Store.
Discovery und Service-Mapping verwenden das Muster „Amazon AWS Lambda“, um eine horizontale Erkennung und eine Erkennung von oben nach unten auszuführen. Wenn Sie die Cloud-Erkennung ausführen, fragt Ihre Instanz Ihr AWS-Servicekonto mit den erforderlichen Anmeldeinformationen ab und führt dann eine Abfrage aus, um Lambda-Informationen zu erhalten. Das Muster analysiert diese Informationen, die dann in der CMDB gespeichert werden.
Sie können dieses Muster auf der ServiceNow-Plattform mit Jakarta Patch 10, Kingston Patch 8 oder London Patch 1 verwenden.
Apps im Store anfordern
Besuchen Sie die ServiceNow Store-Website, um alle verfügbaren Apps anzuzeigen und Informationen zum Senden von Anforderungen an den Store zu erhalten. Kumulative Informationen zum Release für alle veröffentlichten Apps finden Sie in den Release-Hinweisen zum ServiceNow Store-Versionsverlauf.
Voraussetzungen
- Update Set
- Wenn Ihre Instanz die Version Jakarta oder Istanbul hat, importieren Sie das Update Set, das in „KB0679927: AWS Lambda top-down discovery update set (Update Set für AWS Lambda-Erkennung von oben nach unten)“ bereitgestellt wird. Dieses Update Set ist für Service-Mapping erforderlich.
- Benutzerrichtlinie für AWS-Benutzer
- Wenn Sie Identity and Access Management (IAM) verwenden, um Benutzer auf der AWS-Plattform (Amazon Web Services) zu verwalten, stellen Sie sicher, dass Sie eine Benutzerrichtlinie für den AWS-Benutzer erstellt haben. Weitere Informationen finden Sie unter AWS-Zugriff und -Berechtigungen mithilfe von Richtlinien steuern in der Dokumentation zu ServiceNow Cloud Provisioning and Governance.
- AWS-Servicekonto mit Anmeldeinformationen
- Sie müssen Ihr Servicekonto mit den entsprechenden AWS-Anmeldeinformationen einrichten. Sie führen die Erkennung über das Servicekonten-Formular aus.
Weitere Informationen zu Servicekonten für Discovery und Service-Mapping finden Sie in der Produktdokumentation.
- Servicekonto
- Erstellen Sie ein Servicekonto auf der ServiceNow-Plattform. Legen Sie die Konto-ID auf die Amazon-Konto-ID fest, zu der AWS Lambda gehört. Verwenden Sie die Konto-ID, wie sie in der AWS-Verwaltungskonsole angezeigt wird. Stellen Sie sicher, dass der MID-Server auf der virtuellen Maschine platziert wird, die Teil des zu erkennenden Servicekontos ist.
- Logische Rechenzentren mithilfe der horizontalen Erkennung erkennen
- Klicken Sie im Formular „Cloud-Servicekonto“ unter Zugehörige Links auf Rechenzentren erkennen.
- Benutzerberechtigungen
- Gewähren Sie einem Benutzer die Berechtigung zum Ausführen der ListFunctions-API mit der Ressource: arn:aws:lambda:region:account-id: function:function-name. Gewähren Sie einem Benutzer die Berechtigung zum Ausführen der GetFunction-API mit der Ressource: „*“.
- Amazon-Ressourcenname (ARN)
- (Optional für Anwendungsservices, die ARN als Einstiegspunkt verwenden) Stellen Sie sicher, dass Sie den ARN für das zu erkennende AWS Lambda kennen. ARNs dienen als Ressourcenbezeichner für Amazon Web Services.
- Host
- Wenn Ihre Instanz die Version Jakarta oder Istanbul hat, verwenden Sie den folgenden Host: 127.0.0.1.
- Cloud-Discovery
- Laden Sie für Cloud-Discovery das Muster „Discovery and Service Mapping“ aus dem ServiceNow Store herunter.
- MID-Server
- Stellen Sie bei der Installation von MID-Serversicher, dass der Hostcomputer die auf der Dokumentationswebsite von ServiceNow veröffentlichten MID Server-Systemanforderungen erfüllt oder übertrifft.
Von Discovery während der horizontalen Erkennung erfasste Daten
| Tabelle und Feld | Beschreibung |
|---|---|
| Cloud-Funktion [cmdb_ci_cloud_function] | |
| Name [name] | Der Name der Funktion |
| Objekt-ID [object_id] | Die ID (Amazon-Ressourcenname) der AWS Lamdba-Funktion, z. B. arn:aws:lambda:{datacenter}1:751200741520:function:{function-name} |
| Version [version] | Die Version der Funktion. Beispielsweise steht $Latest für die neueste veröffentlichte Version. |
| Sprache [language] | Die Laufzeitumgebung oder Sprache und Version, in der die Funktion geschrieben ist, z. B. Node.js6.10 für JavaScript Version 6.10. |
| Code-Speicherort-URL [code_location_url] | Die URL der Funktion, die Sie über die API Gateway-Konsole erstellt haben |
| CodeSha256 [codesha256] | Die kryptografische Hash-Signatur für die Funktion |
| Codegröße [code_size] | Die Größe des Funktionscodes in MB |
| Letzte Änderung an der Funktion [function_last_modified] | Das Datum, an dem die Funktion in Ihrer AWS Lamdba-Umgebung zuletzt geändert wurde |
CI-Beziehungen
| CI | Beziehung | CI |
|---|---|---|
| Cloudfunktion [cmdb_ci_cloud_function] |
Verwendet::Verwendet von | Cloud-Datenbank [cmdb_ci_cloud_database] |
| Gehostet auf::Hostet | AWS-Rechenzentrum [cmdb_ci_aws_datacenter] Das AWS-Rechenzentrum hat Beziehungen zu anderen AWS-CIs, z. B. Verfügbarkeitszonen, Servicekonten usw. Weitere Informationen finden Sie unter AWS und Azure Cloud-Erkennung in der Produktdokumentation. |
|
| Stellt bereit::Bereitgestellt von | Cloud Event-Quelle [cmdb_ci_cloud_event_source] Dieses CI kann eine beliebige Event-Quelle sein, die die Cloud-Funktion oder das API-Gateway auslöst. |
Verbindungen, die Service-Mapping bei der Erkennung von oben nach unten erkennt
- AWS API-Gateway
- Amazon Relational Database Service (RDS)
- Weitere Instanz von AWS Lambda innerhalb oder außerhalb der aktuellen Region, die ARN verwendet
Problembehandlung
| Symptom | Ursache | Lösung |
|---|---|---|
| Discovery fehlgeschlagen. Die Discovery-Nachricht enthält die Informationen zu einem Fehler, der durch die REST-Zeitüberschreitung verursacht wurde. | Es gibt viele CIs, deren REST-Aufrufantwort in der Bereitstellung gesendet wird. Der MID-Server kann die REST-Aufrufantwort nicht verarbeiten, ohne dass die vom Parameter mid.sa.cloud.request_timeout gesteuerte Zeitbegrenzung überschritten wird. | Standardmäßig ist der Parameter mid.sa.cloud.request_timeout auf 30.000 Millisekunden festgelegt. Erhöhen Sie den Wert dieses Parameters auf dem entsprechenden MID-Server, und führen Sie die Discovery erneut aus. Hinweis: Wenn dieser Parameter in der zugehörigen Liste der Konfigurationsparameter für den betreffenden MID-Server nicht angezeigt wird, müssen Sie ihn möglicherweise hinzufügen. |
| Bei Musterdesigner tritt während einer Debug-Sitzung ein Fehler auf. Die Musterdesigner-Meldung enthält die Informationen zu einem Fehler, der durch eine Zeitüberschreitung verursacht wurde. | Beim Musterdesigner tritt ein Fehler aufgrund einer Zeitüberschreitung beim Muster-Debugging auf (und nicht während der Discovery). | Standardmäßig ist der Parameter sa.debugger.max_timeout auf 240 Sekunden festgelegt. Erhöhen Sie den Wert dieses Parameters auf dem betreffenden MID-Server. |