Anwendung auf einem Ziel implementieren

Sie können Ihre Anwendung auf einem von drei Zielen bereitstellen: Push-basierte Bereitstellung, Pull-basierte Bereitstellung oder ein angepasstes Ziel.

Implementierung mit Push-basierter Implementierung

Sie können Push based deployment als Bereitstellungsziel auswählen, wenn Sie Ihre Anwendung unter Red Hat® OpenShift® auf IBM Cloudbereitstellen möchten. DevSecOpsEine Methodik, die Sicherheitsvorkehrungen in den Lebenszyklus von Softwareentwicklung und -betrieb integriert. Ziel der Einbindung ist ein ausgewogenes Verhältnis von Geschwindigkeit und Sicherheit bei der Entwicklung. stellt Skripte zur Verfügung, um Ihre Anwendung auf dem Cluster bereitzustellen. Möglicherweise müssen Sie diese Scripts an Ihre Anwendungs-und Clusteranforderungen anpassen.

Diese Scripts befinden sich im Implementierungsrepository und werden in der Datei pipeline-config.yml angegeben.

deploy:
  image: icr.io/continuous-delivery/pipeline/pipeline-base-image:2.12@sha256:ff4053b0bca784d6d105fee1d008cfb20db206011453071e86b69ca3fde706a4
  script: |
    #!/usr/bin/env bash

    if [[ "$PIPELINE_DEBUG" == 1 ]]; then
      trap env EXIT
      env
      set -x
    fi

    source scripts/deploy_setup.sh
    source scripts/deploy.sh
    export DEPLOY_EXIT=$?
    source scripts/doi-publish-deploy.sh

Bereitstellung mit Pull-basierter Implementierung

DevSecOps bietet die Möglichkeit, Ihre Anwendung mithilfe der Pull-basierten Bereitstellung über IBM Cloud Satellite Config zu implementieren.

IBM Cloud Satellite ist eine Erweiterung von IBM Cloud Public, die im Rechenzentrum des Kunden oder in der Peripherie ausgeführt werden kann. Jeder IBM Cloud Satellite-Standort wird über IBM Cloud Satellite Link verbunden, der die Verbindung zu der IBM Cloud®-Steuerebene bereitstellt. Es bietet Audit, Paketaufzeichnung und Sichtbarkeit für das Sicherheitsteam, während ein Konfigurationsdienstprogramm einen globalen Überblick über Anwendungen und Services bietet. IBM Cloud Satellite Link bietet eine einfache Möglichkeit, die Verbindung zwischen IBM Cloud und dem Standort Satellite zu verwalten, wobei der gesamte Datenverkehr, der hin-und hergeht, mit der Steuerung der Endpunkte auf beiden Seiten des Links angezeigt wird.

Benutzer können Gruppen von Red Hat® OpenShift®-Clustern in einem Satellite-Clustergruppe haben. Sie können Satellite-Konfiguration verwenden, um die Anwendung in einem Satellite-Clustergruppe zu implementieren.

Führen Sie einen aus zwei Schritten bestehenden Prozess aus, um Ihre Red Hat® OpenShift®-Cluster für die Nutzung der Satellite-Konfiguration für gleichzeitige Bereitstellungen zu aktivieren.

  1. Clustergruppe erstellen-Dies ist eine logische Gruppierung von Clustern, die an einer Satellite-Position ausgeführt werden.

  2. Fügen Sie einen Cluster einer Clustergruppe hinzu, wodurch Satellite Konfigurationszugriff zum Verwalten der Ressourcen innerhalb des Clusters erteilt wird.

Als erweiterte Konfiguration können Sie die Anwendung auch in der Recheninfrastruktur in Ihrem lokalen Rechenzentrum oder in anderen Cloud-Providern implementieren, indem Sie IBM Cloud Satellite verwenden.

  1. Erstellen Sie eine Satellite-Position für die Recheninfrastruktur in Ihrem lokalen Rechenzentrum oder anderen Cloud-Providern mithilfe vordefinierter Vorlagen.

  2. Stellen Sie einen Red Hat® OpenShift®-Cluster in der Position Satellite mithilfe des Setups bereit.

  3. Clustergruppe erstellen-Dies ist eine logische Gruppierung von Clustern, die an einer Satellite-Position ausgeführt werden.

  4. Fügen Sie einen Cluster einer Clustergruppe hinzu, wodurch Satellite Konfigurationszugriff zum Verwalten der Ressourcen innerhalb des Clusters erteilt wird.

Voraussetzungen

  • Diese Toolchain verwendet Satellite Config, um eine Anwendung in einer Gruppe von Clustern bereitzustellen.
  • Diese Toolchain setzt voraus, dass eine Satellite-Clustergruppe mit den erforderlichen Clustern vorhanden ist.
  • Diese Toolchain unterstützt eine Satellite-Clustergruppe, die nur einen Clustertyp enthält (Red Hat® OpenShift®).

Deployment

DevSecOps stellt sofort einsatzbereite Skripte zur Verfügung, um Ihre Anwendung auf der Gruppe von Clustern bereitzustellen. Möglicherweise müssen Sie diese Scripts an die Anforderungen Ihrer Anwendung und Clustergruppe anpassen.

Diese Scripts befinden sich im Implementierungsrepository und werden in der Datei pipeline-config.yml angegeben.

deploy:
  image: icr.io/continuous-delivery/pipeline/pipeline-base-image:2.12@sha256:ff4053b0bca784d6d105fee1d008cfb20db206011453071e86b69ca3fde706a4
  script: |
    #!/usr/bin/env bash

    if [[ "$PIPELINE_DEBUG" == 1 ]]; then
      trap env EXIT
      env
      set -x
    fi

    source scripts/deploy_setup.sh
    source scripts/deploy.sh
    export DEPLOY_EXIT=$?
    source scripts/doi-publish-deploy.sh

In einem angepassten Ziel implementieren

Führen Sie die Implementierung auf einem angepassten Ziel durch, wenn Sie Folgendes ausführen:

  • Stellen Sie Ihre Anwendung in Ihrer eigenen Infrastruktur bereit, z. B. Virtual Server Instances (VSI).
  • Angepasste Tasks ausführen, z. B. einige Konfigurationen in einem Red Hat® OpenShift®-Cluster aktualisieren.

Wählen Sie in diesen Fällen "custom" als Implementierungsziel aus.

Angepasste Implementierung ausführen

  • DevSecOps vorlagen sind vollständig anpassbar. Sie können eigene Phasen und Schritte in der Datei pipeline-config.yml des Implementierungsrepositorys bereitstellen.
  • Sie können angepasste Scripts in den Stages setup, deploy und acceptance-test in der Datei pipeline-config.yml bereitstellen.
  • Diese Scripts werden während der Ausführung der CD-Pipeline (Continuous Deployment) ausgeführt.