Optimierung von CI/CD-Pipelines mit der Red Hat Ansible Automation Platform

Die digitale Welt basiert auf Anwendungen 

Moderne Unternehmen sind auf Anwendungen angewiesen. Tatsächlich sehen 62 % der Unternehmen Anwendungen als grundlegend für ihr Geschäft an. Weitere 36 % sind überzeugt, dass Anwendungen ihnen einen Wettbewerbsvorteil verschaffen.2 Die schnelle und zuverlässige Anwendungsentwicklung ist entscheidend für den Erfolg in einer digitalen Welt. CI/CD-Ansätze (Continuous Integration/Continuous Deployment) können Sie dabei unterstützen, qualitativ hochwertige Anwendungen schnell zu entwickeln, zu testen und bereitzustellen. 

Bei CI/CD wird die Automatisierung während des gesamten Anwendungs-Lifecycles angewendet: von der Integrations- und Testphase bis hin zu Bereitstellung und Deployment, um schnell getestete und verifizierte Anwendungen zu erstellen. Dieser Ansatz besteht aus zwei unterschiedlichen, aber miteinander verbundene Funktionen: 

  • Continuous Integration (CI) unterstützt Entwicklerinnen und Entwickler dabei, die Funktionalität schnell zu überprüfen und ihre Codeänderungen regelmäßig in einen gemeinsamen Zweig einzubringen. Die zusammengeführten Codeänderungen werden validiert, indem die Anwendung automatisch entwickelt und verschiedene Stufen automatisierter Tests – in der Regel Unit- und Integrationstests – durchgeführt werden. So wird sichergestellt, dass die Änderungen funktionieren. Wenn beim Testen ein Konflikt zwischen neuem und bestehendem Code entdeckt wird, lassen sich diese Fehler dank CI einfach und schnell beheben. 
  • Continuous Deployment (CD) automatisiert den Release-Prozess einer Anwendung für die Produktion. Es gibt nur wenige manuelle Gates in der Entwicklungs-Pipeline-Phase unmittelbar vor der Produktion, sodass CD weitgehend auf eine gut durchdachte Testautomatisierung angewiesen ist. So kann eine vom Entwicklungsteam vorgenommene Änderung an einer Cloud-Anwendung innerhalb von Minuten nach ihrer Entwicklung in Betrieb gehen, wenn sie alle automatisierten Tests besteht. CD erleichtert eine kontinuierliche Integration von Feedback ungemein. 

CI- und CD-Praktiken ermöglichen es Ihnen, Änderungen an Anwendungen in kleinen Einheiten freizugeben, wodurch die Zuverlässigkeit des Anwendungs-Deployments zunimmt. Sie können CI/CD auf viele Komponenten und Assets in Ihrem Unternehmen anwenden, darunter Anwendungen, Plattformen, Infrastruktur, Netzwerke und Automatisierungscode.

Automatisierung ist das Kernelement von CI/CD-Pipelines

CI/CD-Pipelines erfordern per Definition Automatisierung. Es ist zwar möglich, jeden Schritt in Ihrem Entwicklungs-Workflow manuell auszuführen, doch durch Automatisierung wird der Wert Ihrer CI/CD-Pipeline maximiert. Sie sorgt für Konsistenz in den Entwicklungs-, Test- und Produktivumgebungen und -prozessen und ermöglicht so die Entwicklung zuverlässiger Pipelines. Dennoch kann die von Ihnen gewählte Automatisierungstechnologie die Effektivität Ihrer Pipeline beeinflussen. Ideale Automatisierungstechnologien umfassen die folgenden Hauptfeatures und -funktionen:

  • Einheitliche Automatisierungsplattformen fördern die Konsistenz und ermöglichen die Standardisierung automatisierter Prozesse und Inhalte in Entwicklungs-, Test- und Produktivumgebungen. 
  • Durch einfache, unkomplizierte Abläufe können sich mehr Teammitglieder beteiligen und einen Beitrag leisten.
  • Insgesamt fördern vereinfachte Prozesse die Akzeptanz der Automatisierung in Ihrem Unternehmen.
  • Durch die Integration mit anderen Tools und Produkten kann die Automatisierung einer Vielzahl von Aufgaben und Komponenten vereinfacht werden. 
  • Die Skalierbarkeit der Plattform ermöglicht Ihnen eine Erweiterung der Kapazität Ihrer Pipeline bei steigender Nutzung.

Automatisierung Ihrer CI/CD-Pipelines mit der Red Hat Ansible Automation Platform

Die Red Hat® Ansible® Automation Platform bietet eine Basis für die Entwicklung und Ausführung automatisierter Prozesse im gesamten Unternehmen. Die Plattform umfasst alle Tools, die zur Implementierung unternehmensweiter Automatisierungsprozesse erforderlich sind, einschließlich der CI/CD-Pipelines. Die Plattform vereint eine einfache, leicht verständliche Automatisierungssprache mit einer bewährten, modularen Ausführungsumgebung und sicherheitsorientierten Funktionen für die Zusammenarbeit. Programmierkenntnisse sind nicht erforderlich, sodass die Red Hat Ansible Automation Platform von Beschäftigten in vielen Funktionen Ihres Unternehmens genutzt werden kann. 

Dank einer offenen Basis können Sie fast alles in Ihrer IT-Umgebung in vollständige, automatisierte Workflows integrieren – von Servern, Netzwerken, Storage und Betriebssystemen bis hin zu Anwendungen, Sicherheitsprozessen und Managementtools. Durch die Verwendung einer gemeinsamen Sprache und eines Ansatzes für den gewünschten Zustand können Sie dieselben Automatisierungstools und -inhalte sowohl für den täglichen Betrieb als auch für Ihre CI/CD-Pipeline verwenden. Und da die Red Hat Ansible Automation Platform mit nahezu allen Aspekten Ihrer IT-Infrastruktur zusammenarbeitet, können Sie konsistente Entwicklungs-, Test- und Produktivumgebungen einfach und schnell bereitstellen und so die Zuverlässigkeit und Resilienz Ihrer Anwendungen erhöhen. 

Eine Subskription der Red Hat Ansible Automation Platform beinhaltet Zugang zu zertifizierten Content Collections und Automation Hub als zusätzlichen Mehrwert. Content Collections optimieren das Management, die Verteilung und die Nutzung von Automatisierungsinhalten. Außerdem bieten sie getesteten, verifizierten und unterstützten Automatisierungscode von Red Hat und zertifizierten Partnern von Red Hat. Automation Hub bietet ein zentrales Repository für zertifizierte Automatisierungsinhalte, einschließlich Content Collections. So erhalten Teammitgliedern ein sichereres Portal für Content Collections sowie ein privates Netzwerk für interne und externe Automatisierungsinhalte.

Use Cases für CI/CD-Automatisierung 

Sie können die Red Hat Ansible Automation Platform in Ihrer gesamten CI/CD-Pipeline und Organisation einsetzen.

Use Case 1: Provisionierung 

Die Provisionierung einer Infrastruktur ist der erste Schritt zur Automatisierung des gesamten operativen Lifecycles Ihrer Anwendungen. Die Red Hat Ansible Automation Platform kann gängige Cloud-Plattformen, virtualisierte Hosts und Hypervisoren, Netzwerkgeräte und Bare Metal-Server provisionieren. Nach dem Bootstrapping können Sie die Knoten mit dem Storage verbinden, sie zu einem Load Balancer hinzufügen, Sicherheits-Patches einspielen oder viele andere operative Aufgaben durchführen.

Tipp zur Provisionierung 

Sie können die Red Hat Ansible Automation Platform während des gesamten restlichen Anwendungs-Lifecycles weiter verwenden.

Use Case 2: Konfigurationsmanagement 

Das Konfigurationsmanagement ist für die Aufrechterhaltung von Konsistenz, Effizienz und Sicherheit in Ihrer Umgebung unerlässlich. Mit der Red Hat Ansible Automation Platform können Sie Ihre Infrastruktur verwalten, indem Sie Sets von Beschreibungen des gewünschten Zustands definieren. Unabhängig davon, in welchem Zustand sich ein System befindet, kann die Red Hat Ansible Automation Platform es in den gewünschten Zustand versetzen, sodass Sie Ihre IT-Infrastruktur zuverlässig und wiederholbar konfigurieren können.

Tipp zum Konfigurationsmanagement

Die Red Hat Ansible Automation Platform ermöglicht Ihnen eine vereinfachte Verwaltung komplexer Umgebungen. Sie stellt eine konsistente, sichere und zuverlässige Basis zur Verfügung und bietet Beschäftigten in der Administration, Entwicklung sowie dem IT-Management einen vereinfachten Lernprozess.

Use Case 3: Anwendungsentwicklung

Anwendungen müssen richtig konfiguriert und bereitgestellt werden, damit sie von Nutzen sind. Mit der Red Hat Ansible Automation Platform können Sie mehrschichtige Anwendungen zuverlässig, konsistent und einfach bereitstellen. Mit einem gemeinsamen System können Sie die benötigten Anwendungsservices konfigurieren und Anwendungsartefakte übertragen.

Tipp zur Anwendungsentwicklung

Mit der für Menschen lesbaren Sprache und den Beschreibungen des gewünschten Zustands von Ansible können auch neue Teammitglieder die Bereitstellungsautomatisierung verstehen und dazu beitragen.

Use Case 4: Continuous Deployment

Als Teilbereich des Anwendungs-Deployments helfen CD-Pipelines dabei, neue Softwarefunktionen und -updates regelmäßig zu veröffentlichen, um die Anforderungen moderner Unternehmen zu erfüllen. Die Red Hat Ansible Automation Platform bietet die mehrstufige, schrittweise Anwendungsorchestrierung, die für ein schnelles und zuverlässiges Deployment neuer Funktionen, Bug Fixes und Codeänderungen erforderlich ist. Gleichzeitig reduziert sie den Bedarf an manuellen Eingriffen während des gesamten Release-Prozesses.

Tipp zu Continuous Deployment 

Mit der Red Hat Ansible Automation Platform können Sie Plays definieren und anordnen, die auf bestimmte Host-Gruppen ausgerichtet sind und ihnen Aufgaben oder Rollen zuweisen.

Use Case 5: Sicherheitsautomatisierung 

Die Sicherheit Ihrer Organisation ist eine zentrale – aber oft eine herausfordernde – Aufgabe. Die Red Hat Ansible Automation Platform dient als Integrationsschicht zwischen Ihren Sicherheitsteams, -tools und -prozessen, um die Sicherheitsabläufe zu optimieren, die Sicherheit in großem Umfang zu verbessern und das Risiko und die Kosten von Sicherheitsverletzungen zu reduzieren. Mithilfe mehrerer unterstützter sicherheitsorientierter Content Collections können Sie verschiedene Sicherheitslösungen automatisieren und integrieren, um Bedrohungen unternehmensweit auf koordinierte und einheitliche Weise zu untersuchen und darauf zu reagieren.

Tipp zur Sicherheitsautomatisierung 

Mit einem gemeinsamen Framework und einer gemeinsamen Sprache können Sicherheits- und IT-Teams Designs, Prozesse und Ideen teamintern und unternehmensweit teilen.

Use Case 6: Orchestrierung 

Komplexe, heterogene Umgebungen lassen sich manuell nur schwer, wenn überhaupt, effektiv verwalten. Mit der Red Hat Ansible Automation Platform können Sie alle Aspekte komplizierter IT-Umgebungen, einschließlich geclusterter Anwendungen, geografisch verteilter Rechenzentren, Netzwerkgeräte, Cloud-Ressourcen und Datenbanken, einfach, zuverlässig und wiederholt orchestrieren. Mit einer klaren Syntax und einem aufgabenbasierten Ansatz können Sie automatisierte Orchestrierungsfunktionen definieren, anordnen und wiederverwenden.

Tipp zur Orchestrierung 

Sie können auch andere domainspezifische Orchestrierungstools mit der Red Hat Ansible Automation Platform über Content Collections orchestrieren.

Use Case 7: GitOps 

GitOps-Workflows können die Entwicklungsproduktivität und die Deployment-Geschwindigkeit erhöhen, indem sie Git als zentrales Repository für deklarative Infrastruktur- und Anwendungs-Deployments nutzen. Die Red Hat Ansible Automation Platform bietet die für GitOps benötigte Engine für den gewünschten Zustand. Durch die Integration mit Kubernetes können Sie Anwendungen sowohl in Containern als auch in der bestehenden IT-Infrastruktur verwalten, einschließlich Netzwerke und Cloud-Services. Mit den Automatisierungs-Webhooks von Ansible können Sie Events von Ihrem Quellkontrollsystem empfangen und diese zum automatischen Auslösen der Automatisierung verwenden. Dadurch werden zusätzliche Tools zur Überwachung von Repositories und zum Starten von Automatisierungsjobs bei Änderungen überflüssig. Außerdem wird Ihr GitOps-Workflow vereinfacht, und die Abläufe werden optimiert. Da die Red Hat Ansible Automation Platform mit einer Vielzahl von Entwicklungs- und Deployment-Tools arbeitet, können Sie Ihren GitOps-Workflow mit Ihren bevorzugten Tools und Prozessen anpassen.

Tipp zu GitOps 

Mit der Red Hat Ansible Automation Platform können Sie Anwendungen in bestehenden und neuen Plattformen automatisieren und orchestrieren, sodass Sie mit Ihren aktuellen Kompetenzen und Tools auf cloudnative und Kubernetes-basierte Technologien umsteigen können.

Die CI/CD-Pipeline auf zukünftige Veränderungen vorbereiten

Mit der Red Hat Ansible Automation Platform sind Sie auf zukünftige technologische Fortschritte und Trends vorbereitet, einschließlich beliebter und neuer CI/CD-Tools wie AzureDevOps, GitHub Actions, UrbanCode, TeamCity und ServiceNow. Viele Unternehmen führen beispielsweise cloudnative Kubernetes-Umgebungen ein, um ihre Flexibilität, Geschwindigkeit und Innovationskraft zu erhöhen. Die Red Hat Ansible Automation Platform ist mit Red Hat Advanced Cluster Management for Kubernetes integriert und ermöglicht Ihnen die Orchestrierung von Kubernetes-Clustern innerhalb Ihrer CI/CD-Pipeline. Sie können auch die für Menschen lesbare Automatisierungssprache verwenden, um Red Hat OpenShift® Operators einfach zu entwickeln und zu verwalten.

Mehr erfahren 

Die Red Hat Ansible Automation Platform bietet Ihnen die Tools und Funktionen, die Sie zur Entwicklung und Integration effektiver CI/CD-Pipelines und zur Automatisierung in Ihrem Unternehmen benötigen. Mit der leicht verständlichen Automatisierungssprache, der komponentenübergreifenden Interoperabilität und den sicherheitsorientierten Tools für die Zusammenarbeit können Sie die Entwicklung und das Deployment von Anwendungen beschleunigen.

Mehr erfahren unter ansible.com/use-cases.

Eine von Red Hat in Auftrag gegebene und von Forrester Consulting durchgeführte Studie: „Open Source-Automatisierung für Unternehmen als Triebfeder für Innovation“, Juli 2020.

F5 Networks: „2020 State of Application Services Report“, 2020.