Anmelden / Registrieren Konto
Jump to section

Was ist eine CI/CD-Pipeline?

URL kopieren

Eine CI/CD-Pipeline umfasst mehrere Schritte, die zur Bereitstellung einer neuen Softwareversion ausgeführt werden müssen. CI/CD steht für Continuous Integration/Continuous Delivery. CI/CD-Pipelines verkörpern eine Praxis zur Verbesserung der Softwarebereitstellung durch den Einsatz von DevOps oder SRE (Site Reliability Engineering).

Eine CI/CD-Pipeline beginnt mit Überwachung und Automatisierung, um den Prozess der Anwendungsentwicklung zu verbessern. Dies betrifft speziell die Integrations- und Testphase, aber auch die Bereitstellung und Implementierung. Sicherlich lassen sich die Schritte einer CI/CD-Pipeline auch manuell ausführen, ihr größter Mehrwert wird jedoch durch die Automatisierung realisiert.

Die Schritte in einer CI/CD-Pipeline stellen verschiedene Untergruppen von Aufgaben dar, die in sogenannte Pipeline-Phasen eingeteilt werden. Zu diesen Phasen gehören üblicherweise:

  • Build – Die Phase, in der die Anwendung kompiliert wird.
  • Test – Die Phase, in der der Code getestet wird. Hier lassen sich durch Automatisierung sowohl der Zeit- als auch der Arbeitsaufwand verringern.
  • Release – Die Phase, in der die Anwendung ins Repository gestellt wird.
  • Bereitstellung – In dieser Phase wird der Code in der Produktionsumgebung bereitgestellt.
  • Validierung und Compliance – Welche Schritte zur Validierung eines Builds notwendig sind, bestimmen die Anforderungen des jeweiligen Unternehmens. Scanning Tools für die Image-Sicherheit, wie Clair, sichern die Qualität von Images, indem diese mit bekannten Schwachstellen (CVEs) verglichen werden.
     

CI/CD Flow

Diese Liste der Pipeline-Phasen ist nicht abschließend. Es werden lediglich die Phasen aufgeführt, die man am häufigsten antrifft. So werden Sie Ihre eigene Pipeline sicherlich an den Anforderungen Ihres Unternehmens ausrichten.

Traditionelle CI/CD-Systeme wurden für Pipelines konzipiert, die virtuelle Maschinen verwenden. Mit der cloudnativen App-Entwicklung lassen sich dafür noch weitere Vorteile realisieren. Wie sieht eine CI/CD-Pipeline mit Containern aus?

 

Mit dem auf Open Source basierenden Projekt Tekton können Sie Pipelines im Stil von Kubernetes erstellen, die den kompletten Lifecycle von Microservices kontrollieren – und zwar ohne dass zentrale Teams einen CI-Server, die Konfiguration und Plugins verwalten und warten müssen.

OpenShift Pipelines ist eine Funktion von Red Hat OpenShift, die auf Tekton aufbaut. Dieses Open Source-Projekt liefert ein Framework, in dem cloudnative CI/CD-Pipelines schnell erstellt werden können. Tekton ist ein CI/CD-Framework für Kubernetes-Plattformen, das eine cloudnative CI/CD-Standarderfahrung mit Containern ermöglicht. Tekton ist ein Kubernetes-natives Framework, das die Bereitstellung mehrerer Cloud-Anbieter oder Hybrid-Umgebungen vereinfacht. Mithilfe von Custom Resource Definitions (CRDs) in Kubernetes nutzt Tekton die Kubernetes Control Plane zur Ausführung von Pipeline-Aufgaben. Durch die Nutzung von standardmäßigen Industriespezifikationen funktioniert es sehr gut mit CI/CD-Tools wie Jenkins, Jenkins X, Skaffold und Knative.

automated-enterprise-e-book

Das automatisierte Unternehmen

Geschwindigkeit und Umfang der digitalen Geschäftsinnovation nehmen ständig zu. Automatisierung kann helfen, Prozesse zu beschleunigen und komplexe IT-Umgebungen zu verwalten.

Die Bausteine Ihrer CI/CD-Pipeline

Red Hat Openshift

Eine Container- und Kubernetes-Plattform für ein schnelleres Deployment cloudnativer Anwendungen.

Red Hat Ansible Automation Platform

CI/CD erfordert eine umfassende benutzerdefinierte Kodierung sowie mehrere Softwarepakete. Red Hat Ansible Automation Platform ist eine Open Source-Automatisierungssprache, die alle benötigten Funktionen vereint.