Optimale Übersicht über die AWS Cloud mit SVA Cloud.Inventory für Matrix42 ESM

Die Herausforderung

In der modernen IT-Welt setzen sich Infrastrukturen oft nicht nur aus den klassischen on-premises-Lösungen zusammen. Implementierte Cloudservices ergänzen die Bestandssysteme und bieten breitgefächerte Möglichkeiten, auf die viele Unternehmen nicht verzichten wollen.

Schnell kann es hierbei passieren, dass Komponenten aus den Augen verloren werden. Das erschwert nicht nur die Administration enorm, sondern kann zu ungewollten Kosten und einer erschwerten Skalierung führen. Vor allem dann, wenn man nicht nur einen Cloud-Account innehat, sondern die Services aus unterschiedlichen Accounts, Regionen und Verantwortungsbereichen bezieht oder gar zwischen Verwaltungskonsolen wechseln muss, um sich ein Bild der Infrastruktur zu verschaffen.

Das Ziel: Überblick über die AWS Cloud-Assets

Es ist wichtig, ein umfassendes Verständnis für die Vorgänge in der Cloud zu haben. Welche Ressourcen werden eingesetzt, wie sind diese miteinander verknüpft und skaliert und in wessen Zuständigkeitsbereich fallen sie? Das alles ist idealerweise unabhängig davon, wer die Komponenten angelegt hat oder in welcher Region sie sich befinden – ohne wiederkehrenden manuellen Aufwand.

Folgende Fragen gilt es mit einer Lösung zu beantworten:

  • Welche Assets sind in meiner Cloud aktiv oder inaktiv?
  • Wie sind meine Assets skaliert?
  • Wie ausgelastet sind meine Ressourcen?
  • Welche Regionen sind meine Cloudschwerpunkte?
  • In welchen Accounts befinden sich meine Assets?
  • Wie kann ich meine Cloudinfrastruktur überblicken?
  • Kann ich Ressourcen besser nutzen oder einsparen?

Der Lösungsansatz: Vorhandene Ressourcen bestmöglich nutzen

Eine nutz- und auswertbare Lösung sollte sich im besten Falle in die Bestandslogiken und -prozesse integrieren. Das verbessert die Nutzbarkeit und erspart den Administratoren viel Aufwand sowie zusätzliche Verwaltungssysteme.

In dem hier betrachteten Szenario liegt eine Matrix42 Enterprise Service Management Platform (ESM) zur Verwaltung der Assets sowie Amazon Web Services (AWS) Cloudinfrastruktur vor.

Die bereits implementierte Matrix42 ESM Platform bietet sich daher als darstellendes Zielsystem an. Sie ist den Mitarbeitenden wohl bekannt, bietet zahlreiche Möglichkeiten Assets zu verwalten, Geschäftsprozesse zu automatisieren und beinhaltet Stammdaten für die Unternehmensbereiche.

Als Datenlieferant stellt AWS hervorragende Möglichkeiten für Entwickler zur Verfügung. Mit den .Net Tools und dem Software Development Kit (SDK) ist es möglich, die gesamte AWS-Organisation zu scannen und ein Inventar der genutzten Services zu erzeugen, welches dann in das Matrix42 ESM integriert werden kann.

Die Lösung: Integration der AWS Cloud-Assets in Matrix42 ESM

Konfiguration

Matrix42 ESM bietet ausgezeichnete Möglichkeiten, eigene Konfigurationen zu hinterlegen und ein individuelles Front-End zu erstellen. So ist es nicht nur möglich auszuwählen, welche AWS-Cloudservices überhaupt inventarisiert werden sollen, sondern auch anzugeben, welche Regionen und AWS Accounts von Relevanz sind und wie diese dargestellt werden sollen. Dies bietet dem Administrator auf vier Konfigurationsseiten die Möglichkeit, die Inventur zu konfigurieren.

Screenshot aus dem SVA Cloud.Inventory. Es zeigt eine Unterseite, auf der mehrere Auswahl-Optionen in drei Spalten angezeigt werden. Diese sind mit blauem Haken abgehakt.
Abb. 1: Konfiguration der einzusammelnden Services

Datenbereitstellung

Um externe Daten in Matrix42 ESM zu integrieren, wird eine Datenquelle (Dataprovider) benötigt. In unserem Anwendungsfall stellt die AWS SDK mit Hilfe von Microsoft PowerShell Scripts alle notwendigen Daten zur Verfügung und bereitet diese Matrix42 ESM-konform für den Import auf. Die erforderlichen PowerShell Module werden vor dem Datensammeln geprüft und ggf. vollautomatisch nachinstalliert. So müssen sich User des Cloud-Inventories nicht mit Kompatibilitätsproblemen beschäftigen und können sich darauf verlassen, dass die Voraussetzungen erfüllt sind.

In Workflows werden die Daten nicht nur eingeholt, sondern auch in das Asset-Management-System importiert. Das hat den Vorteil, dass der Prozess asynchron abläuft und sogar auf externen Servern (sogenannte externe Worker) einsetzbar ist.

Weitergedacht

Um nicht verpflichtet zu sein, für jeden AWS Account eine eigene Konfiguration anzulegen, wird die AWS Funktionalität der Rollenannahme genutzt (Assume Role). Wie in Abbildung 1 ersichtlich ist, können Rollen, für die man eine Berechtigung besitzt, einfach angenommen werden. Ist eine entsprechende Berechtigung im AWS Identity and Access Management (IAM) hinterlegt, so kann man accountübergreifend Inventardaten einsammeln. Das spart Zeit und administrativen Aufwand.

Wer schon einmal Inventardaten aus unterschiedlichen Datenquellen in sein Assetmanagement importiert hat, weiß, dass es aufgrund unterschiedlicher Identifizierungsmerkmale zu Assetduplikaten kommen kann. So identifiziert bspw. die Active Directory Computerobjekte nach anderen Kriterien wie es eine Softwareverteilung macht. Das liegt daran, dass die jeweiligen Systeme und Datenquellen entweder keinen Zugriff auf Alleinstellungsmerkmale haben oder diese schlicht nicht als primäres Identifizierungsmerkmal verwenden. Dieser Umstand wurde gelöst, indem wir anderen Datenquellen die Informationen bereitstellen, die sie benötigen, um Objekte aus der AWS Cloud als Asset zu identifizieren.

Hiermit verhindern wir nicht nur Duplikate im Asset Management, sondern schaffen auch die Möglichkeit, unsere inventarisierten Assets mit weiteren Daten (bspw. einer detaillierten Softwareinventur aus einer anderen Datenquelle) anzureichern.

Ergebnisbetrachtung

Ist die Konfiguration gespeichert und das Datensammeln abgeschlossen, erhält man neben umfassenden Details des jeweiligen Cloudservices zusätzliche eine vollständige organisatorische sowie hierarchische Darstellung der Zuständigkeitsbereiche und AWS Accounts.

Die gesammelten Datenobjekte haben zahlreiche Relationen – sowohl untereinander als auch zu den bereits existierenden Stammdaten. Dadurch ist es möglich, sich mit nur wenigen Klicks von einem Asset zu weiteren wichtigen Informationen zu navigieren.

Darüber hinaus bietet die Inventur auch die Möglichkeit, Stammdaten zu hinterlegen. Von der Auflistung der Bestandsartikel bis hin zur Hinterlegung der Ansprechpartner für AWS Accounts bleiben keine Wünsche offen.

Der Einstiegspunkt für detaillierte Informationen zu den gesammelten AWS Services ist eine Landingpage. (siehe Abbildung 2). Darunterliegend wird eine Vielzahl an Informationen zur Verfügung gestellt.

Screenshot aus dem SVA Cloud.Inventory. Es zeigt eine Seite mit mehreren Diagrammen.
Abb. 2: Landingpage im Matrix42 ESM
Screenshot aus dem SVA Cloud.Inventory. Es zeigt eine Unterseite, auf der mehrere Beschreibungsfelder angezeigt werden.
Abb. 3: Eine EC2-Instanz wird als Computer identifiziert

Modularität & Installation

Durch einen modularen Aufbau der Techniken ist es möglich, die dargestellte Lösung beliebig zu erweitern und in Bestandslogiken wie bspw. Konformitätsregeln, Ticketsystem und Filter zu integrieren. Genutzt wird hierbei die Stärke des Matrix42 ESM Systems, ohne andere Komponenten zu beeinflussen. Die gezeigte Lösung wird als Erweiterung des Matrix42 ESM installiert und aktualisiert.

Fazit

Bei Nutzung des Funktionsumfangs von Matrix42 ESM gelingt es, einen Überblick über die AWS Cloud-Assets zu erhalten. Die Erweiterung “SVA Cloud.Inventory” bietet neben einen Blick auf die Infrastruktur auch organisatorische Details, Relationen zu abhängigen sowie verknüpften Assets und integriert sich einsteigerfreundlich in die bekannte Matrix42-ESM-Oberfläche.