DevOps dekodiert: Eine Management-Einführung So bereiten Sie sich auf DevOps vor

Autor / Redakteur: Gerardo Dada * / Dipl.-Ing. (FH) Andreas Donner |

Unternehmen können sich nur so schnell entwickeln und so erfolgreich sein, wie die IT es ihnen ermöglicht. Immer mehr Unternehmen haben sich daher zum Ziel gesetzt die Flexibilität und Leistung ihrer IT-Abteilung mit dem Ziel zu erhöhen, die Art und Weise der Zusammenarbeit zwischen Teams vollkommen zu revolutionieren. Und die zugehörige Zauberformel heißt DevOps.

Anbieter zum Thema

DevOps ist im Kern ein moderner Ansatz zur Softwareentwicklung.
DevOps ist im Kern ein moderner Ansatz zur Softwareentwicklung.
(Bild: © Andrew Stefanovsky - Fotolia.com)

Auch wenn DevOps als das Modewort des Jahres bezeichnet werden kann (nun ja, vielleicht an dritter Stelle nach „Container“ und „Big Data“), herrscht große Uneinigkeit darüber, was es eigentlich bedeutet und wie Unternehmen von diesem Trend profitieren können.

Warum ist es so schwer, DevOps zu definieren? Die Verwirrung rührt teilweise daher, dass es sich bei DevOps um eine sich organisch entwickelnde Idee handelt, deren Implementierungs- und Nutzungsweisen sich ständig weiterentwickeln. Noch wichtiger ist vielleicht die Tatsache, dass viele Unternehmen DevOps weiterhin als spezifische Funktion oder als Toolset begreifen, das in der Regel ausschließlich Cloud-Umgebungen vorbehalten ist, anstatt es als Mentalität zu sehen.

DevOps ist im Kern ein moderner Ansatz zur Softwareentwicklung, der das Ziel verfolgt, die Trennung zwischen Entwicklungs- und Operations-Teams aufzuheben und gemeinsame Prozesse und Verantwortlichkeiten zu fördern, um ein besseres Verständnis der Softwareleistung zu erlangen.

Im Gegensatz zur üblichen Softwareentwicklung, in der der es einzelne Teams für alle Arbeitsschritte gibt, tragen die Entwickler in einer DevOps-Umgebung gemeinsam die Verantwortung für das Testen und den Betrieb. Jeder ist für die Performance verantwortlich, und jeder nutzt dieselben Tools und verfolgt dieselben Ziele. Das Team kann Änderungen an der Software schneller und kleinteiliger vornehmen, was zu einer effizienteren, effektiveren und flexibleren IT-Abteilung und einer verbesserten Qualitätssicherung für den Endbenutzer führt.

DevOps bringt Herausforderungen mit sich

Trotz aller Vorteile bringt DevOps jedoch auch neue Herausforderungen mit sich. Insbesondere der Umbruch, der einem herkömmlichen Rechenzentrum bevorsteht, wenn eine DevOps-zentrierte Umgebung unterstützt werden soll, kann sich nachteilig auf ein Unternehmen auswirken.

Die zunächst größte Herausforderung ist es, IT-Experten zu finden, die über das entsprechende Know-how verfügen. Solange es nicht möglich ist, einen DevOps-Experten einzustellen, müssen Unternehmen stattdessen in die Schulung ihrer bestehenden Teams investieren, experimentieren und sich in der neu bereitgestellten DevOps-Umgebung vorantasten.

Die gute Nachricht besteht darin, dass die meisten Unternehmen ihre eigenen Best Practices bereitwillig teilen; die schlechte Nachricht lautet, dass die meisten Entwicklerteams schon jetzt unterbesetzt sind. Administratoren bleibt somit wenig Zeit dafür übrig, alle Änderungen zu durchdenken, zu entwickeln, zu testen, zu optimieren und zu implementieren, die für die erfolgreiche Umstellung auf einen DevOps-Prozess notwendig wären.

Dies erfordert nicht nur ausreichend Zeit, um sich mit dem Prozess vertraut zu machen, sondern auch eine Entscheidung darüber, wie bestehende Prozesse und Fähigkeiten mit einem neuen DevOps-Modell in Einklang gebracht werden können. Auch die Änderung der Unternehmenskultur, die erforderlich ist, um eine neue Mentalität anzunehmen, sollte nicht unterschätzt werden.

Auch wenn eine erfolgreiche Umstellung in vielen Fällen einige Monate dauern kann, sollten Unternehmen schon heute damit beginnen, sich darauf vorzubereiten. Damit die zukünftige Umstellung auf eine DevOps-Umgebung möglichst reibungslos abläuft, können Unternehmen zunächst die zugrundeliegenden Prinzipien, die DevOps so großartig machen, nachvollziehen und übernehmen:

Umfassende Überwachung und Automatisierung

Für einen DevOps-Prozess muss alles überwacht und automatisiert sein. Die Transparenz des gesamten Anwendungsstapels und aller Elemente, die für die Leistung verantwortlich sind, spielt für die Geschwindigkeit und die erfolgreiche Zusammenarbeit eine zentrale Rolle. Die Auswirkungen jeder Änderung sollten bekannt sein. Um schneller vorgehen zu können, sollten Codebereitstellungen, Tests, Überwachung, Warnungen usw. automatisiert werden. Auch IT-Dienste sollten Self-Service-Angebote für Benutzer beinhalten und sich auf das konzentrieren, was wirklich wichtig ist.

Zusammenarbeit

Die Zusammenarbeit steht im Mittelpunkt einer erfolgreichen DevOps-Mentalität und Vorgehensweise. Das Ziel besteht letztendlich darin, dem Endnutzer die bestmögliche Anwendungsleistung zu bieten, und das ist mit Silos nicht möglich. Wenn eine Anwendung ausfällt, hat jeder versagt. Es gibt kein Datenbankteam. Es gibt kein Virtualisierungsteam. Es gibt kein Speicherteam. Es gibt nur das Entwicklungs-/Operations-Team, das dafür verantwortlich ist, dass Anwendungen die gewünschte Leistung erbringen.

Dies erfordert Transparenz, Sichtbarkeit, ein einheitliches Toolset und eine gute Zusammenarbeit. Wenn die Silos herkömmlicher Rechenzentrumsteams aufgelöst werden und die Teams hinter dem gemeinsamen Ziel der Endbenutzerleistung vereint werden, können sich Unternehmen darauf vorbereiten, langfristig ihre Entwicklungs- und Operations-Teams zu integrieren und zu verwalten.

Geschwindigkeits- und Serviceorientierung

Um auf dem Weg der Flexibilisierung noch einen Schritt weiterzugehen, sind kürzere, sich wiederholende Prozesse zu bevorzugen, damit Teams schneller voranschreiten, Innovation schaffen und effektiver für das Unternehmen tätig sein können. Entwicklungs- und Produktionszyklen nehmen nur noch Stunden anstelle von Monaten in Anspruch. Dies ist ein wichtiger Vorteil von DevOps, doch man darf nicht vergessen, dass der Einsatz von DevOps-Methoden trotz des Fokus auf Geschwindigkeit durch „Sprint-Projekte“ keinen Einfluss darauf hat, wie erfolgreich ein Unternehmen umfangreiche und langfristige Projekte durchführen kann. Außerdem sollte auf monolithische Anwendungen verzichtet werden. Alles ist ein Service, von Anwendungskomponenten bis zur Infrastruktur. Alles ist flexibel und kann nach Bedarf skaliert oder geändert werden.

Anwendungs- und Endbenutzerfokus

Wenn sich ein Unternehmen auf die Einführung von DevOps-Methoden vorbereitet, ist es von großer Bedeutung, dass sich der Fokus aller Unternehmensbereiche auf die Endbenutzer und die von ihnen benötigten Anwendungen richtet. Die Performance einer Codezeile und die Messdaten einer Komponente des Anwendungsstapels sind nur insofern relevant, als dass sie die Anwendungsleistung beeinflussen. Die Leistung muss zu einer Disziplin werden. Daher werden Entwicklungs-, Operations- und QA-Teams zusammengeführt und somit Aktualisierungen, Änderungen, Bereitstellungen und Problemlösungsverfahren beschleunigt, was wiederum zu einem verbesserten Endbenutzererlebnis führt.

Gerado Dada.
Gerado Dada.
(Bild: SolarWinds)

Fazit

Das DevOps-Konzept nimmt eindeutig an Fahrt auf und dringt zunehmend auch in die herkömmlichen IT-Abteilungen vor Ort ein. Auch wenn die Umstellung auf eine DevOps-Umgebung nicht über Nacht geschieht und man sich vor der Umstellung der auftretenden Herausforderungen bewusst sein muss, sind viele Unternehmen auf dem besten Weg, von den zahlreichen Vorteilen der DevOps-Methodik zu profitieren.

Zwar ist es nicht einfach, den Begriff „DevOps“ genau zu definieren, doch dieser positive organisationsbezogene Trend wird nicht nur den IT-Abteilungen in Unternehmen zur Innovation verhelfen, sondern hat auch das Potenzial, die Rechenzentren von heute drastisch zu verändern.

* Gerardo Dada ist Vice President of Product Marketing and Strategy bei SolarWinds.

(ID:44422503)