Was sind Microservices?
Durch Microservices lässt sich die Entwicklung und der Rollout komplexer Anwendungen flexibler gestalten.
DevOps ist der Ansatz, die Softwareauslieferung zu beschleunigen und durch höhere Effizienz Kosten zu senken. DevOps ist keine festgelegte Methode und kein definierter Prozess. Es ist eher eine Philosophie oder ein Arbeitsmodell dafür, agile Entwicklung und Auslieferung effizient zu implementieren. Die jährliche Studie „State of DevOps Report“ zeigt beispielsweise, dass Top-Performer über 200 mal häufigere Code Deployments schaffen als die schwächste Gruppe in der Befragung. Im Kern geht es darum, Entwicklung und operative IT miteinander zu vereinen.
Daher auch der Begriff „DevOps“, der aus „Development“ und „Operations“ entstand. Das Ziel ist dabei immer, traditionelle Silos zwischen Software und IT-Infrastruktur aufzubrechen. Dies soll robuste und schnellere Releases ermöglichen. Warum ist dies wichtig? Der Hauptgrund ist die operative Effizienz: weniger Fehler und eine schnellere Auslieferung. Dadurch werden agile, iterierende Releases möglich.
Wenn Entwicklung und IT nicht zusammenarbeiten, kann es immer zu Konflikten kommen, die Rollouts behindern. Indem Projekte und Prozesse aufeinander abgestimmt sind, vermeiden Unternehmen diese potenziellen Konflikte. Das Worst-Case-Szenario wäre, wenn sich Entwicklung und IT gegenseitig ausbremsen oder im Weg stünden. Der nächste Release der Anwendung erfordert zusätzliche Hardware oder eine angepasste Konfiguration, aber die IT besteht auf ihrem eigenen Prozess? Das würde die Auslieferung dieser Software um Tage oder gar Monate verzögern. Oder von der anderen Seite aus betrachtet: die Entwicklung hat mit neuen Hardwareanforderungen geplant, ohne die IT rechtzeitig zu informieren.
Diese Fälle vermeidet DevOps, wenn es richtig implementiert ist. Es sind nicht nur diese Katastrophen-Szenarien, die beispielsweise die Stabilität oder Verfügbarkeit von Anwendungen gefährden können. Es gehören auch Szenarien dazu, die sich auf die Performance oder Usability von Anwendungen auswirken. Automatisiertes Testing und permanentes Performance-Monitoring kann zu den Prozessen einer DevOps-Ausrichtung gehören, die dies vermeiden. Das Ergebnis: Entwicklung und operative IT arbeiten unmittelbar zusammen. Mit klaren Prozessen, einem hohen Grad an Automatisierung und enger Kollaboration.
Das Ergebnis der DevOps-Strategie sollte sein, dass Softwarebereitstellung für alle transparent und automatisiert funktioniert. Wichtige Prozesse der Teams verschmelzen und alle wissen jederzeit, woran die anderen gerade arbeiten. Die Methoden, um dieses Ziel zu erreichen, können unterschiedlich ausfallen. Automatisierung spielt dabei eine wichtige Rolle, beispielsweise Setup und Konfiguration der Infrastruktur passend zu neuen Software-Rollouts.
Ein anderes Beispiel für Automatisierung sind Testing- und Performance-Routinen, die Deployments verifizieren und die Leistung der Anwendung überwachen. Neben Automatisierung gehören neue Strukturen in den Teams zu den häufigen Änderungen für den DevOps-Ansatz: Entwicklung, Operations und QA werden zu einem Team, das die gesamte Softwarebereitstellung gemeinsam begleitet.
Zu den Zielen für DevOps gehören automatisierte Prozesse wie beispielsweise „Continuous Integration“ und „Continuous Deployment“. Continuous Integration bedeutet, Änderungen aller Entwickler am Code automatisch zusammenzuführen und zu testen. Dies hilft dabei, Fehler frühzeitig zu entdecken und nicht erst dann zu bemerken, wenn fertige Builds manuell zusammengeführt werden. Continuous Delivery ist die Erweiterung davon auf die Auslieferung.
Softwareänderungen werden automatisch integriert, landen in einer Staging-Umgebung und unterlaufen dort ebenfalls automatisierten Tests. Wenn Änderungen nach dem Testing automatisch ausgeliefert werden, spricht man von „Continuous Deployment“. In dieser Ausbaustufe sind alle Phasen der Software-Bereitstellung automatisiert.
DevOps und Container
DevOps geht häufig Hand in Hand mit Container-Technologien, die ihrerseits zu einer agileren und effizienteren Entwicklung beitragen. Erfahren Sie mehr im Whitepaper "Container optimal im Griff".
Whitepaper hier anschauenWettbewerbsvorteile durch Container
Wie wirkt sich der Einsatz moderner Entwicklungsmethoden tatsächlich auf den Geschäftserfolg aus? Sehen Sie es in der Infografik.
Hier anschauenJetzt Artikel teilen:
DAS KÖNNTE SIE AUCH INTERESSIEREN:
Durch Microservices lässt sich die Entwicklung und der Rollout komplexer Anwendungen flexibler gestalten.
CI/CD steht für eine Sammlung von Techniken, Prozessen und Werkzeugen, um die Softwareentwicklung und -auslieferung zu verbessern.
Bei der Digitalisierung oder Digitalen Transformation spielt die IT-Organisation eine entscheidende Rolle. Erfahren Sie mehr über die wichtigsten Bausteine der IT der...
Bitte wählen Sie einen der unten stehenden Links, um zum gewünschten Portal zu gelangen.
Bei Fragen oder technischen Problemen wenden Sie sich bitte an Ihre gewohnten Ansprechpartner.
Für die Darstellung dieser Inhalte von YouTube benötigen wir Ihre Einwilligung. Wenn Sie die Inhalte aktivieren, werden Ihre Daten verarbeitet und es werden Cookies auf Ihrem Endgerät gespeichert sowie von diesem gelesen.
Weitere Informationen finden Sie in unserer Datenschutzerklärung.
Einwilligung für 30 Tage ( in einem Cookie) speichern