DelOps
Die Fehlenden Verbindungen in Dev(sec)Ops
Synopsis
DelOps – Delivery to Operations
Es existieren zwei Aspekte in den „traditionellen“ DevOps Ansätzen, die teilweise unzureichend implementiert sind bis in Gänze fehlen. Nachfolgend versuche ich den Kern beider Aspekte anzureißen. Sie betreffen meist Unternehmen aus dem Finanzsektor bzw. nicht-Technologie Unternehmen, die ihre internen Prozesse durch externe Softwarelösungen automatisieren. Privatbanken sind hier sehr oft von betroffen, wegen besonderen Regulierungen und Einschränkungen durch Sicherheitsprozesse und mangelnden IT Knowhow.
Erster fehlender Puzzle:
Vollautomatische Verarbeitung externer Softwarepakete und machinenlesbare Paketdokumentation.
Die typische und publizierte Build und Deployment Pipeline beginnt fast immer in-house, sodass es ein Einfaches ist Deployables – Pakete und deren Inhalte – auf eine interne Infrastruktur zu mappen. Bspw. ein Nuget Paket von Microsoft oder ein EAR File von JBoss. Wie aber können inhaltlich volatile Pakete von externen Softwarelieferanten auf ähnliche Weise in die internen DevOps Prozesse eingebettet werden. Ansätze stellen beliebte Design Pattern aus der Softwareentwicklung zur Verfügung. Über das Adapter Pattern, einer DSL (Domain Specific Language) oder den Transformationsansatz á la XSLTkann hier eine standardisierte Behandlung von inhaltliche volatilen Paketen eingeführt werden. Wir haben als DerSalvador GmbH eine Open Source Initiative diesbezüglich gestartet. Die Lösung besteht im Kern aus einer XML-DSL die für generische Paketeinhalte ausgelegt ist. Diese DSL kann und wird natürlich erweitert gemäß den lokalen Anforderungen des Kunden. Sie umfasst nicht nur typische DevOps Prozesse sondern auch alle intern involvierte Prozesse wie Change- und Releasemanagement, Monitoring, Security und Provisionierung der Infrastruktur. Ziel ist es diese Prozesse ebenfalls in automatisierter Form in den gesamten DevOps Deployment Prozess zu integrieren. Zum Beispiel könnte ein ITIL Standard Change automatisch erkannt werden, die Security Checks als auch die automatisierten UAT Test ausgeführt werden, sodass ein Produktionsdeployment von externe Pakete in Sekunden erfolgen könnte. Heutzutage dauert die Einführung eines Standard-Changes in Privatbanken in Produktion oft noch ca. 2 FTE. Diesen Flaschenhals trifft man oft in Unternehmen mit einer rigiden Change und Releasemanagementkultur an. Unser Ansatz kann auch hier Deploymentzeiten in Produktion ähnlich wie bei Google und Amazon auch für externe Vendor Pakete erzielen. Für weitere Informationen zu den Implementierungsdetails und Features kann unsere Website www.dersalvador.com und die verlinkte Github-Seite kontaktiert werden.
Zweiter Fehlender Puzzle:
Stetiger Überprüfung auf Sicherheitslücken in den Build- und Deployment Pipelines
Im Zuge der Vollautomatisierung von Applikations- und Infrastruktur- Deployments bis hin zur Produktion werden die Möglichkeiten ausgiebiger manuelle Security,- Compliance, und Policy Tests basierend auf dem Konzept von „Segregation of Duties (SoD)“ oft vergessen oder auch unzureichend implementiert. Gefahren entstehen dann wenn externe Bibliotheken in den tiefen Abhängigkeiten aus der Open Source Community, bspw., eingesetzt werden, von denen nicht einmal der Entwickler Kenntnis hat. Diese Bibliotheken können sowohl Verwundbarkeiten als auch explizite Viren enthalten. Diese vollautomatisch zu entdecken fällt schwer. Die OWASP (Open Web Application Security Project) Community bspw. oder offizielle Online-Datenbanken mit Informationen über Third-Party Libraries und ihre Sicherheitslöcher können hier Abhilfe schaffen. Sie sind meist für die Einbettung in Buid,- und Deploymentpipeline mit REST-Apis gerüstet um eine vollautomatische Überprüfung zu ermöglichen. Entwickler sind meist nicht geneigt diese Plugins einzusetzen, sodass oft die Verantwortung dafür in den Ops Bereich fällt. Erst durch die DevOps Kultur können solche wichtigen Prozesse in eine gemeinsame Pipeline integriert werden.
Freier Quellcode
MissingLink Prozessor
Um einen Beitrag für die DevOps-Open-Source-Bewegung zu leisten, von denen wir bereits sehr viel gelernt haben, geben wir den wesentlichen Teil des „Fehlenden Puzzle-Teils“ in unserem Ansatz, MissingLinkProcessor genannt, frei. Dieser Mikro-Service füllt die Lücke zwischen dem externen Lieferanten und die internen Prozesse der Konsumenten (Clients) durch eine generische DSL im XML-Format. Dieser Prozessor ermöglicht eine voll-automatisierte Integration einschließlich der maschinenlesabren Release Notes.
Unsere Partner
Wir sind stolz darauf, ein Netzwerk von engagierten Menschen aufzubauen, die ihr Wissen gerne weitergeben und von Unternehmen, die nachhaltige Ansätze unseren Kunden und der DevOps-Community zur Verfügung stellen.
Unsere Kunden
Expertises Fact Sheet
As an early adopter of Google's container orchestration and clustering platform Kubernetes we offer consulting in implementing and operating plain open-source Kubernetes or its cloud-based commercial approaches as GCP/GKE, AWS, DigitalOcean, ... or its stacked pendants as RedHat's OpenShift or Rancher. With the release of Knative serverless platform in 2018 we are also thrilled to be part of the new serverless software development movement.
By applying, only reasonable and tailored to the company's reality and needs, agile concepts (TDD, Retros, Reviews) we strive to avoid overloading projects with too much agile noise.
For a leading media company we integrated CoreMedia 7 into a Scala/Play Framework for rendering CMS data (articles, pages, videos, etc.) for medical purposes.
Since 2005 we are executing well-managed remote projects and offering as well operational services remotely from Brazil, known for its diversity, flexibility and cultural variety
Blog and News
Four mistakes organizations make when adopting DevOps
1. Not going all the way the process of adopting DevOps can end up being very painful for those who do not go all out in terms
Legacy DevOps vs. Mainstream DevOps
Characteristics of Legacy DevOps (called DelOps) No CI (No Unit Tests, No Mocking) All Quality Gates are right-shifted (UAT/AC Testers, Load and Performance Tests, Security,