Konfigurera en mellanlagringsmiljö i Azure Spring Apps
Kommentar
Basic-, Standard- och Enterprise-planerna kommer att vara inaktuella från och med mitten av mars 2025, med en 3-årig pensionsperiod. Vi rekommenderar att du övergår till Azure Container Apps. Mer information finns i meddelandet om azure Spring Apps-pensionering.
Standardförbrukningen och den dedikerade planen kommer att vara inaktuell från och med den 30 september 2024, med en fullständig avstängning efter sex månader. Vi rekommenderar att du övergår till Azure Container Apps. Mer information finns i Migrera Azure Spring Apps Standard-förbrukning och dedikerad plan till Azure Container Apps.
Den här artikeln gäller för: ✔️ Java ❌ C#
Den här artikeln gäller för:❌ Basic ✔️ Standard ✔️ Enterprise
Den här artikeln beskriver hur du konfigurerar en mellanlagringsdistribution med hjälp av det blågröna distributionsmönstret i Azure Spring Apps. Blågrön distribution är ett azure DevOps-mönster för kontinuerlig leverans 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 placerar mellanlagringsdistributionen i produktion utan att ändra produktionsdistributionen.
Förutsättningar
- En befintlig Azure Spring Apps-instans i Standard-planen.
- Azure CLI.
Den här artikeln använder ett program som skapats från Spring Initializr. Om du vill använda ett annat program för det här exemplet gör du en ändring i en offentlig del av programmet för att skilja mellanlagringsdistributionen från produktionsdistributionen.
Dricks
Azure Cloud Shell är ett kostnadsfritt interaktivt gränssnitt som du kan använda för att köra instruktionerna 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 Cloud Shell-instansen. Mer information finns i Översikt över Azure Cloud Shell.
Om du vill konfigurera blågrön distribution i Azure Spring Apps följer du anvisningarna i nästa avsnitt.
Installera Azure CLI-tillägget
Installera Azure Spring Apps-tillägget för Azure CLI med hjälp av följande kommando:
az extension add --name spring
Förbereda appen och distributionerna
Följ dessa steg för att skapa programmet:
Generera koden för exempelappen med hjälp av Spring Initializr med den här konfigurationen.
Ladda ned koden.
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 Apps!"; } }
Skapa .jar-filen:
mvn clean package -DskipTests
Skapa appen i din Azure Spring Apps-instans:
az spring app create \ --resource-group <resource-group-name> \ --service <Azure-Spring-Apps-instance-name> \ --name demo \ --runtime-version Java_17 \ --assign-endpoint
Distribuera appen till Azure Spring Apps:
az spring app deploy \ --resource-group <resource-group-name> \ --service <Azure-Spring-Apps-instance-name> \ --name demo \ --artifact-path target\hellospring-0.0.1-SNAPSHOT.jar
Ä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 Apps! THIS IS THE GREEN DEPLOYMENT"; } }
Återskapa .jar-filen:
mvn clean package -DskipTests
Skapa den gröna distributionen:
az spring app deployment create \ --resource-group <resource-group-name> \ --service <Azure-Spring-Apps-instance-name> \ --app demo \ --name green \ --runtime-version Java_17 \ --artifact-path target\hellospring-0.0.1-SNAPSHOT.jar
Visa appar och distributioner
Använd följande steg för att visa distribuerade appar.
Gå till din Azure Spring Apps-instans i Azure Portal.
Öppna fönstret Appar i navigeringsfönstret för att visa appar för din tjänstinstans.
Välj en app för att visa information.
Öppna Distributioner för att se alla distributioner av appen. Rutnätet visar både produktions- och mellanlagringsdistributioner.
Välj URL:en för att öppna det distribuerade programmet.
Välj Produktion i kolumnen Tillstånd för att se standardappen.
Välj Mellanlagring i kolumnen Tillstånd för att se mellanlagringsappen.
Dricks
Kontrollera att testslutpunkten slutar med ett snedstreck (/) för att säkerställa att CSS-filen läses in korrekt. Om din webbläsare 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.azuremicroservices.io/demo/green
. Använd det här formatet för att komma åt slutpunkten. Om du vill inaktivera grundläggande autentisering för testslutpunkten kör du följande Azure CLI-kommando: az spring app update --resource-group <resource-group-name> --service <Azure-Spring-Apps-instance-name> --name demo --disable-test-endpoint-auth true
Kommentar
Konfigurationsserverinställningarna 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 appdemo på konfigurationsservern som en sökväg ändras sökvägen till den gröna distributionen till https://\<username>:\<password>@\<cluster-name>.test.azuremicroservices.io/demo/green/somepath/...
.
Om du besöker din offentliga appdemo just nu bör du se den gamla sidan utan din nya ändring.
Ange den gröna distributionen som produktionsmiljö
När du har verifierat ändringen i mellanlagringsmiljön kan du push-överföra den till produktion. På sidan Appdistributioner> väljer du det program som för närvarande finns i Produktion.
Välj ellipsen efter registreringsstatus för den gröna distributionen och välj sedan Ange som produktion.
Bekräfta att url:en för appen visar dina ändringar.
Kommentar
När du har angett den gröna distributionen som produktionsmiljö blir den tidigare 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 din gröna distribution med hjälp av Azure CLI:
az spring app deploy \
--resource-group <resource-group-name> \
--service <service-instance-name> \
--name demo \
--deployment green \
--artifact-path demo.jar
Ta bort mellanlagringsdistributionen
Om du vill ta bort mellanlagringsdistributionen från Azure Portal går 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 app deployment delete \
--resource-group <resource-group-name> \
--service <service-instance-name> \
--name <staging-deployment-name> \
--app demo