U configureert het terugdraaien als een pijplijn met taken die uw implementatie retourneren naar een eerdere stabiele status na een fout in een implementatiepijplijn. Als u wilt terugdraaien nadat een fout is opgetreden, voegt u de terugdraaipijplijn toe aan taken of fasen.

Afhankelijk van uw rol kunnen uw redenen om terug te draaien verschillen.

  • Als release-engineer wil ik dat Code Stream het succes kan controleren tijdens een release, zodat ik kan weten of de release moet worden voortgezet of teruggedraaid. Mogelijke fouten zijn onder meer het mislukken van een taak, een weigering in UserOps en het overschrijden van de drempelwaarde voor metrieken.
  • Als eigenaar van een omgeving wil ik een vorige versie opnieuw implementeren zodat ik snel een omgeving kan terugdraaien naar een status waarvan ik weet dat die goed is.
  • Als eigenaar van een omgeving wil ik het terugdraaien van een Blue-Green-implementatie ondersteunen zodat de uitvaltijd door mislukte releases kan worden geminimaliseerd.

Wanneer u een slimme pijplijnsjabloon gebruikt om een CD-pijplijn te maken waarbij de terugdraaioptie is aangeklikt, wordt het terugdraaien automatisch toegevoegd aan de taken in de pijplijn. In dit gebruiksscenario gebruikt u de slimme pijplijnsjabloon om het terugdraaien voor een applicatie-implementatie op een Kubernetes-cluster te definiëren met behulp van het doorlopende upgrade-implementatiemodel. De slimme pijplijnsjabloon maakt een implementatiepijplijn en een of meer terugdraaipijplijnen.

  • In de implementatiepijplijn is terugdraaien vereist als de taken Implementatie bijwerken of Implementatie verifiëren mislukken.
  • In de terugdraaipijplijn wordt de implementatie bijgewerkt met een oude image.

U kunt ook handmatig een terugdraaipijplijn maken met behulp van een lege sjabloon. Voordat u een terugdraaipijplijn maakt, moet u uw terugdraaistroom plannen. Zie Plannen voor terugdraaien in Code Stream voor meer achtergrondinformatie over terugdraaien.

Voorwaarden

  • Controleer of u lid bent van een project in Code Stream. Als u geen beheerder bent, vraagt u de Code Stream-beheerder om u als lid toe te voegen aan een project. Zie Hoe voeg ik een project toe in Code Stream?.
  • Stel de Kubernetes-clusters in waarop uw pijplijn uw applicatie zal implementeren. Stel één ontwikkelingscluster en één productiecluster in.
  • Controleer of u een Docker-register heeft ingesteld.
  • Identificeer een project dat al uw werk groepeert, inclusief uw pijplijn, eindpunten en dashboards.
  • Raak vertrouwd met de slimme CD-sjabloon zoals beschreven in het CD-gedeelte van Een systeemeigen CICD-build plannen in Code Stream voordat u de slimme pijplijnsjabloon gebruikt, bijvoorbeeld:
    • Maak de Kubernetes-eindpunten voor ontwikkeling en productie die uw applicatie-image implementeren op de Kubernetes-clusters.
    • Bereid het Kubernetes YAML-bestand voor dat de naamruimte, service en implementatie maakt. Als u een image moet downloaden uit een privéopslagplaats, moet het YAML-bestand een sectie bevatten met het Docker-configuratiegeheim.

Procedure

  1. Klik op Pijplijnen > Nieuwe pijplijn > Slimme sjabloon > Continue levering.
  2. Voer de informatie in de slimme pijplijnsjabloon in.
    1. Selecteer een project.
    2. Voer een pijplijnnaam in, zoals DoorlopendeUpgrade-Voorbeeld.
    3. Selecteer de omgevingen voor uw applicatie. Om terugdraaien aan uw implementatie toe te voegen, moet u Productie selecteren.
    4. Klik op Selecteren, kies een Kubernetes-YAML-bestand en klik op Verwerken.
      In de slimme pijplijnsjabloon worden de beschikbare services en implementatieomgevingen weergegeven.
    5. Selecteer de service die door de pijplijn wordt gebruikt voor de implementatie.
    6. Selecteer de clustereindpunten voor de ontwikkelingsomgeving en de productieomgeving.
    7. Selecteer als imagebron Runtime-input voor pijplijn.
    8. Selecteer als Implementatiemodel Doorlopende upgrade.
    9. Klik op Terugdraaien.
    10. Geef de Gezondheidscontrole-URL op.
    Wanneer u een terugdraaipijplijn maakt, voert u de gegevens in, selecteert u een service, implementatie en implementatiemodel en schakelt u het selectievakje Terugdraaien in.
  3. Om de pijplijn met de naam TerugdraaiUpgrade-Voorbeeld te maken, klikt u op Maken.

    De pijplijn met de naam TerugdraaiUpgrade-Voorbeeld wordt weergegeven en het terugdraaipictogram wordt weergegeven op taken die kunnen terugdraaien in de ontwikkelingsfase en de productiefase.

    Op een terugdraaipijplijn wordt het terugdraaipictogram weergegeven bij taken waarop de pijplijn kan worden teruggedraaid.

  4. Sluit de pijplijn.

    Op de pagina Pijplijnen wordt de pijplijn weergegeven die u hebt gemaakt en wordt een nieuwe pijplijn weergegeven voor elke fase in uw pijplijn.

    • DoorlopendeUpgrade-Voorbeeld. Code Stream deactiveert de pijplijn die u standaard heeft gemaakt. Dit zorgt ervoor dat u de pijplijn controleert voordat u deze uitvoert.
    • DoorlopendeUpgrade-Voorbeeld_Ontw_Terugdraaien. Bij het mislukken van taken in de ontwikkelingsfase, zoals Service maken, Geheim maken, Implementatie maken en Implementatie verifiëren, wordt deze terugdraai-ontwikkelingspijplijn aangeroepen. Om het terugdraaien van ontwikkelingstaken te garanderen, activeert Code Stream de pijplijn voor het terugdraaien van ontwikkelingsstappen standaard.
    • DoorlopendeUpgrade-Voorbeeld_Prod_Terugdraaien. Bij het mislukken van taken in de productiefase, zoals Fase 1 implementeren, Fase 1 verifiëren, Fase Terugdraai implementeren, Fase Terugdraai voltooien en Fase Terugdraai verifiëren, deze productiepijplijn voor terugdraaien aanroepen. Om het terugdraaien van productietaken te garanderen, activeert Code Stream de productiepijplijn voor terugdraaien standaard.
    Code Stream maakt terugdraaipijplijnen voor de fasen en activeert ze.
  5. Schakel de pijplijn in die u heeft gemaakt in en voer deze uit.
    Wanneer u de uitvoering start, wordt u in Code Stream gevraagd om invoerparameters. U geeft de image en tag op voor het eindpunt in de Docker-opslagplaats die u gebruikt.
  6. Selecteer Acties > Uitvoering bekijken op de pagina Uitvoeringen en bekijk de pijplijnuitvoering.

    De pijplijn start met UITVOEREN… en gaat door de taken in de ontwikkelingsfase. Als het uitvoeren van een taak door de pijplijn tijdens de ontwikkelingsfase mislukt, wordt de pijplijn met de naam DoorlopendeUpgrade-Voorbeeld_Ontw_Terugdraaien geactiveerd en wordt de implementatie teruggedraaid, en wordt de status van de pijplijn gewijzigd in TERUGDRAAIEN.

    De pijplijn voor terugdraaien draait de implementatie terug en retourneert de pijplijn naar de vorige stabiele status.

    Na het terugdraaien vermeldt de pagina Uitvoeringen twee uitvoeringen van de DoorlopendeUpgrade-Voorbeeld-pijplijnen.

    • De pijplijn die u hebt gemaakt, wordt teruggedraaid en geeft TERUGDRAAIEN_VOLTOOID weer.
    • De ontwikkelingspijplijn voor terugdraaien die het terugdraaien heeft geactiveerd en uitgevoerd, geeft VOLTOOID weer.

    De terugdraairesultaten wordt weergegeven op het tabblad Uitvoeringen en in de opmerkingen wordt het triggerpunt van het terugdraaien weergegeven.

resultaten

Gefeliciteerd! U heeft een pijplijn met terugdraaifunctie gedefinieerd en heeft gezien hoe Code Stream de pijplijn heeft teruggedraaid op het punt van mislukken.