spainter_vfx - stock.adobe.com

Anwendungs-Mapping: Abhängigkeiten finden, Effizienz steigern

Microservices, Container und Cloud-Nutzung erschweren das Monitoring von Leistung und Verfügbarkeit moderner Applikationen. Dafür gibt es Tools für Anwendungs-Mapping.

Anwendungen sind ein zentraler Bestandteil eines funktionierenden Unternehmens. E-Mails, Chatbots, Projektmanagement-Tools und so weiter sind der Kitt, der Geschäftsprozesse zusammenhält. Wenn eine Anwendung ausfällt, wird es oft nicht nur sofort bemerkt, sondern kann die geschäftliche Produktivität deutlich verringern und Prozesse verzögern. Wenn IT-Experten verstehen, wie Anwendungen funktionieren und – noch wichtiger – womit sie vernetzt sind, können sie sicherstellen, dass die Anwendungen jederzeit über die optimale Kapazität verfügen, und sie finden sich mühelos in der On-Premises- oder Cloud-Infrastruktur zurecht.

Doch bevor wir uns mit den Vorteilen beschäftigen, die das Abhängigkeits-Mapping bieten kann, ist es wichtig, zu verstehen, wie sich Anwendungsabhängigkeiten entwickelt haben.

Abhängigkeiten gestern und heute

Noch vor ein paar Jahren waren Anwendungen monolithisch: Der Code für die gesamte Anwendung wurde in einem Stück erstellt, von den Benutzerinteraktionen bis hin zu verschiedenen Transaktionen. Dieser Code musste irgendwo ausgeführt werden, was zwangsläufig eine Abhängigkeit von Betriebssystemen und Hardware mit sich brachte. Da Informationen in Netzwerken übertragen wurden, mussten Technikexperten die Kommunikation überwachen, um die Leistung und Verfügbarkeit sicherzustellen. Doch das ist nur dann effektiv möglich, wenn alles bekannt ist, wovon die Anwendung abhängt. Vor den Zeiten der intensiven Cloud-Nutzung lies sich das noch relativ einfach überwachen, weil alle Anwendungen auf derselben Hardware ausgeführt wurden. Doch seit die Virtualisierung zur Norm geworden ist, ist die Lage schwieriger.

In der heutigen, von Microservices und Containern bestimmten IT-Welt, in der Daten entweder vollständig in der Cloud oder in hybriden Umgebungen gespeichert werden, ist das Anwendungsleistungsmanagement (APM) deutlich komplexer, weil auch das Abhängigkeits-Mapping komplexer ist.

Aktuelle Anwendungen können mit LEGO-Sets verglichen werden, deren unterschiedliche Teile ineinandergreifen, aber jederzeit neu zusammengesetzt werden können. Diese Anwendungen effektiv zu verwalten und zu identifizieren, welche Anwendungen in virtuellen Umgebungen ausgeführt werden und womit sie verbunden sind, erfordert ein fortgeschritteneres Monitoring.

Das Mapping von Anwendungsabhängigkeiten entmystifizieren

In den meisten Unternehmen sind Daten auf verschiedene Umgebungen verteilt. Mit der zunehmenden Verbreitung der Cloud haben viele Unternehmen Daten aus On-Premises-Umgebungen zur Cloud migriert oder arbeiten mit hybriden Umgebungen. Bei der Überlegung, wo eine Anwendung bereitgestellt und Daten gespeichert werden sollen, müssen Unternehmen einige Faktoren berücksichtigen:

  • Wenn das Unternehmen etabliert wurde, nachdem auf Microservices basierende Anwendungen zur Norm wurden, ist keine Umstellung nötig und das Unternehmen hat größere Freiheiten bei der Einführung neuer Technologien.
  • Wenn das Unternehmen schon lange im Geschäft ist und in On-Premises-Anwendungen und Infrastruktur investiert hat, gibt es mehrere Möglichkeiten für den Wechsel zu modernen Anwendungen und Cloud-Umgebungen.

Wo Anwendungen bereitgestellt werden sollten, findet man am einfachsten heraus, indem man die Frage stellt, ob eine horizontale oder vertikale Skalierung erfolgen soll.

Ein Unternehmen, das primär auf die Cloud setzt, profitiert von der Dynamik der Cloud und der Möglichkeit, flexibel horizontal und vertikal skalieren sowie für mehr Resilienz in seinen Infrastrukturen sorgen zu können. Unternehmen können Anwendungen, die horizontal skalieren können, unverändert und vollständig von On-Premises-Umgebungen zur Cloud migrieren. Dabei ist wichtig zu beachten, dass nicht alle Anwendungen zur Cloud migriert werden können.

Einige Anwendungstypen sollten On-Premises verbleiben, um maximal effektiv zu sein:

  • Compliance-Anwendungen: Anwendungen, die primär für Compliance- und Datenschutzaufgaben verwendet werden, müssen On-Premises verbleiben, um den entsprechenden Richtlinien zu entsprechen.
  • Anwendungen, die nur vertikal skalieren: Diese Anwendungen wurden nicht für die horizontal skalierenden Architekturen der öffentlichen Cloud entwickelt. Ein Beispiel sind Anwendungen, die nur dazu dienen, zur Skalierung mehr CPU oder Arbeitsspeicher zu einem Server hinzuzufügen. Auch wenn einige dieser Anwendungen in der Cloud ausgeführt werden können, bringt dies Unternehmen keinerlei Kostenvorteile.
  • Anwendungen, die mit Datensätzen aus verschiedenen Quellen arbeiten: Es kostet Unternehmen jedes Mal Geld, wenn sie die Cloud aufrufen und verlassen. Aus diesem Grund können Anwendungen, die ständig Daten aus externen Quellen beziehen, teuer werden.

Anwendungs-Mapping in der Praxis

Die möglichen Speicher- und Ausführungsorte von Anwendungen und vor allem deren Vernetzungen sind also komplex. Wer das Abhängigkeits-Mapping priorisiert, kann Anwendungen jedoch von Anfang an effizienter gestalten.

Melanie Achard, SolarWinds

„Welche Anwendungen in virtuellen Umgebungen ausgeführt werden und womit sie verbunden sind, erfordert ein fortgeschritteneres Monitoring.“

Melanie Achard, SolarWinds

Dabei sollte ein Tool für das Anwendungs-Mapping zum Einsatz kommen, das auch Abhängigkeiten optimieren kann. So verbringen IT-Experten weniger Zeit mit der Identifizierung von Abhängigkeiten und können dafür sorgen, dass ihr Netzwerk und ihre Anwendungen insgesamt reibungslos funktionieren und die gesamte Infrastruktur effizienter wird.

Die Implementierung eines derartigen Tools hilft dabei, die Zusammenhänge zwischen Anwendungen und Servern besser zu überblicken oder eine Ebene tiefer einzutauchen und die Beziehungen zwischen Diensten und Verbindungsports anzuzeigen. So sieht man nicht nur, wie alles verbunden ist, sondern auch, wie sich jede einzelne Komponente verhält und mit dem Netzwerk interagiert. Je mehr man über jede abhängige Verbindung weiß, desto besser lassen sich auch Netzwerklatenz, Paketverlust, Verbindungsports und zugehörige Dienste untersuchen. Diese Informationen können IT-Experten beispielsweise mit Netzwerkverbindungen in Beziehung setzen, um herauszufinden, wo die Ursache für Anwendungsverzögerungen liegt. Wenn man die Performance-Informationen jeder Verbindung überwacht und Antwortzeiten analysiert, erhält man einen umfassenden Einblick in die gesamte Infrastruktur.

Über den Autor:
Melanie Achard ist Direktorin für Produktmarketing bei SolarWinds. Sie hat in den Bereichen Software-Engineering, Produktmanagement und Produktmarketing in einer Vielzahl von Unternehmen gearbeitet – von kleinen Drei-Personen-Startups bis hin zu großen Fortune-500-Organisationen –, immer mit dem Schwerpunkt, Probleme zu lösen, die den Menschen am Herzen liegen. Im Jahr 2018 kam sie zu SolarWinds, um das Wachstum der DevOps-Produkte des Unternehmens – Pingdom, AppOptics, Papertrail und Loggly – voranzubringen.

Die Autoren sind für den Inhalt und die Richtigkeit ihrer Beiträge selbst verantwortlich. Die dargelegten Meinungen geben die Ansichten der Autoren wieder.

Erfahren Sie mehr über Netzwerk- und Anwendungs-Performance