DevOps
Das DevOps Modell beschreibt die Aspekte Unternehmenskultur, Automatisierung und Plattformdesign mit dem Ziel, kontinuierlich IT Services in hoher Qualität zu liefern. Das gemeinsame Ziel wird mit crossfunktionalen, produktorientierten Teams erreicht. Der Wertschöpfungsbeitrag der IT Teams erhöht sich und die Reaktionszeit zur Umsetzung neuer Geschäftsanforderungen wird verkürzt.
Warum DevOps
Das Team von neusta inspire ist dem Segelsport verschrieben und so, wie man auf einem Segelboot Hand in Hand arbeiten und sich vertrauen muss, funktionieren wir gemeinsam im Team. Ein Schiff kann man mit einer Organisation vergleichen. Je größer eine Organisation wird, desto schwieriger wird die Kommunikation zwischen den Abteilungen. Die verschiedenen Teams haben unterschiedliche Aufgaben, Spezialisierungen und Ziele.
Bei der Entwicklung von Software möchte das Entwicklungsteam schnell auf neue Anforderungen reagieren und Updates bereitstellen. Das Betriebsteam ist für die Performance und Stabilität verantwortlich. Die unterschiedlichen Ziele führen zu unterschiedlichen Einschätzungen und Handlungsweisen. Missverständnisse zwischen Entwicklung und Betrieb sind die Folge. Es entstehen lange Releasezyklen, die den aktuellen Geschäftsanforderungen nicht gerecht werden.
Die „Wall of Confusion“ steht für die unterschiedlichen Sichtweisen von Entwicklung und Betrieb und der sich daraus ergebenden Probleme. Wie können wir erreichen, dass Zusammenarbeit effizienter gestaltet wird? Hierfür bedarf es einer neuen Unternehmenskultur. Das DevOps Modell formuliert ein gemeinsames Ziel für crossfunktionale Teams: Es werden kontinuierlich IT Services in hoher Qualität geliefert. Dazu werden SLOs (Service Level Objectives) definiert, die Aspekte wie Verfügbarkeit und Performance beschreiben. Werden diese Ziele erreicht, können die Teams neue Anforderungen und Verbesserungen umsetzen. Werden die Ziele nicht erreicht, arbeiten die Teams an der Stabilisierung und Behebung von Problemen.
Der Aspekt Automatisierung vermeidet manuelle und wiederkehrende Arbeitsabläufe. Die verwendeten Tools im Team werden angeglichen und für Entwicklung, DevOps und Betrieb gleichermaßen eingesetzt. Dazu zählt die Entwicklungsumgebung und das Versionskontrollsystem für Software, IaC (Infrastructure as Code) und Konfiguration. Brüche in Arbeitsabläufen, durch unterschiedliche Tools und durch aufwändige Kommunikation sowie zahlreiche Schnittstellen zwischen Abteilungen werden vermieden.
Das Plattformdesign folgt dem production-first Ansatz, bei dem der bereitgestellte IT Service an erster Stelle steht. Klassische Architekturen weisen oft zentrale Komponenten auf, deren Wichtigkeit durch kurze und bekannte Namen unterstrichen wird. Aussagen wie „Ohne server cisystem ist kein Deployment möglich.“ weisen darauf hin. Im DevOps Modell werden diese zentralen Komponenten abgelöst. Eine flexible und anpassungsfähige Struktur mit leichtgewichtigen Software Containern tritt an ihre Stelle. Namen sind häufig lange Buchstaben und Zahlenkombinationen und unterstreichen damit, dass Komponenten leicht ersetzbar sind.
DevOps umfasst Ansätze, wie eine Idee von der Entwicklung bis zum Einsatz in der Produktivumgebung beschleunigt werden kann, um dort zur Wertschöpfung beizutragen. Diese Ansätze erfordern eine regelmäßige Kommunikation zwischen Entwicklungs- und Operations-Teams sowie eine gute Zusammenarbeit.
Weiterführende Informationen
Bleiben Sie auf dem Laufenden
Wie Ihnen dieses Modell helfen kann
Das erste der zwölf Prinzipien des Manifests für agile Software-Entwicklung besagt: „Unsere höchste Priorität ist es, den Kunden durch frühe und kontinuierliche Lieferung wertvoller Software zufriedenzustellen“. Das ist der Grund, warum CI/CD (Continuous Integration/Continuous Deployment) für die agile Softwareentwicklung wichtig sind. Das DevOps Modell entwickelt dieses Prinzip konsequent weiter. Pipelines werden integrativer und umfassender, indem sie die Systemumgebung mit einbeziehen. Konfigurationsdaten und Infrastructure as Code werden in Deployments eingebunden. Software wird zusammen mit allen benötigten Modulen und Systemkomponenten in Container geliefert. Durch weitreichende Automatisierung erfolgt dies reproduzierbar, sicher und schnell und sichert damit einen entscheidenden Wettbewerbsvorteil.
Verfügbarkeit
Automatisierung und Transparenz sorgen für eine schnelle und infrastrukturunabhängige Bereitstellung von neuen IT Services.
Wartungsfenster werden durch kurze Deployments verkleinert und Ausfallzeiten durch automatische Restarts minimiert.
Skalierbarkeit
DevOps erreicht durch den SaaS (Software as a Service) und IaaS (Infrastructure as a Service) Ansatz höchste Skalierbarkeit für Ihre Anwendungen auf Containerized Application Plattformen, in Cloud und Data Center Umgebungen.
Der IaC (Infrastructure as Code) Ansatz unterstreicht die Flexibilität und Transparenz dieses Modells und macht Änderungen in Ihrem Versionskontrollsystem nachvollziehbar.
Sicherheit
Logging und Monitoring sind zentraler Bestandteil des IT Servicebetriebs. Sicherheitsvorfälle werden ohne Verzögerung erkannt.
Mangelnde Aktualisierung von Software stellt das größte Sicherheitsrisiko in aktuellen Systemlandschaften dar. Das DevOps Modell ermöglicht kurzfristige Updates ohne Betriebsunterbrechung. Lange Vorbereitungen und Unsicherheiten vor einem manuellen Release gehören im DevOps Modell der Vergangenheit an.
IT Teams, die das DevOps Modell einsetzen, performen überdurchschnittlich.
- 30x häufigere Deployments
- 360x weniger Fehler
- 3 60x höhere Change-Erfolgsrate
- 3160x schnellere Erholung von Fehlern
Quelle: State of DevOps Report (2015) der puppet labs
DevOps mit neusta inspire
Häufig wird DevOps mit Infrastruktur-Automatisierung bzw. CI/CD gleichgesetzt. Aber DevOps geht weit darüber hinaus. Wir begleiten Sie bei dem Wechsel zur DevOps-Philosophie und bieten DevOps als Service oder als Teil des Softwareentwicklungsprozesses an. Weitere unserer Services beinhalten die kontinuierliche Integration und Bereitstellung von Software, die Automatisierung, das Release-Management, die Wartung und den Support umfassen, sowie Monitoring, Application Operation, Test und Konfigurationsmanagement.
Oberstes Ziel von DevOps ist es, schnell die qualitativ hochwertigste Software an den Endkunden zu liefern. Um dies zu erreichen, muss DevOps in allen Phasen der Softwareentwicklung und -bereitstellung implementiert werden. Wir helfen Ihnen dabei, crossfunktionale Teams zusammenzubringen und die neue Arbeits- und Denkweise anzunehmen. Und wir begleiten Sie bei dem kulturellen Wandel, der Ihr Unternehmen voranbringt!
Unsere Dienstleistungen
- DevOps Consulting-Dienstleistungen
- DevOps Konfigurationsmanagement
- DevOps Automation
- End-to-End-Tests
- Überwachung und Sicherung
- Installation von Softwarelösungen von Drittanbietern
- Wartung und Support