Platform-as-a-Service

Container forcieren Entwicklung von Anwendungen

2. Dezember 2015, 16:32 Uhr | Markus Eisele, Developer Advocate bei Red Hat und spezialisiert auf die Bereiche Integration und xPaaS

Fortsetzung des Artikels von Teil 1

Steuerung und Überwachung der

Red-Hat-Openshift-Enterprise 3 auf einen Blick
Red-Hat-Openshift-Enterprise 3 auf einen Blick
© Red Hat

ner zu verwalten und zu orchestrieren, um sie beispielsweise zu einer komplexen, funktionsreichen Anwendung zu verknüpfen. „OpenShift Enterprise“ nutzt dazu das Tool „Kubernetes 1.0“, das sich rasch zum Standard für verteilte Infrastrukturen entwickelt hat. Es wird unterstützt von der kürzlich gegründeten Cloud Native Computing Foundation.

Kubernetes bezeichnet Docker-Container-Instanzen als Pods und weist diese physikalischen Nodes zu. Der Zugriff auf Pods wird über Service-Controller ermöglicht. Dieses Konzept bietet eine Abstraktion der physikalischen Infrastruktur und erlaubt eine einfache Skalierung. Openshift baut an der Stelle auf Kubernetes und Docker auf und ermöglicht die Entwicklerproduktivität, die interdisziplinäre Teams benötigen.

Perfekt für Microservices

Da Container Anwendungen vollständig von der jeweiligen Umgebung trennen, eignen sie sich sehr gut, um lose gekoppelte Microservices zu betreiben, die nur eine einzige, einfache Funktion ausführen. Beispiele sind etwa das Auslesen von Sensoren, das Sammeln von Daten oder der Versand von Nachrichten.

Microservices vermeiden viele der Fallstricke von monolithischen und komplexen Anwendungen, da sich die Services unabhängig voneinander ändern lassen. Jeder Service stellt aus Sicht der anderen Services eine Art Blackbox dar. Solange sich ihre Schnittstellen nicht ändern und sie den angeforderten Prozess umsetzen, kann der Entwickler die jeweiligen Services anpassen.
Der Microservices-Ansatz erleichtert kleinen Teams die Entwicklung und den Test individueller Dienste sowie die schnelle Bereitstellung neuer Versionen. Dies wiederum vereinfacht auch die Implementierung von DevOps, einem Konzept, das auf Prozessen und Tools für die enge Verzahnung von Applikationsentwicklung und Betrieb basiert, um die bekannten Bruchstellen zwischen beiden zu überwinden. Wichtige Elemente von DevOps sind eine Kultur der Zusammenarbeit von Entwicklern und IT-Betrieb, automatisierte Prozesse und Technologien wie Container.

Agile Entwicklung dank PaaS

Mit einer PaaS-Lösung arbeiten Entwickler produktiver, da sie sich auf das Programmieren und Erstellen von APIs oder verteilten Anwendungs-Architekturen konzentrieren können. Darüber hinaus profitieren sie von folgenden PaaS-Funktionen:

  • Self Service: Über eine Cloud-Infrastruktur können Entwickler damit innerhalb von Minuten (statt Tagen oder Wochen) die notwendigen Ressourcen aktivieren und dort beispielsweise Software testen oder Infrastrukturen simulieren, die der späteren Produktionsumgebung nahe kommen. Das beschleunigt die Entwicklung erheblich;Große Auswahl an Programmiersprachen und Entwicklerwerkzeugen: Dazu zählen Java-EE, Ruby, Node.js, PHP, Perl und Python sowie Frameworks zurBeschleunigung der Software-Entwicklung, darunter Jenkins, Gogs, Sonar und viele mehr;
  • Automatisierung: PaaS-Lösungen unterstützen die Automatisierung von Builds, der Bereitstellung von Anwendungen, Skalierung oder Health-Management. Auch das Erstellen von Docker-Images lässt sich mit der Source-to-Image-Funktion automatisieren;
  • Benutzerschnittstellen: Die Entwickler können Anwendungen über Kommandozeilen-Tools, eine leistungsstarke Webkonsole oder eine Eclipse-basierte, integrierte Entwicklungsumgebung erstellen;
  • Zusammenarbeit: Eine PaaS-Lösung vereinfacht mit verschiedenen Funktionen die Zusammenarbeit an Projekten. Neben Benutzeradministration fallen hierunter vor allem Werkzeuge zur Team-Kommunikation;
  • Skalierbarkeit: Anwendungen lassen sich einfach skalieren, um höhere Zugriffszahlen oder eine höhere Nachfrage zu bewältigen.
  • Open-Source: Unternehmen sind nicht auf die Technik oder Business-Roadmap eines bestimmten Anbieters beschränkt.

Container haben sich in der Linux-Welt zu einer zentralen Methode für die Paketierung und Bereitstellung von Applikationen herauskristallisiert. Über PaaS-Lösungen können Unternehmen Container-basierte Anwendungen effizienter entwickeln, automatisiert bereitstellen, betreiben, verteilen und verwalten. Anwendungen lassen sich damit auch leichter an Veränderungen der Infrastruktur und Geschäftsprozesse anpassen. Zudem vereinfacht sich damit der Aufbau neuer Anwendungs-Architekturen, die auf Microservices basieren.

Anbieter zum Thema

zu Matchmaker+

  1. Container forcieren Entwicklung von Anwendungen
  2. Steuerung und Überwachung der

Lesen Sie mehr zum Thema


Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu Red Hat GmbH

Weitere Artikel zu Server, Datacenter

Matchmaker+