Thema

Unternehmensintegration

Die Anwendungs- und Datenintegration ist für die Bereitstellung neuer Kundenerfahrungen und -Services unerlässlich. Für die monolithische Integrationstechnologie eines ganzen Unternehmens ist in der Regel nur ein Team verantwortlich. Allerdings müssen Organisationen ihre mittlerweile verteilten und extrem komplexen Anwendungen schnell skalieren und ändern können, um sich ihre Wettbewerbsfähigkeit zu erhalten. Diese neuen Herausforderungen erfordern eine iterative Strategie mit cloudnativen Integrationstechnologien und agilen Teams.

Was ist Unternehmensintegration?

Moderne Unternehmen müssen in der Lage sein, Daten zu teilen. Wenn Sie ein Großunternehmen sind, das Big Data ausschöpfen möchte, dann wissen Sie, dass Sie damit vor einer großen Herausforderung stehen. Daher müssen alle Anwendungen und Geräte, die das Fundament Ihrer Geschäftsstrategie bilden, untereinander zugänglich sein, und das nicht selten über mehrere Cloud-Umgebungen hinweg. Unternehmensintegration umfasst die Technologien, Prozesse und Teamstrukturen, die alle Daten, Anwendungen und Geräte in Ihrer gesamten IT-Organisation verbinden müssen.

Die Modelle zur Unternehmensintegration haben sich im Laufe der Jahre weiterentwickelt: vom Ansatz mit relativ wenigen Punkt-zu-Punkt-Verbindungen zum zentralisierten Konzept mit Enterprise Service Bus (ESB) und schließlich zu einer verteilten Architektur mit vielen wiederverwendbaren Endpunkten.

Das „Was“ und „Wie“ der Unternehmensintegration

Was soll integriert werden?

In erster Linie ist die Unternehmensintegration eine datentechnische Herausforderung. Heute erfassen und speichern Organisationen so viele Daten, dass man oft den Begriff Big Data hört, wenn es um die Größe und Vielfalt von Datenquellen geht. Ein großes Volumen an Daten mit vielen unterschiedlichen Formaten kann einen erheblichen Geschäftswert darstellen. Zuerst aber müssen diese Daten aus mehreren Quellen oder Anwendungen extrahiert und integriert werden. Das Internet of Things (IoT) bietet ebenfalls eine neue Möglichkeit, Kundenbeziehungen aufzubauen und nützliche Daten mithilfe gängiger Geräte zu analysieren. Dabei aber müssen die wichtigen Informationen herausgefiltert werden, die Sie in Ihrem Rechenzentrum brauchen. Webanwendungen machen die Unternehmensintegration noch komplexer, besonders wenn ältere Anwendungen in servicebasierte Architekturen wie z. B. Microservices integriert werden müssen.

Wie sollen Ihre Apps, Geräte und Daten integriert werden?

In der Vergangenheit konnte man mit einem zentralisierten ESB, der von einem Team zentral verwaltet wurde, alle Endpunkte einer Umgebung verbinden. Ein solcher Ansatz bei Teams und Technologien aber kann einen Engpass für moderne Systeme darstellen, da diese für die Integration verteilter Komponenten einfache und schnelle Zugangswege benötigen. Je nach Ihren Daten- und Serviceanforderungen ist eine Kombination aus Messaging, Anwendungskonnektoren, Daten-Streams, Enterprise Integration Patterns und APIs, die schnell und iterativ bereitgestellt werden können, für die moderne Anwendungsentwicklung besser geeignet.

Messaging ist ein Kommunikationsverfahren zwischen unterschiedlichen Komponenten einer verteilten Anwendungsarchitektur. Solange beide Seiten das gängige Messaging-Format bzw. Protokoll verstehen, können Nachrichten in verschiedenen Sprachen, Compilern und Betriebssystemen gesendet und empfangen werden.

Um Nachrichten in einer Microservice-Architektur weiterzuleiten, wird ein Service Mesh verwendet.

Hierbei handelt es sich um Architekturelemente, mit denen die Regeln der Interaktion von Komponenten modelliert werden können. Dabei werden Standardverbindungen an bestimmte APIs angepasst, um eine schnelle Integration mit neuen Endpunkten zu ermöglichen.

Daten-Streams bieten einen kontinuierlichen Informationsfluss, dem Apps − unabhängig von der Datenübertragung − Inhalte hinzufügen oder entnehmen können. So handelt es sich bei Apache Kafka beispielsweise um eine verteilte Daten-Streaming-Plattform, mit der sich solche Streams in Echtzeit veröffentlichen, abonnieren, speichern und verarbeiten lassen.

EIPs sind gesammelte, technologieunabhängige Lösungen für gängige Integrationsprobleme. Sie integrieren auch eine gemeinsame Sprache, mit der Entwickler und Anwendungsarchitekten Integrationen beschreiben können.

Eine API besteht aus mehreren Tools, Definitionen und Protokollen zur Entwicklung von Anwendungssoftware. Mit ihr können Produkte oder Services unabhängig von ihrer Implementierung untereinander kommunizieren.

Der Integrationsansatz von Red Hat

Red Hat ist der Überzeugung, dass der traditionelle Integrationsansatz, bei dem ein zentrales Team die monolithische Technologie steuert, die Entwicklung und langfristig den Nutzen verteilter Anwendungen einschränken kann. Traditionelle Lösungen wie ESBs haben ihre Vorteile, da beispielsweise der Sicherheits- und Datenintegrität Priorität eingeräumt wird, aber sie hängen auch von einem einzelnen Team ab, wenn Integrationen für das gesamte Unternehmen definiert werden müssen.

Die mithilfe von agilen und DevOps-Methoden erstellten, lose gekoppelten, cloudnativen Anwendungsarchitekturen von heute benötigen eine ebenfalls agile und skalierbare Integrationsstrategie. So interpretiert auch Red Hat agile Integration, nämlich als Konzept zur Verbindung von Ressourcen, das Integrationstechnologien, agile Bereitstellungstechniken und cloudnative Plattformen kombiniert, um die Softwarebereitstellung zu beschleunigen und sicherer zu machen. Insbesondere umfasst eine agile Integration den Einsatz von Integrationstechnologien (wie APIs in Linux-Containern) und die Ausweitung von Integrationsrollen auf funktionsübergreifende Teams.

Integration in einer cloudnativen Architektur

Eine cloudnative App ist eine Ansammlung kleiner, unabhängiger und lose gekoppelter Microservices, die in Linux-Containern bereitgestellt werden und über APIs oder Messaging verbunden sind. Jeder Service implementiert eine Geschäftsfunktion und wird von kleinen Teams mithilfe von DevOps-Workflows wie CI und CD (Continuous Integration und Continuous Deployment) entwickelt. Auf diese Weise lassen sich Services rasch erstellen, automatisch bereitstellen und regelmäßig aktualisieren, und zwar ganz ohne Entwicklungszyklen nach dem Wasserfallmodell.

DevOps

Das DevOps-Konzept schließt die Aspekte Unternehmenskultur, Automatisierung und Plattformdesign ein und hat das Ziel, den geschäftlichen Mehrwert und die Reaktionsfähigkeit zu steigern.

Container

Mithilfe von Containern lassen sich Apps mit ihrer gesamten Laufzeitumgebung packen bzw. isolieren und unter Aufrechterhaltung der vollständigen Funktionalität zwischen Umgebungen migrieren.

Microservices

Bei einer Microservice-Architektur werden Apps in ihre kleinsten voneinander unabhängigen Bestandteile aufgeschlüsselt.

APIs

Eine API (Application Programming Interface) ist ein Satz mit Tools, Definitionen und Protokollen zur Entwicklung von Anwendungssoftware. Mit Ihnen können Sie Produkte und Services verknüpfen, ohne wissen zu müssen, wie sie implementiert werden.

Cloudnative Anwendungen sollen einen geschäftlichen Mehrwert erzeugen, wie z. B. die Fähigkeit, Benutzer-Feedback schnell zu integrieren, um für kontinuierliche Verbesserungen sorgen zu können. Kurz gesagt, haben wir es hier mit einer Methode zur Beschleunigung der Entwicklung neuer bzw. Optimierung bestehender Anwendungen sowie deren Verknüpfung zu tun.

Da cloudnative Anwendungen verteilt sind, stellen sie im Vergleich zu traditionellen monolithischen Apps bei der Integration eine besondere Herausforderung dar. Teilweise macht die agile Integration eine cloudnative Entwicklung erst möglich, da sie die Integrationsanforderungen von Anwendung und Unternehmen zusammenbringt.

Das Red Hat Middleware Portfolio erkunden

Red Hat Integration ist eine der drei Produktgruppen im Portfolio von Red Hat Middleware. Es ermöglicht Entwicklern, Anwendungen mit einer Reihe von unterschiedlichen internen und externen Systemen über Hybrid-Architekturen hinweg zu integrieren.

Integration hat noch viel mehr zu bieten