IBM Cloud Docs
Einrichten einer CD-Toolchain

Einrichten einer CD-Toolchain

Mit diesem Tutorial können Sie die Toolchain-Vorlage für Continuous Deployment (CD) mit Security and Compliance Center verwandten Praktiken in DevSecOps verwenden. Die Vorlage ist mit den Einstellungen vorkonfiguriert. Sie können Ihre Konfiguration validieren und zur Verfügung stellen, um das Lernprogramm abzuschließen.

Vorbereitende Schritte

  1. Vervollständigen Sie die Einrichtung der Voraussetzungen.
  2. Vervollständigen Sie die Einrichtung einer CI-Toolchain.
  3. Sehen Sie sich das Video Einstieg in DevSecOps in IBM Cloud- Teil 2 an.
  4. Siehe die DevSecOps-Praktiken zur Bereitstellung einer sicheren CD-Anwendung.

Setup der CD-Toolchain starten

Der Continuous Delivery-Dienst bietet Vorlagen, die Sie durch die Einrichtung der CD-Toolchain führen. Folgen Sie den Schritten, um auf die Vorlage für die CD-Toolchain zuzugreifen.

  1. Über die Konsole IBM Cloud.
  2. Klicken Sie auf Menü Menü Symbol und wählen Sie DevOps.
  3. Klicken Sie auf der Seite 'Toolchains' auf die Option Toolchain erstellen.
  4. Klicken Sie auf die Kachel CD - Deployment a secure app with DevSecOps practices, um die Vorlage anzuzeigen.

Toolchain-Einstellungen einrichten

Die Seite Willkommen fasst den Zweck der Toolchain zusammen und enthält Verweise auf die Dokumentation und zugehörige Materialien.

  1. Klicken Sie auf Starten.

  2. Geben Sie einen eindeutigen Toolchain-Namen ein. Beachten Sie, dass die Toolchain-Region von der Cluster- und Container Registry-Region abweichen kann.

  3. Wählen Sie eine Region und Wählen Sie eine Ressourcengruppe sind aufgeführt. Hinweis Sie können die Regionen bearbeiten.

  4. Optional können Sie die zugehörige Continuous Integration (CI) Toolchain aus dem Dropdown-Menü auswählen. Dies kopiert einen Teil der CI-Konfiguration, um die Einrichtung der CD-Toolchain zu erleichtern. Hinweis Damit werden möglicherweise einige der bereits eingegebenen Werte überschrieben.

  5. Klicken Sie auf Weiter.

    Der nächste Schritt kann erst aufgerufen werden, wenn die Konfiguration für den aktuellen Schritt ordnungsgemäß abgeschlossen ist. Sie können jederzeit auf Zurück klicken, um die vorherigen Schritte im geführten Installationsprogramm anzuzeigen. Das Toolchain-Installationsprogramm behält alle Konfigurationseinstellungen aus den aufeinander folgenden Schritten bei.

    Einige Schritte beinhalten eine Schaltfläche für die erweiterte Konfiguration. Mit diesen Schritten erhalten Sie standardmäßig die Mindestkonfiguration. Fortgeschrittene Benutzer, die eine feinere Steuerung benötigen, können jedoch auf die Schaltfläche Zur erweiterten Konfiguration wechseln klicken, um die Optionen für die zugrunde liegende Integration anzuzeigen.

Toolintegrationen einrichten

Wenn Sie in diesem Schritt bereits eine Verknüpfung zu einer bestehenden CI-Toolchain hergestellt haben, sind der Name der Toolchain, die Region, die Repositorys und andere Felder bereits ausgefüllt. Überprüfen Sie die Repository-URLs und fahren Sie dann mit den nächsten Schritten fort.

Bestand

  1. Wählen Sie die Repository URL des in Ihrer CI-Toolchain konfigurierten Inventar-Repositorys.
  2. Klicken Sie auf Weiter.

Probleme

  1. Wählen Sie die Repository-URL, um die Ausgaben aufzuzeichnen, während die CD-Pipeline läuft. Hinweis: Sie verwenden ein bestehendes Issues-Repository, das während der CI-Toolchain erstellt wurde.
  2. Klicken Sie auf Weiter.

Pipeline-Konfiguration

Das Pipeline-Konfigurationsrepository enthält YAML-Dateien und Scripts, die für die Bereitstellung, für Tests und für andere angepasste Tasks erforderlich sind.

  1. Übernehmen Sie die Standardeinstellungen für Quellanbieter.

    Wenn Sie nicht über ein Konfigurations-Repository verfügen, aktivieren Sie den Schalter Erweiterte Konfiguration und wählen Sie den Typ Clone-Repository. Die Toolchain klont die Beispielkonfiguration in Ihrer Git Organisation. Weitere Informationen über Git-Repos finden Sie unter Konfigurieren Ihrer Git Repos and Issue Tracking. Weitere Informationen über anpassbare Skripte finden Sie unter Benutzerdefinierte Skripte.

  2. Geben Sie einen eindeutigen Neuen Repository-Namen ein.

  3. Klicken Sie auf Weiter.

Geheime Schlüssel

  1. Dieses Tutorial verwendet IBM Cloud® Secrets Manager als Tresor für Geheimnisse. Die Felder Region, Ressourcengruppe und Dienstleistungsname werden automatisch auf der Grundlage der verfügbaren Auswahlmöglichkeiten ausgefüllt. Klicken Sie auf die Dropdown-Anzeigen, um die anderen Auswahlmöglichkeiten zu sehen.
  2. Geben Sie Ihren Secrets Manager Instanznamen ein.
  3. Wählen Sie die Berechtigungsart aus der Dropdown-Liste.
  4. Klicken Sie auf Weiter.

Nachweisspeicher

  1. Wählen Sie eine Vorhandene Asservatenkammer verwenden.
  2. Wählen Sie die Repository URL, die bei der Konfiguration der Continuous Integration (CI) Toolchain erstellt wurde. Weitere Informationen zur Speicherung von Beweisen finden Sie unter Beweise.
  3. Schalten Sie den IBM Cloud Object Storage Schieberegler um, um alle Beweise im IBM Cloud Object Storage Schaufel zu speichern.
  4. Klicken Sie auf Weiter.

Cloud-Bucket Object Storage

  1. Überprüfen und akzeptieren Sie die automatisch ausgefüllten IBM Cloud Object Storage Details. Weitere Informationen zur Konfiguration eines Buckets, der als Schließfach für Compliance-Nachweise fungieren kann, finden Sie unter Konfiguration von Object Storage zur Speicherung von Nachweisen.
  2. Geben Sie Ihren Service-API-Schlüssel an, um in eine IBM Cloud Object Storage-Instanz zu schreiben.
  3. Klicken Sie auf Weiter.

Signieren von Artefakten

  1. Geben Sie optional Code Signing Certificate ein, um die Gültigkeit der Signaturen für Artefakte zu überprüfen. Zum Beispiel Docker Artefakte, die von der CI-Pipeline erstellt und signiert werden, bevor sie in der Produktion eingesetzt werden.
  2. Klicken Sie auf Weiter.

Implementierungsziel

  1. Akzeptieren Sie die Option Einzelner Cluster (Push-basierte Bereitstellung), um Ihre Anwendung auf Zielen wie virtuellen Serverinstanzen bereitzustellen, oder passen Sie den Bereitstellungsprozess mit der Option Benutzerdefiniert an.
  2. Klicken Sie auf Fortfahren, um die Clusterseite anzuzeigen.
  3. Geben Sie den IBM Cloud API-Schlüssel ein, um bei verschiedenen Aufgaben mit dem CLI-Tool zu interagieren. Hinweis Ein vorhandener Schlüssel kann durch Anklicken des Schlüsselsymbols aus einem Geheimnistresor importiert werden.
  4. Überprüfen Sie Ihre Cluster-Region, Ressourcengruppe, Cluster-Name, und Cluster-Namensraum Felder, in denen Ihr Zielcluster erstellt wird.
  5. Klicken Sie auf Weiter.

Änderungsanforderungsmanagement

  1. Übernehmen Sie die eingegebenen Werte für die Verwaltung von Änderungsanträgen. Weitere Informationen finden Sie unter Änderungsmanagement automatisieren.
  2. Geben Sie einen eindeutigen Neuen Repository-Namen ein.
  3. Legen Sie den Zweck der Zielumgebung als Production fest.
  4. Legen Sie das Ziel Umwelt Detail fest.
  5. Klicken Sie auf Weiter.

DevOps Insights toolchain

Verwenden Sie ein IBM Cloudgehostetes Git Repos and Issue Tracking Repository, um Änderungsanforderungen zu verwalten. Weitere Informationen finden Sie unter Änderungsmanagement automatisieren.

Die CD-Toolchain kann die Bereitstellungsdatensätze in einer bestehenden DevOps Insights-Instanz veröffentlichen. Um diese Funktion zu aktivieren, geben Sie die ID der Toolchain an, die die vorhandene DevOps Insights Instanz enthält, indem Sie in der DevOps Insights Toolchain-ID-Liste auswählen.

Die IBM Cloud DevOps Insights ist in der Toolchain enthalten. Zeigen Sie Ihre Pipeline-Testergebnisse für jeden Build, für jede Bereitstellung und jede Umgebung an.

  1. Geben Sie Ihren DevOps Insights IBM Cloud API Key an.
  2. Übernehmen Sie die Standardkonfiguration.
  3. Klicken Sie auf Weiter.

Optionale Tools

Slack

Konfigurieren Sie den Slack, um Benachrichtigungen über Ihre Pull-Anfragen oder CI-Pipeline-Ereignisse zu erhalten. Sie können das Slack-Tool auch nach der Erstellung der Toolchain hinzufügen.

  1. Geben Sie Ihren Slack Webhook ein. Weitere Informationen finden Sie unter Slack webhook.
  2. Geben Sie Ihren Slack-Kanal ein, um eine Nachricht zu veröffentlichen.
  3. Geben Sie den Namen des Slack-Teams ein. Wenn Ihre Team-URL zum Beispiel https://team.slack.com lautet, ist der Teamname team.
  4. Wählen Sie Automatisierte Slack-Benachrichtigungen für die Ereignisse, über die Sie benachrichtigt werden möchten.
  5. Klicken Sie auf Weiter.

Optional können Sie das Senden von Benachrichtigungen mit der slack-notifications-Umgebungseigenschaft in Ihrer CD-Pipeline durch Verwendung von 0 = off, and 1 = on umschalten.

Security and Compliance Center

  1. Akzeptieren oder bearbeiten Sie die automatisch übernommenen Einstellungen. Weitere Informationen finden Sie unter Security and Compliance Center und im Tool-Integration Konfigurationsprozess.
  2. Klicken Sie auf Fortfahren, um die Seite Zusammenfassung anzuzeigen.

CD-Toolchain erstellen

Die einzelnen Toolchain-Integrationen können nach der Erstellung der Pipeline konfiguriert werden.

  1. Klicken Sie auf der Seite Zusammenfassung auf Werkzeugkette erstellen, und warten Sie, bis die Werkzeugkette erstellt wurde.

DevSecOps CD-Toolchain erstellt
Abbildung 1. DevSecOps CD-Toolchain erstellt

CD-Toolchain durchsuchen

  1. Nachdem die CD-Toolchain erstellt wurde, klicken Sie auf die Kachel cd-pipeline, um die Promotion-Pipeline zu öffnen und auszuführen.

Promotion-Pipeline ausführen

Vergewissern Sie sich, dass die CI-Pipeline erfolgreich gelaufen ist, bevor Sie die Promotion-Pipeline ausführen.

  1. Klicken Sie auf cd-pipeline.

  2. Klicken Sie auf Ausführen für die Manuelle Promotion Trigger Pipeline.

  3. Klicken Sie auf Ausführen, um die Pipeline zu starten.

  4. Klicken Sie auf Manuelle Förderung auslösen > #1promotion-pipelinerun Pipeline. Warten Sie den Abschluss des Promotions-Pipeline-Laufs ab und prüfen Sie das Ausführungsprotokoll.

    Die Promotionspipeline erstellt eine Pull-Anforderung mit dem Inhalt des Inventars in der Inventar-Quellumgebung, z. B. master, die auf die Verzweigung der Inventar-Zielumgebung abzielt, z. B. staging oder production.

  5. Nach erfolgreicher Beendigung der Promotion-Pipeline enthält das promote Aufgabenprotokoll einen Link zur Pull-Anforderung im Inventar-Repository. Der Name der Pull-Anfrage hat das Format promote <inventory source environment> to <inventory target environment>, zum Beispiel promote master to prod

  6. Öffnen Sie die Pull-Anfrage in Ihrem Browser über den im Protokoll angegebenen Link. Vervollständigen Sie die Angaben in den folgenden Abschnitten:

    • Priorität: (obligatorisch) festgelegt als Critical, High, Moderate, Low oder Planning.
    • Änderungsantrag Zessionar: (obligatorisch) Email-ID des Zessionars.
    • Zusätzliche Beschreibung: Beschreibung der Änderungen in der Anwendung.
    • Zweck/Ziel: Zweck der Änderungen, die an der Anwendung vorgenommen werden.
    • Erläuterung der Auswirkungen: Auswirkung der Änderung auf das Anwendungsverhalten oder die Umgebung.
    • Zurücksetzungsplan: Schritte zum Zurücksetzen bei einem Implementierungsfehler.
  7. Füllen Sie die Felder in der Abrufanfrage aus und speichern.

  8. Fügen Sie das Label EMERGENCY zu Ihrem Pull-Request hinzu, wenn eine Konformitätsprüfung in CI fehlgeschlagen ist und Sie mit der Bereitstellung fortfahren

  9. Führen Sie die Pull-Anforderung aus Git Repos and Issue Trackingzusammen.

Die Details der Pull-Anforderung werden während der CD-Pipeline verwendet, die zum Erstellen und Aktualisieren des Repositorys für Änderungsanforderungen ausgeführt wird.

CD-Pipeline ausführen

Sie können eine CD-Pipeline auf manuelle oder automatische Weise auslösen. Sie können die CD-Pipeline jederzeit manuell auslösen, aber wenn sich seit der letzten erfolgreichen Bereitstellung keine Änderungen ergeben haben, wird die CD-Pipeline vorzeitig abgebrochen, da es nichts zu verteilen gibt. Sie können force-redeploy-Variable hinzufügen und verwenden, um die CD ohne Codeänderungen erneut auszuführen. Sehen Sie sich die erfolgreiche Bildschirmaufnahme der DevSecOps CD-Pipeline an.

DevSecOps CD-Pipeline erfolgreich
Abbildung 2. DevSecOps CD-Pipeline erfolgreich

Sie können die Beispielanwendung finden, die im Produktionsnamensraum ausgeführt wird. Die URL der Anwendung ist im Protokoll des run stage Teilschritts des prod deployment Schritts des CD-Pipelinelaufs zu finden. Verwenden Sie diese URL, um zu überprüfen, ob die Anwendung ausgeführt wird.

Nächste Schritte

Sie haben erfolgreich eine DevSecOps CD-Toolchain erstellt und die cd-pipeline zum manuellen Auslösen in der Produktionsumgebung ausgeführt.

Fahren Sie nun mit Einrichten einer CC-Toolchain fort.