Während Entwickler - viele schon agil unterwegs - die aktuellsten Features ihrer Software möglichst schnell in Produktion bringen wollen, bremsen verantwortungsvolle IT-Operatoren diesen Elan häufig durch Anforderungen nach Stabilität, Sicherheit und damit Verfügbarkeit aus. Die unterschiedlichen Sichtweisen führen - insbesondere bei organisatorischer Trennung von Entwicklung und Betrieb - zu Missverständnissen, langen Release-Zyklen und damit unzufriedenen Kunden/Nutzern. Spät erkannte Fehler durch unterschiedliche Laufzeitumgebungen (Test, Staging, Produktion) und Verfügbarkeitsengpässe von "Kopfmonopol-Trägern" (z.B. durch Überlastung oder Krankheit) tun ihr Übriges.

Wie kann DevOps helfen?

Das Kofferwort DevOps signalisiert die Verbindung der beiden Bereiche/Tätigkeitsfelder Development (Entwicklung) und Operations (IT-Betrieb). Sehr stark vereinfacht könnte man sagen, es geht um die intensive Abstimmung zwischen denen, die Software erstellen und denen, die diese Software auf einer geeigneten Plattform betreiben. Eine Selbstverständlichkeit, werden Sie korrekterweise anmerken. Das allein wäre aus unserer Sicht aber zu kurz gesprungen.

 

PLAN & CODE
  • Entwicklung der Software/des Services
  • Erstellung automatisierbarer Tests, die geschäftskritische Funktionalitäten auf Korrektheit prüfen
  • Containerisierung und Orchestrierung: Der Einsatz der Containertechnologie (z.B. Docker, CRI-O, rkt) ist mittlerweile in vielen Bereichen Standard. Anwendungssoftware wird immer häufiger in Form von mehreren unabhängigen Microservices realisiert. Dem damit einhergehenden, deutlich höheren Orchestrierungsaufwand (Interaktion, Sicherheit, Verfügbarkeit) begegnet man mit Tools wie z.B. Kubernetes/Open Shift. Features wie Automatic Failover, Load-Balancing, A/B-Testing und Canary-Deployments - um nur einige zu nennen - werden damit zur Selbstverständlichkeit.
  • Infrastructure-As-Code: Nicht nur die Anwendungs-Software, sondern die gesamte für den Test, das Staging und den Produktionsbetrieb notwendige Infrastruktur (VMs, Netzwerke, Kubernetes/Openshift, etc.) inklusive ihrer Konfiguration wird automatisiert bereitgestellt und gewartet. Egal ob in der Cloud (AWS, Azure, GCE) oder OnPremise im eigenen Rechenzentrum. Der entstehende Code (z.B. Terraform, Ansible) wird zusammen mit dem Anwendungs-Code im gleichen Repository versioniert und somit die exakte Nachvollziehbarkeit des kompletten Systems sichergestellt.
  • Automate everything: Jeder manuelle Schritt und sei es nur ein einfacher Mausklick, verzögert den Prozess der Softwarentwicklung und ist fehleranfällig. Dies gilt insbesondere auch für die manuelle Bereitstellung notwendiger Infrastruktur und deren Konfiguration. Automatisierung macht Änderungen nachvollziehbar, schnell und testbar.
BUILD & TEST

Build Pipeline:

  • Continuous Integration (CI): Build, statische Code-Analyse, Security-Check, Test und Erstellung der nächsten, auslieferbaren Software-Version inkl. aller umgesetzten Code-Änderungen
RELEASE & DEPLOY

Deployment Pipeline:

  • Continuous Delivery: Continuous Integration + Deployment in Produktion durch manuelle Freigabe
  • Continuous Deployment: Continuous Integration + Deployment in Produktion voll automatisch
OPERATE & MONITOR
  • Betrieb/Überwachung der eingesetzten Laufzeitumgebungen und der entwickelten Software/Services
  • Frühzeitig Engpässe und/oder Ausfälle erkennen (z.B. mit Prometheus/Grafana) und rechtzeitig entsprechende Massnahmen ergreifen (z.B. bedarfsgerechte horizontale Skalierung)
  • Konfiguration entsprechender Alert-Manager ermöglicht die verzugsfreie Information der Verantwortlichen via Slack, Mail, SMS etc.

SIE MÖCHTEN IHRE PROJEKTE WEITERENTWICKELN?

Gerne stehe ich Ihnen für eine persönliche Beratung zur Verfügung.

Holger Endres
Senior DevOps Engineer
+49 40 88173-2614
 

GEMEINSAM. INNOVATIONEN. ENTWICKELN.

Wir begleiten Sie! Vom ersten Schritt bis zur ganzheitlichen Lösung.

Datenschutzeinstellungen

Klicken Sie auf »Info«, um eine Übersicht über alle verwendeten Cookies zu erhalten. Sie können Ihre Zustimmung nur zu den erforderlichen Cookies oder auch zu den Cookies für Statistiken geben. Die Auswahl erfolgt freiwillig. Sie können diese Einstellungen jederzeit ändern bzw. die Cookies im Browser nachträglich jederzeit löschen. Wählen Sie die Option »Statistik« aus, so erstreckt sich Ihre Einwilligung auch auf die Verarbeitung in den USA, die vom Europäischen Gerichtshof als Land mit unzureichendem Datenschutzniveau eingeschätzt werden. Weiterführende Informationen finden Sie in unseren Datenschutzhinweisen und im Impressum.
In dieser Übersicht können Sie einzelne Cookies einer Kategorie oder ganze Kategorien an- und abwählen. Außerdem erhalten Sie weitere Informationen zu den verfügbaren Cookies.
Gruppe Externe Medien
Name YEXT - Suchleiste
Technischer Name yext
Anbieter Yext GmbH
Ablauf in Tagen 0
Datenschutz https://www.yext.de/privacy-policy/
Zweck Ermöglicht die intelligente Suche über YEXT.
Erlaubt
Gruppe Externe Medien
Name Podigee
Technischer Name Podigee
Anbieter Podigee GmbH
Ablauf in Tagen 0
Datenschutz https://www.podigee.com/de/about/privacy
Zweck Ermöglicht die Nutzung des Podigee Podcast Players.
Erlaubt
Gruppe Externe Medien
Name Google Maps
Technischer Name googleMaps
Anbieter
Ablauf in Tagen 6491
Datenschutz
Zweck Ermöglicht die Nutzung von Google Maps.
Erlaubt
Gruppe Externe Medien
Name YouTube
Technischer Name youTube
Anbieter Google LLC
Ablauf in Tagen 0
Datenschutz https://policies.google.com/privacy
Zweck Ermöglicht die Nutzung des Youtube Videoplayers.
Erlaubt
Gruppe Statistik
Name Google Analytics
Technischer Name _gat,_gtag_UA_133169400_1,_gid,1P_JAR,ANID,NID,CONSENT,_gtag_UA_141664271_1,_gtag_UA_127185455_1,_gtag_UA_127561508_1,_gtag_UA_61387314_1
Anbieter Google LLC
Ablauf in Tagen 730
Datenschutz https://policies.google.com/privacy
Zweck Cookie von Google für Website-Analysen. Erzeugt anonyme statistische Daten darüber, wie der Besucher die Website nutzt.
Erlaubt
Gruppe Essenziell
Name Contao CSRF Token
Technischer Name csrf_contao_csrf_token
Anbieter
Ablauf in Tagen 0
Datenschutz
Zweck Dient zum Schutz der Website vor Fälschungen von standortübergreifenden Anfragen. Nach dem Schließen des Browsers wird das Cookie wieder gelöscht
Erlaubt
Gruppe Essenziell
Name Contao HTTPS CSRF Token
Technischer Name csrf_https-contao_csrf_token
Anbieter
Ablauf in Tagen 0
Datenschutz
Zweck Dient zum Schutz der verschlüsselten Website (HTTPS) vor Fälschungen von standortübergreifenden Anfragen. Nach dem Schließen des Browsers wird das Cookie wieder gelöscht
Erlaubt
Gruppe Essenziell
Name PHP SESSION ID
Technischer Name PHPSESSID
Anbieter
Ablauf in Tagen 0
Datenschutz
Zweck Cookie von PHP (Programmiersprache), PHP Daten-Identifikator. Enthält nur einen Verweis auf die aktuelle Sitzung. Im Browser des Nutzers werden keine Informationen gespeichert und dieses Cookie kann nur von der aktuellen Website genutzt werden. Dieses Cookie wird vor allem in Formularen benutzt, um die Benutzerfreundlichkeit zu erhöhen. In Formulare eingegebene Daten werden z. B. kurzzeitig gespeichert, wenn ein Eingabefehler durch den Nutzer vorliegt und dieser eine Fehlermeldung erhält. Ansonsten müssten alle Daten erneut eingegeben werden.
Erlaubt
Gruppe Essenziell
Name FE USER AUTH
Technischer Name FE_USER_AUTH
Anbieter
Ablauf in Tagen 0
Datenschutz
Zweck Speichert Informationen eines Besuchers, sobald er sich im Frontend einloggt.
Erlaubt
Gruppe Statistik
Name Google Repcatcha
Technischer Name googleRepcatcha
Anbieter Google LLC
Ablauf in Tagen 0
Datenschutz https://policies.google.com/privacy
Zweck Anti-Spam Schutz.
Erlaubt
Gruppe Statistik
Name ClickDimensions
Technischer Name cuvid,cusid,cuvon,cd_optout_accountkey
Anbieter ClickDimensions
Ablauf in Tagen 730
Datenschutz https://clickdimensions.com/solutions-security-and-privacy/
Zweck Cookie von ClickDimensions für Website-Analysen. Erzeugt anonyme statistische Daten darüber, wie der Besucher die Website nutzt.
Erlaubt