Rückgängigmachen einer Aktualisierung mit Hilfe der CLI
In diesem Tutorial erfahren Sie, wie Sie eine Bereitstellung mithilfe der Befehlszeilenschnittstelle zurücksetzen können. In diesem Tutorial lernen Sie, wie Sie Änderungen an einer verteilbaren Architekturkonfiguration in einem Projekt rückgängig machen können. Am Ende dieses Tutorials wird die Konfiguration Ihrer verteilbaren Architektur mit der letzten erfolgreich verteilten Version übereinstimmen.
Stellen Sie sich vor, Sie sind Softwareentwickler für das Unternehmen Example Corp. Ihr Infrastrukturarchitekt hat die Cloud-Automatisierung für Code Engine entdeckt und Ihr Cloud-Automatisierungsexperte hat sie so angepasst, dass sie
Ihre Geschäftsanforderungen vollständig erfüllt. Sie haben diese angepasste Architektur mit der Bezeichnung Example Corp's infrastructure in zwei Regionen eingesetzt. Dann hat Ihr Cloud-Automatisierungsexperte eine neue Version
von Example Corp's infrastructure veröffentlicht, und Sie haben Ihre laufenden Bereitstellungen auf die neueste Version aktualisiert. Vor kurzem hat Ihr Team einen Fehler in der Region us-south entdeckt. Der Fehler
ist neu, daher möchten Sie die Bereitstellung für die Region us-south auf den vorherigen Stand zurücksetzen, da Sie wissen, dass diese Bereitstellung den Fehler nicht enthielt.
In diesem Tutorial wird ein fiktives Szenario verwendet, um Ihnen zu verdeutlichen, wie Sie bereitgestellte Änderungen an einer bereitstellbaren Architekturkonfiguration in Ihrem Projekt zurücksetzen können. Passen Sie beim Durcharbeiten des Tutorials jeden Schritt an die Bedürfnisse Ihres Unternehmens an.
Vorbereitende Schritte
-
Erstellen Sie eine benutzerdefinierte einsatzfähige Architektur namens
Example Corp's infrastructureund binden Sie sie in einen privaten Katalog namensExample Corp catalogein. -
Stellen Sie die Infrastruktur von Example Corp in zwei Regionen bereit, indem Sie ein Projekt namens
Example Corp infrastructureverwenden. -
Aktualisieren Sie die Infrastruktur von Example Corp mit einer neuen Version im privaten Katalog und fügen Sie zwei Datenbankoptionen hinzu, zwischen denen Ihre Benutzer wählen können. Validieren Sie die Version im privaten Katalog, damit die neue Version den Status
Validated drafthat. -
Aktualisieren Sie Ihr Projekt, um die neueste Version von
Example Corp's infrastructurezu verwenden, und stellen Sie die Änderungen bereit.Die neueste Version von
Example Corp's infrastructureenthält Datenbankoptionen, die von IhremExample Corp infrastructureProjekt aus eingesetzt werden können. Die Durchführung dieses Tutorials hat keine Auswirkungen auf Ihr Projekt, außer auf die Konfiguration vonexample-corp-us-south. Bei Bedarf können Sie die anderen Konfigurationen in Ihrem Projekt, einschließlich aller Datenbanken, separat zurücksetzen. -
Installieren Sie die IBM Cloud CLI, um dieses Lernprogramm abzuschließen.
Suchen Sie die Projekt-ID, die Konfigurations-ID und die Version, zu der Sie zurückkehren möchten
Bevor Sie die CLI-Befehle ausführen können, um Ihre Änderungen an einer zuvor bereitgestellten Version rückgängig zu machen, benötigen Sie die ID der Konfiguration example-corp-us-south und die ID des Projekts Example Corp infrastructure,
das die Konfiguration enthält.
Führen Sie die folgenden Befehle aus, um diese IDs und die Version mit Hilfe der CLI zu ermitteln:
-
Melden Sie sich bei IBM Cloud an, indem Sie den folgenden
ibmcloud loginbefehl. Wenn Sie mehrere Konten haben, werden Sie aufgefordert, das zu verwendende Konto auszuwählen:ibmcloud login \ --ssoVerwenden Sie die Option
--sso, um sich über die Konsole anzumelden. Wenn Sie dies tun, öffnet sich die Konsole in einem Webbrowser, in dem Sie sich anmelden können. Anschließend wird ein Code generiert, den Sie in die CLI einfügen können. -
Suchen Sie die ID für das Projekt
Example Corp infrastructurein Ihrem Konto, indem Sie den folgendenibmcloud project listbefehl:ibmcloud project list \ --all-pagesVerwenden Sie die Option
--all-pages, um alle Projekte in Ihrem Konto abzurufen. -
Verwenden Sie die ID des Projekts
Example Corp infrastructureund den Namen der Konfiguration, um die Konfigurations-ID zu finden. Führen Sie dazu den folgendenibmcloud project configsbefehl aus, um dies zu tun:ibmcloud project configs \ --project-id <Example-Corp-infrastructure-project-id> \ --all-pages -
Verwenden Sie die ID des Projekts
Example Corp infrastructureund die ID der Konfigurationexample-corp-us-south, um die Versionen dieser Konfiguration im Projekt zu finden. Führen Sie den folgendenibmcloud project config-versionsbefehl aus:ibmcloud project config-versions \ --project-id <Example-Corp-infrastructure-project-id> \ --id <example-corp-us-south-id>Es sollten zwei Versionen der Konfiguration
example-corp-us-southaufgeführt werden. Die zweite Version befindet sich im Zustanddeployed, die erste Version im Zustandsuperseded. Die früheste Version ist die erste, die eingesetzt wurde. Diese Version ist diejenige, zu der Sie zurückkehren möchten.
Rufen Sie die Version ab, zu der Sie zurückkehren möchten
Da Sie nun die IDs und die Version haben, zu der Sie zurückkehren möchten, führen Sie den folgenden ibmcloud project config-version befehl aus, um die spezifische Version von example-corp-us-south abzurufen. Stellen Sie sicher, dass Sie den Parameter für die Rückgabe der Ausgabe im Format JSON angeben:
ibmcloud project config-version \
--project-id <Example-Corp-infrastructure-project-id> \
--id <example-corp-us-south-id> \
--version 1 \
--output json
Kopieren Sie den Inhalt des Blocks definition in die Ausgabe JSON und speichern Sie ihn in einer Datei definition.json. Der Inhalt von definition umfasst die von Ihnen bereitgestellten Eingabewerte,
die Berechtigung, die Sie verwendet haben, um dem Projekt Zugriff auf die Bereitstellung für Ihr Zielkonto zu gewähren, den Namen Ihrer Konfiguration und die Locator-ID für Example Corp's infrastructure, die die bereitstellbare
Architektur im privaten Katalog identifiziert. Betrachten Sie es als einen Schnappschuss von Version 1 von example-corp-us-south mit allen Eingaben und Informationen, die Sie in Ihrem Projekt bereitgestellt haben, zum Beispiel:
{
"authorizations": {},
"compliance_profile": {},
"description": "",
"inputs": {
"prefix": "us-south",
"region": "us-south"
},
"locator_id": "<Example-Corp-catalog-locator-id>",
"name": "example-corp-us-south",
"environment_id": "<Example-Corp-infrastructure-dev-id>"
}
Aktualisieren Sie die Konfiguration, um die Definition der Vorgängerversion zu verwenden
Da Sie nun die Definition von Version 1 von example-corp-us-south haben, aktualisieren Sie die Konfiguration, um diese Definition zu verwenden. Damit wird example-corp-us-south so aktualisiert, wie Sie es bei der Bereitstellung
von Version 1 konfiguriert haben. Führen Sie den folgenden ibmcloud project config-update befehl für example-corp-us-south aus:
ibmcloud project config-update \
--project-id <Example-Corp-infrastructure-project-id> \
--id <example-corp-us-south-id> \
--definition "$(cat definition.json)"
Validieren, Genehmigen und Bereitstellen der Änderungen
Nun, da example-corp-us-south aktualisiert wurde, um die Definition für die erste Version der Konfiguration zu verwenden, ist es an der Zeit, die Änderungen zu validieren, zu genehmigen und bereitzustellen. Sie können dazu die Konsole verwenden oder die folgenden CLI-Befehle ausführen:
-
Validieren Sie
example-corp-us-south, indem Sie den folgendenibmcloud project config-validatebefehl:ibmcloud project config-validate \ --project-id <Example-Corp-infrastructure-project-id> \ --id <example-corp-us-south-id> -
Genehmigen Sie
example-corp-us-southdurch Ausführen des folgendenibmcloud project config-approvebefehl:ibmcloud project config-approve \ --project-id <Example-Corp-infrastructure-project-id> \ --id <example-corp-us-south-id> \ --comment <Rolling back to the previously deployed version> -
Setzen Sie
example-corp-us-southein, indem Sie den folgendenibmcloud project config-deploybefehl:ibmcloud project config-deploy \ --project-id <Example-Corp-infrastructure-project-id> \ --id <example-corp-us-south-id>
Nachdem die Bereitstellung erfolgreich abgeschlossen wurde, wird example-corp-us-south auf die erste Version der Konfiguration zurückgesetzt, die Sie aus dem Projekt bereitgestellt haben. Ihr Team kann nun den Fehler untersuchen
und bei Bedarf ein Update auf Example Corp's infrastructure veröffentlichen.