Konfigurera en mellanlagringsmiljö i Azure Spring Cloud

Den här artikeln gäller för: ✔️ Java

I den här artikeln förklaras hur du ställer in en mellanlagringsdistribution med hjälp av det blågröna distributionsmönstret i Azure Spring Cloud. Blå-grön distribution är ett mönster för kontinuerlig leverans i Azure DevOps som förlitar sig på att hålla en befintlig (blå) version live medan en ny (grön) distribueras. Den här artikeln visar hur du för in den mellanlagringsdistributionen i produktion utan att ändra produktionsdistributionen.

Förutsättningar

Den här artikeln använder ett program som skapats från Spring Initializr. Om du vill använda ett annat program i det här exemplet måste du göra en enkel ändring i en offentlig del av programmet för att skilja mellan mellanlagringsdistributionen och produktionen.

Tips

Azure Cloud Shell är ett kostnadsfritt interaktivt gränssnitt som du kan använda för att köra anvisningarna i den här artikeln. Den har vanliga, förinstallerade Azure-verktyg, inklusive de senaste versionerna av Git, JDK, Maven och Azure CLI. Om du är inloggad på din Azure-prenumeration startar du din Cloud Shell instans. Mer information finns i Översikt över Azure Cloud Shell.

Om du vill konfigurera blå-grön distribution i Azure Spring Cloud följer du anvisningarna i nästa avsnitt.

Installera Azure CLI-tillägget

Installera Azure Spring Cloud för Azure CLI med hjälp av följande kommando:

az extension add --name spring-cloud

Förbereda appen och distributionerna

Följ dessa steg för att skapa programmet:

  1. Generera koden för exempelappen med hjälp av Spring Initializr med den här konfigurationen.

  2. Ladda ned koden.

  3. Lägg till följande HelloController.java-källfil i mappen *\src\main\java\com\example\hellospring * :

    package com.example.hellospring;
    import org.springframework.web.bind.annotation.RestController;
    import org.springframework.web.bind.annotation.RequestMapping;
    
    @RestController
    
    public class HelloController {
    
    @RequestMapping("/")
    
      public String index() {
          return "Greetings from Azure Spring Cloud!";
      }
    
    }
    
  4. Skapa .jar-filen:

    mvn clean package -DskipTests
    
  5. Skapa appen i din Azure Spring Cloud instans:

    az spring-cloud app create -n demo -g <resourceGroup> -s <Azure Spring Cloud instance> --assign-endpoint
    
  6. Distribuera appen till Azure Spring Cloud:

    az spring-cloud app deploy -n demo -g <resourceGroup> -s <Azure Spring Cloud instance> --jar-path target\hellospring-0.0.1-SNAPSHOT.jar
    
  7. Ändra koden för mellanlagringsdistributionen:

    package com.example.hellospring;
    import org.springframework.web.bind.annotation.RestController;
    import org.springframework.web.bind.annotation.RequestMapping;
    
    @RestController
    
    public class HelloController {
    
    @RequestMapping("/")
    
      public String index() {
          return "Greetings from Azure Spring Cloud! THIS IS THE GREEN DEPLOYMENT";
      }
    
    }
    
  8. Återskapa .jar-filen:

    mvn clean package -DskipTests
    
  9. Skapa den gröna distributionen:

    az spring-cloud app deployment create -n green --app demo -g <resourceGroup> -s <Azure Spring Cloud instance> --jar-path target\hellospring-0.0.1-SNAPSHOT.jar
    

Visa appar och distributioner

Visa distribuerade appar med hjälp av följande procedur:

  1. Gå till din Azure Spring Cloud instans i Azure Portal.

  2. I den vänstra rutan öppnar du fönstret Appar för att visa appar för din tjänstinstans.

    Skärmbild av fönstret Öppna appar.

  3. Du kan välja en app och visa information.

    Skärmbild av information för en app.

  4. Öppna Distributioner för att se alla distributioner av appen. Rutnätet visar både produktions- och mellanlagringsdistributioner.

    Skärmbild som visar appdistributioner.

  5. Välj URL:en för att öppna det aktuella distribuerade programmet.

    Skärmbild som visar R L för det distribuerade programmet.

  6. Välj Produktion i kolumnen Tillstånd för att se standardappen.

    Skärmbild som visar R L för standardappen.

  7. Välj Mellanlagring i kolumnen Tillstånd för att se mellanlagringsappen.

    Skärmbild som visar R L för mellanlagringsappen.

Tips

  • Kontrollera att testslutpunkten slutar med ett snedstreck (/) för att säkerställa att CSS-filen läses in korrekt.
  • Om webbläsaren kräver att du anger inloggningsuppgifter för att visa sidan använder du URL-avkodning för att avkoda testslutpunkten. URL-avkodning returnerar en URL i formatet https:// : <username> <password> @ <cluster-name> .test.azureapps.io/gateway/green. Använd det här formatet för att få åtkomst till slutpunkten.

Anteckning

Inställningarna för konfigurationsservern gäller för både mellanlagringsmiljön och produktionsmiljön. Om du till exempel anger kontextsökvägen (server.servlet.context-path) för din appgateway i konfigurationsservern som somepath ändras sökvägen till den gröna distributionen till <username> https://: <password> @ <cluster-name> .test.azureapps.io/gateway/green/somepath/....

Om du besöker din offentliga appgateway nu bör du se den gamla sidan utan din nya ändring.

Ange den gröna distributionen som produktionsmiljö

  1. När du har verifierat ändringen i mellanlagringsmiljön kan du skicka den till produktion. På sidan > Appdistributioner väljer du det program som för närvarande är i produktion.

  2. Välj ellipsen efter registreringsstatus för den gröna distributionen och välj sedan Ange som produktion.

    Skärmbild som visar val för att ställa in mellanlagringsbygget till produktion.

  3. Bekräfta att url:en för appen visar dina ändringar.

    Skärmbild som visar R L för appen som nu är i produktion.

Anteckning

När du har angett den gröna distributionen som produktionsmiljö blir den föregående distributionen mellanlagringsdistributionen.

Ändra mellanlagringsdistributionen

Om du inte är nöjd med ändringen kan du ändra programkoden, skapa ett nytt .jar-paket och ladda upp det till den gröna distributionen med hjälp av Azure CLI:

az spring-cloud app deploy  -g <resource-group-name> -s <service-instance-name> -n gateway -d green --jar-path gateway.jar

Ta bort mellanlagringsdistributionen

Om du vill ta bort din mellanlagringsdistribution Azure Portal du till sidan för mellanlagringsdistributionen och väljer knappen Ta bort.

Du kan också ta bort mellanlagringsdistributionen från Azure CLI genom att köra följande kommando:

az spring-cloud app deployment delete -n <staging-deployment-name> -g <resource-group-name> -s <service-instance-name> --app gateway

Nästa steg