Alkalmazás és üzembe helyezés az Azure Spring Appsben

Feljegyzés

Az Azure Spring Apps az Azure Spring Cloud szolgáltatás új neve. Bár a szolgáltatásnak új neve van, bizonyos helyeken a régi nevet fogja látni egy darabig, miközben az eszközök, például képernyőképek, videók és diagramok frissítésével dolgozunk.

Ez a cikk a következőre vonatkozik: ✔️ Java ✔️ C#

Ez a cikk a következőre vonatkozik: ✔️ Basic/Standard ✔️ Enterprise

Az Azure Spring Apps erőforrásmodelljének két fő fogalma az alkalmazás és az üzembe helyezés . Az Azure Spring Appsben az alkalmazás egy üzleti alkalmazás absztrakciója. Az alkalmazásként üzembe helyezett kód vagy bináris verzió egy központi telepítésben fut. Az alkalmazások egy Azure Spring Apps-szolgáltatáspéldányban vagy egyszerűen szolgáltatáspéldányban futnak, ahogy a következő ábra is mutatja.

Diagram showing the relationship between the apps and deployments.

Egyetlen Azure-előfizetésen belül több szolgáltatáspéldány is lehet, de az Azure Spring Apps Service akkor a legegyszerűbb, ha az üzleti alkalmazást alkotó összes alkalmazás egyetlen szolgáltatáspéldányon belül található. Ennek egyik oka, hogy az alkalmazások valószínűleg kommunikálnak egymással. Ezt egyszerűen megtehetik az Eureka szolgáltatásregisztrációs adatbázisának használatával a szolgáltatáspéldányban.

Az Azure Spring Apps Standard csomag lehetővé teszi, hogy egy alkalmazás egy éles üzembe helyezéssel és egy átmeneti üzembe helyezéssel rendelkezzen, hogy könnyen elvégezhesse rajta a kék/zöld üzembe helyezést.

Alkalmazás

Az alábbi funkciók/tulajdonságok alkalmazásszinten vannak definiálva.

Funkciók Leírás
Nyilvános
végpont
Az alkalmazás eléréséhez szükséges URL-cím.
Egyéni
tartomány
Az CNAME egyéni tartományt biztonságossá tevő rekord.
Szolgáltatáskötés
A beépített kapcsolat más Azure-szolgáltatásokkal.
Felügyelt
identitás
A Microsoft Entra ID által felügyelt identitás lehetővé teszi, hogy az alkalmazás egyszerűen hozzáférjen más Microsoft Entra által védett erőforrásokhoz, például az Azure Key Vaulthoz.
Állandó
tárterület
Az a beállítás, amely lehetővé teszi, hogy az adatok az alkalmazás újraindítása után is megmaradjanak.

Telepítés

Az alábbi funkciók/tulajdonságok az üzembe helyezés szintjén vannak definiálva, és az éles és átmeneti üzembe helyezés cseréjekor cserélődnek.

Funkciók Leírás
CPU A virtuális magok száma alkalmazáspéldányonként.
Memory (Memória) Az alkalmazáspéldányonkénti memória GB-jának száma.
Példányok
száma
Az alkalmazáspéldányok száma manuálisan vagy automatikusan beállítva.
Automatikus méretezés A skálázási példányok száma automatikusan előre meghatározott szabályok és ütemezések alapján.
JVM-beállítások
A beállítani kívánt JVM-beállítások.
Környezeti
változók
A beállítandó környezeti változók.
Futtatókörnyezet verziója
Java 8 vagy Java 11.

Környezet

Az Azure Spring Apps néhány írásvédett YAML-fájlt csatlakoztat az üzembe helyezett alkalmazásokhoz. Ezek a fájlok az üzembe helyezés Azure-környezetét tartalmazzák. Az alábbi listában a YAML-fájlok elérési útjai és tartalma látható:

  • /etc/azure-spring-cloud/context/azure-spring-apps.yml

    AZURE_SPRING_APPS:
        SUBSCRIPTION_ID:  <your-azure-subscription-id>
        RESOURCE_GROUP: <your-resource-group-name>
        NAME: <your-azure-spring-apps-name>
    
  • /etc/azure-spring-cloud/context/azure-spring-apps-deployment.yml

    AZURE_SPRING_APPS:
         APP:
            NAME: <your-app-name>
         DEPLOYMENT:
            NAME: <your-deployment-name>
            ACTIVE: true # true if the deployment is in production, false if in staging
    

Ha az alkalmazás Spring Boot-alkalmazás, a rendszer hozzáadja ezt a két fájl elérési útját a SPRING_CONFIG_ADDITIONAL_LOCATION környezeti változóhoz. Így az alkalmazás konfigurációként betöltheti ezeket a tulajdonságokat, és használhatja őket a kódban. A széljegyzet használatával @ConfigurationProperties például a YAML-tulajdonságokat egy Java-osztályhoz kötheti. Az alábbi kódrészlet bemutatja, hogyan hozható létre az @Configuration Azure-környezetet képviselő osztály:

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;

@Configuration
@ConfigurationProperties(prefix = "azure-spring-apps")
@Data
public class AzureSpringAppsContext {

    private String subscriptionId;
    private String resourceGroup;
    private String name;

    private AppContext app;
    private DeploymentContext deployment;

    @Data
    public static class AppContext {
        private String name;
    }

    @Data
    public static class DeploymentContext {
        private String name;
        private boolean active;
    }
}

Bármely más többértelmű alkalmazás esetében előfordulhat, hogy a megfelelő tulajdonságokat a megfelelő fájlolvasási/írási kódtárak használatával kell olvasnia és elérnie az alkalmazásokban.

Korlátozások

  • Egy alkalmazásnak egy éles üzembe helyezéssel kell rendelkeznie. Az API letiltja az éles környezet törlését. A törlés előtt fel kell cserélnie az üzembe helyezést az előkészítésre.
  • Egy alkalmazás legfeljebb két üzembe helyezéssel rendelkezhet. Az API kétnál több üzembe helyezés létrehozását blokkolja. Helyezze üzembe az új bináris fájlt a meglévő éles vagy átmeneti környezetben.
  • Az üzembe helyezés kezelése nem érhető el az Alapszintű csomagban. Használja a Standard vagy a Nagyvállalati csomagot a kék-zöld üzembe helyezési képességhez.

Következő lépések