Mit DevOps werden Unternehmen fit für die Zukunft. Das zugehörige Prinzip macht Entwicklungsprozesse flexibler und optimiert viele der bis heute bestehenden, starren Zyklen bei der Entwicklung von IT-Produkten. Dies betrifft sowohl Smartphone-Apps als auch Website-Projekte oder beispielsweise Anlagensteuerungen mit und ohne Robotereinsatz.
Große Unternehmen wie Facebook, Google oder Amazon machen es vor: Dank der Integration von DevOps in die betrieblichen Prozesse veröffentlichen sie laufend neue Funktionen, ohne dass es langer Entwicklungszyklen bedarf. Wir klären auf, wie Sie ebenfalls von diesem Ansatz profitieren können und wo die Unterschiede zu agilen Prozessen liegen.
Was ist eigentlich DevOps und welchen Nutzen bringt es?
Hinter DevOps verbirgt sich ein Kunstbegriff aus „Development” und „Operations”. Gemeint ist eine effiziente Verzahnung von Entwicklung und tatsächlicher Nutzung von Produkten oder Funktionen. Ähnlich wie bei agilen Strategien kommt ein Modell zum Einsatz, das fortlaufende Rückmeldungen darüber ermöglicht, wie sich getroffene Entscheidungen auswirken und wie gut fertige Produkte oder deren Bestandteile funktionieren.
Der DevOps-Ansatz beschränkt sich jedoch nicht auf die reine Entwicklungsarbeit, sondern bezieht auch das operative Geschäft mit ein. Während sich agile Ansätze häufig auf einzelne Abteilungen oder Vorhaben beschränken, bedeutet der Einsatz von DevOps-Verfahren meist auch einen Wandel in der Unternehmenskultur. DevOps kann daher als konsequente Weiterentwicklung und Übertragung agiler Ansätze auf das gesamte operative Geschäft eines Unternehmens (also sowohl von Entwicklung als auch Operations (Betrieb)) verstanden werden.
Eine immer größer werdende Produktkomplexität, steigende Anforderungen an die Flexibilität sowie das Vorhandensein von Big Data (also riesigen Datenmengen, die mit herkömmlichen Methoden kaum auswertbar sind) bedingen ohnehin einen Wandel in der Herangehensweise an Neu- und Weiterentwicklungen auf IT-Seite.
Unternehmen, die für Neuentwicklungen zunächst eigene Infrastrukturen wie Testserver, Entwicklungsumgebungen oder Staging-Systeme aufsetzen müssen, geraten aufgrund gebundener Ressourcen und hohem Zeitbedarf schnell in Nachteil. Unter anderem aus diesem Grund laufen viele IT-Anwendungen heutzutage nicht mehr On-Premises (also vor Ort im Unternehmen), sondern in der Cloud.
Das gilt auch für DevOps: Da viele DevOps-Hilfsmittel, Plug-ins und Tools (sogenannte „Software as a Service”-Dienstleistungen, „SaaS”) auf Open-Source-Lizenzen basieren, stehen deren aktuelle Versionen in der Cloud schon für jedermann bereit und müssen nicht erst aufwändig vor Ort installiert oder gar erst entwickelt werden.
Vorteile sind somit neben sinkenden IT-Infrastrukturkosten auch der schnelle und jederzeitige Zugriff auf verfügbare Updates und die automatische Anwendung der jeweils aktuellsten verfügbaren Sicherheitsmechanismen.
DevOps-Strukturen mit zusätzlich angepasstem Sicherheitsmanagement an den Schnittstellen zwischen Betrieb und Entwicklung eines Unternehmens werden auch als „DevSecOps” bezeichnet, wobei das „Sec” für „Security”, also Sicherheit, steht.
Effiziente Verzahnung von Entwicklung und tatsächlicher Nutzung von Produkten oder Funktionen nach dem DevSecOps-Prinzip
DevOps-Arbeitsmethoden im Vergleich mit Scrum und Co.
Deutlich verbreiteter als eine komplette Fokussierung von Unternehmen auf das DevOps-Prinzip ist aktuell noch die Konzentration auf agile Entwicklungsmodelle wie Scrum, Kanban und Co.
Diese Modelle setzen ebenfalls auf schnelle Rückkopplung aufgrund erkannter Probleme und beinhalten neben festgelegten Entwicklungszeiträumen häufige Releases – in Industriebetrieben und bei komplexen Unternehmensstrukturen kommt es jedoch auf weit mehr an.
DevOps-Ansätze können im Gegensatz dazu auch im technischen Release-Management, dem Software-Konfigurationsmanagement und in Anwendungsumgebungen zum Einsatz kommen – ohne dass hierfür jedes Mal eigene Schnittstellen programmiert werden müssen: Möglich machen dies die oben erwähnten Cloud-Ansätze, bei denen sich Entwickler:innen lediglich aus Baukästen bedienen müssen, oder vorgefertigte Schnittstellen, die diverse Software-Hersteller (beispielsweise für Anlagensteuerungen) mittlerweile zu ihren Lösungen als Add-on oder inklusive anbieten.
Während also Scrum und Co. auf bestehenden Entwicklungsstrukturen aufbauen und möglicherweise Lösungen hervorbringen, die dann nur innerhalb des Unternehmens genutzt werden können, setzt DevOps eine Abstraktionsebene höher an: Anstelle von Servern, Betriebssystemen und fest installierten Entwicklungsumgebungen kommen hier Cloud-Lösungen und Container zum Einsatz. Das sogenannte CaaS („Container as a Service”)-Prinzip sorgt dafür, dass Sie aus einer ganzen Fülle von vorgefertigten Programmier-Methoden und Funktionen schöpfen können, die stets auf dem neuesten Stand sind.
Voraussetzung für eine erfolgreiche Umsetzung von DevOps ist allerdings, dass die Bereiche Entwicklung und Betrieb konsequent und bei neuen Projekten von Anfang an zusammenarbeiten. Dazu müssen natürlich alle beteiligten Mitarbeiter:innen entsprechend geschult sein.
So gelingt DevOps in der Praxis
Da es sich wie erwähnt bei DevOps um eine Schnittstellenfunktion zwischen Entwicklung und eigentlichem Betrieb (oder Auslieferung) eines Produkts handelt, setzt die Hauptarbeit von DevOps-Verantwortlichen genau dort an, wo beide Bereiche ineinander übergehen.
Da viele Produkte derart komplex sind, dass selten eine einzelne Person alle Aufgaben und Zusammenhänge überblicken kann, muss ein:e DevOps-Verantwortliche:r zunächst die entsprechenden Zuständigkeiten und dazugehörigen Personen für ein Projekt, ein Feature oder eine Neuentwicklung ermitteln und deren Sichtweisen kennen. Üblicherweise sind dies:
Product Owner: Er oder sie definiert Anforderungen an ein Produkt, die anschließend von der Entwicklungsabteilung umgesetzt werden.
Entwicklungsverantwortliche:r: Hier findet die eigentliche Entwicklung der geforderten Funktionalität statt.
Qualitätsmanagement: Hier werden entwickelte Komponenten oder ganze Produkte auf ihre Lauffähigkeit und den Kundennutzen hin überprüft und gegebenenfalls werden Feedbackschleifen durchlaufen.
Operations Department: Betreut die Produktivumgebung und stellt die geforderten Service-Level sicher.
Infosec: Der oder die Information-Security-Verantwortliche(n) stellt oder stellen sicher, dass Systeme und Daten geeignet abgesichert werden.
Release-Manager:in: Verwaltet und koordiniert den Deployment- und Release-Prozess
Wertketten-Manager:in: Überprüft, ob die Erwartungen des Kunden erfüllt oder gar übertroffen wurden.
In der Praxis kollidiert häufig das Tagesgeschäft mit einer konsequenten Veränderung hin zu DevOps-Prinzipien und es wird nach einem festen, eingespielten Ablaufplan gearbeitet. Aus diesem Grunde muss ein:e DevOps-Manager:in häufig zwischen den beteiligten Bereichen vermitteln, für gegenseitige Unterstützung werben und gemeinsam gepflegte Tools und Plattformen vorschlagen und gegebenenfalls implementieren oder anpassen. Im Idealfall entsteht hierdurch eine abteilungsübergreifende Zusammenarbeit mit zahlreichen Feedbackmöglichkeiten:
Der Bereich Operations sollte dafür sorgen, dass das Entwicklerteam geeignete, produktionsähnliche Testumgebungen zur Verfügung gestellt bekommt – die also der Realität möglichst nahe kommen.
Außerdem sollte die Entwicklungsabteilung ihre Deployment-Pipelines gemeinsam mit Operations entwickeln und abarbeiten.
Automatisiertes Testen kann ebenfalls dabei helfen, schnell(er) zu verwertbaren Ergebnissen oder Feedback zu kommen.
Staging-Modell: Sämtliche Plattformen und Services sollten für den Live-Betrieb gefahrlos zur Verfügung stehen, ohne dass zunächst Tickets oder Requests erstellt werden müssen. Hierzu bietet sich beispielsweise bei IT-Strukturen eine redundante Auslegung an, bei der jeweils eine Komponente für den Live-Betrieb und die andere als Testumgebung für neue Features dient. Treten Fehler auf, kann ein Rollback ohne Beeinflussung des Live-Systems erfolgen.
Hybridfunktionen: In modernen DevOps-Organisationen sitzen meist Vertreter:innen beider Abteilungen in der jeweils anderen und können bei Abweichungen von der jeweils anderen Sichtweise sofort eingreifen und nicht erst, wenn viel Arbeit in ein System oder eine Systemanforderung gesteckt wurde.
In der Summe verhindert eine konsequente Zusammenarbeit zwischen Entwicklung und Operations also unnötige Verzögerungen in der Produktentwicklung, sorgt für mehr Sicherheit im laufenden Betrieb und bringt schnellere, verwertbarere und nützlichere Ergebnisse für den Kunden.
Eine mögliche Unterstützung für DevOps bieten auch sogenannte Digital-Twin-Verfahren: Hier werden sämtliche Entwicklungsschritte bis hin zum fertigen Produkt nicht anhand abstrakter Testmodelle, sondern mit digitalen Nachbildungen des Live-Systems durchgespielt. Die konsequente Zusammenarbeit zwischen Development und Operations gehört hier naturgemäß zum Pflichtprogramm.
Empfohlener externer Inhalt
Hier ist ein Video-Inhalt von YouTube. Er ergänzt die Informationen auf dieser Seite. Sie können ihn mit einem Klick anzeigen und wieder ausblenden.
Ich bin einverstanden, dass externe Inhalte angezeigt werden. So können personenbezogene Daten an Drittplattformen übermittelt werden. Mehr in unserer Datenschutzerklärung.
Sogenannte DevOps-Ingenieur:innen sorgen für eine effiziente Zusammenarbeit sämtlicher Unternehmensbereiche. Sie implementieren und optimieren entsprechende Tools für die konkreten Anforderungen. Ihre Aufgabe besteht unter anderem darin, die angestrebte Verzahnung von Entwicklungs- und operativem Geschäft zu ermöglichen. Ein:e DevOps-Ingenieur:in sollte sich also in mehreren Bereichen auskennen:
Programmierung von Skripten und Entwicklertools, beispielsweise in Java
Administration von bestehenden Systemen, beispielsweise unter Linux
Testverfahren, unter anderem agiles Testen
Verwaltung von Zertifikaten
Kenntnis der Funktionsweise von IT-Sicherheitskonzepten
Neben den genannten harten Skills sind aber auch eine Reihe von Soft Skills von Bedeutung. So sind DevOps-Ingenieur:innen mehr denn je gefordert, sich ihr Berufsleben lang über neue Arbeitsmethoden und Ansätze zu informieren und einen guten Überblick über verfügbare Tools und Standards zu behalten.
Im Gegensatz zu IT-Systemadministrator:innen beschränkt sich der Aufgabenbereich somit nicht auf die reine Verwaltung und Inbetriebnahme von Systemen: DevOps-Ingenieur:innen sorgen auch dafür, dass die richtigen Tools an den richtigen Stellen zum Einsatz kommen und umfangreich an die jeweiligen Bedürfnisse angepasst werden.
Vodafone Campus-Netze: 5G und IoT im Zusammenspiel
Egal, welche Art von Campus-Netz Sie aufbauen wollen: Vodafone hat für jeden Bedarf das richtige Angebot.
Mit DevOps-Verfahren können Sie unter Zuhilfenahme bewährter agiler Prinzipien die Zusammenarbeit von Entwicklung und operativem Bereich optimieren und so die Fertigstellung neuer Funktionen und Produkte beschleunigen.
Wenden Sie das Prinzip der ständigen Rückkopplung zusätzlich auf den laufenden Betrieb im Unternehmen an, erhalten Sie auch hier fortlaufendes Feedback.
Durch die höhere Abstraktionsebene verabschieden sich DevOps-Unternehmen immer mehr von Serverinfrastrukturen und nutzen unter anderem CaaS-Ansätze mit frei nutzbaren Containern.
DevOps-Ingenieur:innen kümmern sich um die notwendige Schnittstellenarbeit zwischen Betrieb und Entwicklung und implementieren entsprechende Tools.
Cloud-Back-up: So sichern Sie Ihre Daten einfach und bequem in der Wolke
Immer genug Speicher selbst für riesige Datenmengen und das in der Summe kostengünstiger als bei vergleichbaren lokalen Speicherlösungen wie RAID-Systemen: Ein Cloud-Back-up bietet Ihnen viele Vorteile. Mit dem richtigen Back-up-Konzept können Sie noch viele weitere Stärken der Datensicherung im Internet nutzen. Dazu gehört beispielsweise die fast unterbrechungsfreie Wiederherstellung Ihrer IT nach einem Systemausfall.
Mit einem weltweiten Umsatz von mehr als 500 Milliarden US-Dollar gehört das Cloud-Computing zu den großen Wachstumstreibern in der IT-Welt. In Deutschland nutzen über 80 Prozent aller Unternehmen eine Private oder Public Cloud zum Speichern wichtiger Geschäftsdaten. Das hat der „Cloud Report 2024“ des Branchenverbandes Bitkom ermittelt.
Das Arbeiten in der Cloud spart nicht nur Zeit, Kosten und Energie. Es bietet auch viele weitere Vorteile für Unternehmen. Das zeigt sich beispielsweise beim Cloud-Back-up. Wie die Datensicherung in der digitalen Wolke funktioniert und was Sie dabei beachten sollten, erfahren Sie hier.
Was ist Docker? Komponenten und Funktionalitäten einfach erklärt
Mit virtuellen Computern aus der Cloud setzen Sie sich ganz einfach neue Entwicklungsumgebungen für das Software-Development auf. Noch leichter geht dies mit Software-Containern, die Sie bequem per Docker erstellen. Was die Container-Software noch alles kann und wie Sie sie verwenden, erfahren Sie hier.
Das Cloud-Angebot für Unternehmen reicht inzwischen von Office-Anwendungen wie Microsoft 365 bis hin zu spezialisierten Angeboten wie Functions-as-a-Service (FaaS). Bei FaaS können Sie gezielt einzelne Funktionen anmieten, etwa aus dem Bereich der künstlichen Intelligenz. Ein prominentes, aktuelles Beispiel hierfür ist der Chatbot ChatGPT, der auf KI basiert, API-fähig ist und somit in andere Anwendungen integriert werden kann.
Viele Anwendungen dieser Art laufen in der Cloud heute virtualisiert. Eine Softwarevirtualisierung von Anwendungen können Sie auch selbst über sogenannte Software-Container umsetzen: beispielsweise mit Docker. Was Docker ist und wie Sie es sinnvoll für Ihr Business einsetzen, erfahren Sie hier.
SaaS-Entwicklung ganz einfach: In 5 Schritten zum Erfolg
Die Kostenexplosion im Softwarebereich betrifft viele Unternehmen. Durch den Einsatz von SaaS (Software-as-a-Service) können Sie hohe Anfangsinvestitionen vermeiden. Die Kosten für Unternehmen bleiben durch Abonnements-Modelle in einem festgelegten Rahmen. Zudem sinken die internen IT-Kosten, da Wartung und Administration der gebuchten Services in der Hand des SaaS-Dienstleisters liegen.
Software-as-a-Service (SaaS) bietet komplette Softwareanwendungen über das Internet an. Bekannte Beispiele für browserbasierte Cloud-Anwendungen sind Microsoft 365 und Applikationen im Google Workspace. Das Angebot ist jedoch nicht auf solche Standard-Anwendungen begrenzt, sondern umfasst alle Arten von Applikationen.
Cloud-Access-Security-Broker: Cloud-Sicherheit auf höchstem Niveau
Cloud-Computing ist für viele Firmen ein essenzieller Teil der Geschäftsprozesse und kann sämtliche Unternehmensbereiche umfassen. Doch die in der Cloud angesiedelten Services und Geschäftsdaten stellen ein verlockendes Ziel für Kriminelle dar. Eine gute Cybersicherheit ist aus diesem Grund unabdingbar. „Cloud-Access-Security-Broker” (CASB) fügen Ihrer Cyber Security eine zusätzliche Schutzschicht hinzu.
Datendiebstahl kann für Unternehmen verheerend sein. Laut der Studie „Wirtschaftsschutz 2024“ des Branchenverbands Bitkom sind 81 Prozent der deutschen Unternehmen in den vergangenen Monaten Ziel von Datendiebstahl und digitaler Industriespionage geworden. Geschäftsprozesse, die auf der Cloud basieren und gleichzeitig dezentral organisiert sind, erfordern eine konstante Überwachung. Cloud-Access-Security-Broker nehmen dabei eine wichtige Rolle ein.
Was genau ist ein Cloud-Access-Security-Broker? Und welche Funktion kann diese Anwendung im Zuge der Cybersicherheit Ihres Unternehmens erfüllen? Das erfahren Sie in diesem Artikel.
Wenn Ihr Computer nicht mehr läuft, zum Beispiel weil ein Update fehlgeschlagen oder die Festplatte beschädigt ist, oder wenn Viren auf das Smartphone gelangt sind, existiert eine schnelle Lösung: das Wiederherstellen eines Back-ups. Wie das funktioniert und worauf Sie dabei achten müssen, erfahren Sie hier.
Es ist relativ einfach, Daten und Computer aus einer Sicherungskopie (engl. Back-up) wiederherzustellen. Die Vorgehensweise unterscheidet sich je nach Gerät und Betriebssystem. Sie ist auch abhängig davon, ob Sie ein Cloud-basiertes, lokales oder hybrides Back-up wiederherstellen möchten. Falls Sie Ihre Back-ups mit spezieller Software erstellen, sollten Sie die gleiche Anwendung auch für die Wiederherstellung verwenden.