Spring Cloud-alkalmazások migrálása Azure Container Apps

Ez az útmutató azt ismerteti, hogy mire érdemes figyelnie, amikor át szeretne telepíteni egy meglévő Spring Cloud-alkalmazást, hogy az Azure Container Apps futjon.

A migrálás előtt

A sikeres migrálás biztosításához a kezdés előtt végezze el az alábbi szakaszokban leírt értékelési és leltározási lépéseket.

Ha a migrálás előtti követelmények egyikét sem tudja teljesíteni, tekintse meg a következő kísérő áttelepítési útmutatókat:

  • Végrehajtható JAR-alkalmazások migrálása tárolókba az Azure Kubernetes Service-en (útmutató tervezés alatt)
  • A végrehajtható JAR-alkalmazások migrálása az Azure virtuális gépekre (útmutató tervezés alatt)

Alkalmazásösszetevők vizsgálata

Határozza meg, használják-e a fájlrendszert, és ha igen, hogyan

Keresse meg azokat az eseteket, ahol a szolgáltatások a helyi fájlrendszerbe írnak és/vagy olvasnak. Azonosíthatja a rövid távú/ideiglenes fájlok írási és olvasási helyét, valamint a hosszú élettartamú fájlok írási és olvasási helyét.

Azure Container Apps többféle tárhelyet kínál. A rövid élettartamú tároló képes az ideiglenes adatok olvasására és írására, és elérhető egy futó tároló vagy replika számára. Azure Fájl állandó tárhelyet biztosít, és több tárolón is megosztható. További információért lásd: Tárolócsatlakozások használata az Azure Container Apps-ben.

Csak olvasható statikus tartalom

Ha az alkalmazás jelenleg statikus tartalmat szolgál ki, másik helyre van szüksége. Érdemes lehet a statikus tartalmakat Azure Blob Storage-ba áthelyezni, és Azure CDN-t hozzáadni a globálisan villámgyors letöltésekhez. További információért lásd: Statikus webhely üzemeltetése az Azure Storage-ban és Gyors kezdés: Azure Storage-fiók integrálása az Azure CDN-nel.

Dinamikusan közzétett statikus tartalom

Ha az alkalmazás támogatja az alkalmazás által feltöltött vagy létrehozott statikus tartalmat, amely a létrehozása után sem változik, integrálhatja Azure Blob Storage és Azure CDN. A Azure függvény használatával is kezelheti a feltöltéseket, és szükség esetén CDN-frissítéseket indíthat el. Az Ön számára biztosítottunk egy mintamegvalósítást az alábbi helyen: A statikus tartalom feltöltése és CDN-preloading Azure Functions segítségével.

Annak meghatározása, hogy valamelyik szolgáltatás tartalmaz-e operációsrendszer-specifikus kódot

Ha az alkalmazás tartalmaz olyan kódot, amely a gazdagép operációs rendszerére támaszkodik, akkor azt újra kell struktúrálnia a függőségek eltávolításához. Előfordulhat például, hogy / vagy \ fájlrendszerbeli elérési utakon való bármilyen használatát File.Separator vagy Paths.get kell cserélnie, ha az alkalmazás Windows rendszeren fut.

Váltás egy támogatott platformra

Ha manuálisan hozza létre a Dockerfile-t, és tárolóalapú alkalmazást helyez üzembe Azure Container Apps, teljes mértékben átveheti az irányítást az üzembe helyezés felett, beleértve a JRE/JDK-verziókat is.

Az összetevőkből való üzembe helyezéshez Azure Container Apps a Java (8, 11, 17 és 21) és a Spring Boot és a Spring Cloud-összetevők meghatározott verzióit is kínálja. A kompatibilitás biztosítása érdekében először migrálja az alkalmazást a jelenlegi környezetben található Java egyik támogatott verziójába, majd folytassa a további migrálási lépéseket. Ügyeljen arra, hogy teljes körűen tesztelje a konfigurációt. Használja a Linux-disztribúció legújabb stabil kiadását az ilyen tesztekben.

Megjegyzés

Ez az ellenőrzés különösen fontos, ha az aktuális kiszolgáló egy nem támogatott JDK-n fut (például az Oracle JDK-n vagy az IBM OpenJ9 rendszeren).

Az aktuális Java verzió beszerzéséhez jelentkezzen be az éles kiszolgálóra, és futtassa a következő parancsot:

java -version

A Java, a Spring Boot és a Spring Cloud támogatott verzióit, valamint a frissítési utasításokat a Java Azure Container Apps áttekintésében talál.

Spring Boot-verziók azonosítása

Vizsgálja meg az egyes migrált alkalmazások függőségeit a Spring Boot-verzió meghatározásához.

Maven

A Maven-projektekben a Spring Boot-verzió általában a <parent> POM-fájl elemében található:

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>3.3.3</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
Gradle

A Gradle-projektekben a Spring Boot verzióját általában a plugins szakaszban találhatjuk, a org.springframework.boot plugin verziójaként.

plugins {
  id 'org.springframework.boot' version '3.3.3'
  id 'io.spring.dependency-management' version '1.1.6'
  id 'java'
}

A 3.x előtti Spring Boot-verziót használó alkalmazások esetében a Spring Boot 2.0 áttelepítési útmutatójában vagy a Spring Boot 3.0 áttelepítési útmutatójában frissítheti őket egy támogatott Spring Boot-verzióra. A támogatott verziókról a Spring Cloud dokumentációjában olvashat.

Spring Cloud-verziók azonosítása

Vizsgálja meg az egyes migrált alkalmazások függőségeit az általa használt Spring Cloud-összetevők verziójának meghatározásához.

Maven

Maven-projektekben a Spring Cloud-verzió általában a spring-cloud.version tulajdonságban van beállítva:

  <properties>
    <spring-cloud.version>2023.0.2</spring-cloud.version>
  </properties>
Gradle

A Gradle-projektekben a Spring Cloud-verzió általában az "extra tulajdonságok" blokkban van beállítva:

ext {
  set('springCloudVersion', "2023.0.2")
}

Frissítenie kell az összes alkalmazást a Spring Cloud támogatott verzióinak használatához. A támogatott verziókról a Spring Cloud dokumentációjában olvashat.

Naplóösszesítési megoldások azonosítása

Azonosítsa az áttelepített alkalmazások által használt naplóösszesítési megoldásokat. Konfigurálnia kell a diagnosztikai beállításokat a migrálásban, hogy a naplózott események felhasználhatók legyenek. További információ: A konzol naplózásának és a diagnosztikai beállítások konfigurálását ismertető szakasz.

Alkalmazásteljesítmény-kezelési (APM-) ügynökök azonosítása

Azonosítsa az alkalmazások által használt alkalmazásteljesítmény-kezelési ügynököket. Azure Containers Apps nem nyújt beépített támogatást az APM-integrációhoz. Közvetlenül a kódba kell előkészítenie a tárolórendszerképet, vagy integrálnia kell az APM-eszközt. Ha meg szeretné mérni az alkalmazás teljesítményét, de még nem integráltAPM-et, fontolja meg a Azure Application Insights használatát. További információ: Migrálás szakasz.

Külső források leltározása

Azonosítsa a külső erőforrásokat, például az adatforrásokat, a JMS-üzenetközvetítőket és egyéb szolgáltatások URL-címeit. A Spring Cloud-alkalmazásokban általában az alábbi helyek egyikén találhatja meg az ilyen erőforrások konfigurációját:

  • Az src/main/resources mappában, egy általában application.properties vagy application.yml nevű fájlban.
  • Az előző lépésben azonosított Spring Cloud Config Server-adattárban.

Adatbázisok

Spring Boot-alkalmazások esetén a kapcsolati sztring általában akkor jelennek meg a konfigurációs fájlokban, ha az külső adatbázistól függ. Íme egy példa egy application.properties fájlból:

spring.datasource.url=jdbc:mysql://localhost:3306/mysql_db
spring.datasource.username=dbuser
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

Íme egy példa egy application.yaml-fájlból :

spring:
  data:
    mongodb:
      uri: mongodb://mongouser:deepsecret@mongoserver.contoso.com:27017

A lehetségesebb konfigurációs forgatókönyvekért tekintse meg a Spring Data dokumentációját:

JMS-üzenetközvetítők

Azonosítsa a használt közvetítőt vagy közvetítőket a buildjegyzékben a megfelelő függőségek között (általában pom.xml vagy build.gradle fájlban).

Az ActiveMQ-t használó Spring Boot-alkalmazások például általában a pom.xml fájlban tartalmazzák ezt a függőséget:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-activemq</artifactId>
</dependency>

A kereskedelmi közvetítőket használó Spring Boot-alkalmazások általában közvetlenül a közvetítők JMS-illesztőprogram-kódtáraitól függenek. Íme egy példa egy build.gradle fájlból:

    dependencies {
      ...
      compile("com.ibm.mq:com.ibm.mq.allclient:9.4.0.5")
      ...
    }

Miután azonosította a használt közvetítőt vagy közvetítőket, keresse meg a megfelelő beállításokat. A Spring Cloud-alkalmazásokban ezek általában az application.properties és application.yml fájlokban találhatók az alkalmazáskönyvtárban vagy a Spring Cloud Config Server-adattárban.

Megjegyzés

A Microsoft az elérhető legbiztonságosabb hitelesítési folyamat használatát javasolja. Az ebben az eljárásban ismertetett hitelesítési folyamat, például adatbázisok, gyorsítótárak, üzenetkezelés vagy AI-szolgáltatások esetében, nagyon nagy megbízhatóságot igényel az alkalmazásban, és más folyamatokban nem jelenik meg kockázattal. Csak akkor használja ezt a módszert, ha a biztonságosabb lehetőségek, mint például a felügyelt identitások a jelszó nélküli vagy kulcs nélküli kapcsolatokhoz, nem életképesek. A helyi gépi műveletekhez előnyben részesítse a jelszó nélküli vagy kulcs nélküli kapcsolatok felhasználói identitásait.

Íme egy ActiveMQ-példa egy application.properties fájlból:

spring.activemq.brokerurl=broker:(tcp://localhost:61616,network:static:tcp://remotehost:61616)?persistent=false&useJmx=true
spring.activemq.user=admin
spring.activemq.password=<password>

Az ActiveMQ konfigurálásával kapcsolatos további információkért tekintse meg a Spring Boot üzenetkezelési dokumentációját.

Íme egy IBM MQ-példa egy application.yaml fájlból:

ibm:
  mq:
    queueManager: qm1
    channel: dev.ORDERS
    connName: localhost(14)
    user: admin
    password: <password>

Az IBM MQ konfigurációjáról további információt az IBM MQ Spring-összetevők dokumentációjában talál.

Külső gyorsítótárak azonosítása

Azonosítsa a használatban lévő külső gyorsítótárakat. A Redist gyakran használják a Spring Data Redisen keresztül. Konfigurációs információkért tekintse meg a Spring Data Redis dokumentációját.

Határozza meg, hogy a munkamenet-adatok gyorsítótárba kerülnek-e a Spring Session keresztül, a megfelelő konfiguráció (Java vagy XML) keresésével.

Identitásszolgáltatók

Azonosítsa az összes identitásszolgáltatót és minden olyan Spring Cloud-alkalmazást, amely hitelesítést és/vagy engedélyezést igényel. Az identitásszolgáltatók konfigurálásáról az alábbi forrásokból tájékozódhat:

A VMware Tanzu Application Service (TAS) (korábbi nevén Pivotal Cloud Foundry) által konfigurált erőforrások

A TAS-lel felügyelt alkalmazások esetében a külső erőforrások, beleértve a korábban ismertetett erőforrásokat is, gyakran TAS-szolgáltatáskötésekkel vannak konfigurálva. Az ilyen erőforrások konfigurációjának vizsgálatához használja a TAS (Cloud Foundry) parancssori felületét az alkalmazás változójának VCAP_SERVICES megtekintéséhez.

# Log into TAS, if needed (enter credentials when prompted)
cf login -a <API endpoint>

# Set the organization and space containing the application, if not already selected during login.
cf target org <organization name>
cf target space <space name>

# Display variables for the application
cf env <Application Name>

Vizsgálja meg az VCAP_SERVICES alkalmazáshoz kötött külső szolgáltatások konfigurációs beállításainak változóját. További információkért tekintse meg a TAS (Cloud Foundry) dokumentációját.

Minden egyéb külső forrás

Ebben az útmutatóban nem lehet minden lehetséges külső függőséget dokumentálni. A migrálás után az Ön feladata ellenőrizni, hogy képes-e kielégíteni az alkalmazás minden külső függőségét.

Készletkonfigurációs források és titkos kódok

Leltárjelszavak és biztonságos sztringek

Ellenőrizze az éles telepítések összes tulajdonságát, konfigurációs fájljait és környezeti változóit titkos sztringek és jelszavak keresése érdekében. A Spring Cloud-alkalmazásokban ezek a sztringek általában az application.properties vagy application.yml fájlban találhatók az egyes szolgáltatásokban vagy a Spring Cloud Config Server-adattárban.

Leltártanúsítványok

Dokumentálja a nyilvános SSL-végpontokhoz vagy a háttéradatbázisokkal és más rendszerekkel való kommunikációhoz használt összes tanúsítványt. A következő parancs futtatásával megtekintheti az éles szerver(ek)en található összes tanúsítványt.

keytool -list -v -keystore <path to keystore>

Annak meghatározása, hogy a Spring Cloud Vault használatban van-e

Ha a Spring Cloud Vaultot használja a titkos kódok tárolására és elérésére, azonosítsa a háttértárat – például HashiCorp Vaultot vagy CredHubot. Ezután azonosítsa az alkalmazáskód által használt összes titkos kódot.

A konfigurációs kiszolgáló forrásának megkeresése

Ha az alkalmazás Spring Cloud Config-kiszolgálót használ, azonosítsa a konfiguráció tárolási helyét. Ezt a beállítást általában a bootstrap.yml vagy bootstrap.properties fájlban, vagy néha a application.yml vagy az application.properties fájlban találja. A beállítás a következő példához hasonlóan néz ki:

spring.cloud.config.server.git.uri: file://${user.home}/spring-cloud-config-repo

Bár a Gitet leggyakrabban a Spring Cloud Config Server háttéradattáraként használják, a korábban látható módon a többi lehetséges háttérrendszer egyikét is használhatja. A Spring Cloud Config Server dokumentációjában további háttérrendszerekkel, például a relációs adatbázissal (JDBC), SVN-sel és a helyi fájlrendszerrel kapcsolatos információkért tekintse meg.

Az üzembehelyezési architektúra vizsgálata

Az egyes szolgáltatások hardverkövetelményeinek dokumentálása

Az egyes Spring Cloud-szolgáltatások esetében (a konfigurációs kiszolgálót, a beállításjegyzéket vagy az átjárót nem beleértve) dokumentálja a következő információkat:

  • A futó példányok száma.
  • Az egyes példányok számára lefoglalt CPU-k száma.
  • Az egyes példányoknak allokált RAM mennyisége.

Dokumentum georeplikáció/elosztás

Annak meghatározása, hogy a Spring Cloud-alkalmazások jelenleg több régió vagy adatközpont között vannak-e elosztva. Dokumentálja az áttelepített alkalmazásokra vonatkozó üzemidő-követelményeket/SLA-t.

A szolgáltatásregisztrációs adatbázist megkerülő ügyfelek azonosítása

Azonosítsa azokat az ügyfélalkalmazásokat, amelyek a Spring Cloud Service Registry használata nélkül meghívják a migrálni kívánt szolgáltatásokat. A migrálás után az ilyen meghívások már nem lesznek lehetségesek. Frissítse az ilyen ügyfeleket a Spring Cloud OpenFeign használatára a migrálás előtt.

Migrálás

Korlátozott konfigurációk eltávolítása

A Azure Container Apps környezet felügyelt Eureka-kiszolgálót, Spring Cloud Config-kiszolgálót és rendszergazdát kínál. Ha egy alkalmazás a Java összetevőhöz van kötve, Azure Container Apps rendszerkörnyezeti változókként injektálja a kapcsolódó tulajdonságokat. A Spring Boot Externalized Configuration kialakítása szerint a kódban meghatározott vagy összetevőkbe csomagolt alkalmazástulajdonságokat a rendszerkörnyezet változói felülírják.

Ha a következő tulajdonságok egyikét parancssori argumentumon, Java rendszertulajdonságon vagy tároló környezeti változóján keresztül állítja be, el kell távolítania az ütközések és váratlan viselkedés elkerülése érdekében:

  • SPRING_CLOUD_CONFIG_COMPONENT_URI
  • SPRING_CLOUD_CONFIG_URI
  • SPRING_CONFIG_IMPORT
  • eureka.client.fetch-registry
  • eureka.client.service-url.defaultZone
  • eureka.instance.prefer-ip-address
  • eureka.client.register-with-eureka
  • SPRING_BOOT_ADMIN_CLIENT_INSTANCE_PREFER-IP
  • SPRING_BOOT_ADMIN_CLIENT_URL

Azure Container Apps felügyelt környezet és alkalmazások létrehozása

Hozzon létre egy Azure Container Apps-alkalmazást a Azure-előfizetésében egy meglévő felügyelt környezetben, vagy hozzon létre egy újat minden áttelepített szolgáltatáshoz. Nem kell Spring Cloud regisztrációs adatbázisként és konfigurációs kiszolgálóként futó alkalmazásokat létrehoznia. További információért lásd: Gyorsútmutató: Az első tárolóalkalmazás üzembe helyezése az Azure portálon.

A Spring Cloud Config-kiszolgáló előkészítése

Konfigurálja az Azure Container Apps Config szerverét a Spring összetevőhöz. További információért lásd: beállítások konfigurálása a Config Server for Spring összetevőhöz az Azure Container Apps alkalmazásban.

Megjegyzés

Ha az aktuális Spring Cloud Config-adattár a helyi fájlrendszerben vagy a helyszínen található, először át kell telepítenie vagy replikálnia kell a konfigurációs fájlokat egy felhőalapú adattárba, például GitHub, Azure Repos vagy BitBucketbe.

A konzolnaplózás biztosítása és a diagnosztikai beállítások konfigurálása

Konfigurálja a naplózást, hogy az összes kimenet ne fájlokhoz, hanem a konzolhoz legyen irányítva.

Miután üzembe helyezett egy alkalmazást a Azure Container Apps, konfigurálhatja a Container Apps-környezet naplózási beállításait a naplók egy vagy több célhelyének meghatározásához. Ezek a célhelyek tartalmazhatnak Azure Monitor Log Analytics, Azure Eseményközpontot vagy akár más külső monitorozási megoldásokat is. Emellett letilthatja a naplóadatokat, és csak futtatókörnyezetben tekintheti meg a naplókat. Részletes konfigurációs utasításokért tekintse meg az Azure Container Apps naplótárolási és monitorozási lehetőségeit.

Állandó tároló konfigurálása

Ha az alkalmazás bármely része olvas vagy ír a helyi fájlrendszerbe, konfigurálnia kell az állandó tárolót a helyi fájlrendszer helyére. Az alkalmazásbeállításokon keresztül megadhatja a tárolóban csatlakoztatni kívánt elérési utat, és igazíthatja azt az alkalmazás által használt elérési úthoz. További információért lásd: Tárolócsatlakozások használata az Azure Container Apps-ben.

Azure Key Vault-ba történő Spring Cloud Vault titkok migrálása

Titkos kódokat közvetlenül a Springen keresztül szúrhat be az alkalmazásokba a Azure KeyVault Spring Boot Starter használatával. További információért lásd: Hogyan használjuk a Spring Boot Startert az Azure Key Vaulttal.

Megjegyzés

A migráció miatt szükség lehet néhány titok átnevezésére. Ennek megfelelően frissítse az alkalmazáskódot.

Az összes tanúsítvány áttelepítése a KeyVaultba

Azure Containers Apps támogatja az alkalmazások közötti biztonságos kommunikációt. Az alkalmazásnak nem kell felügyelnie a biztonságos kommunikáció létrehozásának folyamatát. Feltöltheti a magántanúsítványt Azure Container Apps, vagy használhatja a Azure Container Apps által biztosított ingyenes felügyelt tanúsítványt. Ajánlott a Azure Key Vault használata a tanúsítványok kezeléséhez. További információ: Certificates in Azure Container Apps.

Alkalmazásteljesítmény-kezelési (APM-) integrációk konfigurálása

Ha már konfigurálta az APM-hez kapcsolódó változókat a tárolón belül, mindössze annyit kell tennie, hogy biztosítja a kapcsolatot a cél APM-platformmal. Ha az APM-konfiguráció a tároló környezeti változóira hivatkozik, a futtatókörnyezet környezeti változóit ennek megfelelően kell beállítania a Azure Container Apps. A bizalmas információkat, például a connection string biztonságosan kell kezelni. Megadhatja titkos kódként, vagy hivatkozhat egy Azure Key Vault tárolt titkos kódra.

Szolgáltatásonkénti titkos kódok és külső beállítások konfigurálása

A konfigurációs beállításokat környezeti változókként injektálhatja az egyes tárolókba. A változók módosításai új változatot hoznak létre a meglévő alkalmazáshoz. A titkos kulcsok kulcs-érték párok, és minden változatban érvényesek maradnak.

Az identitásszolgáltató migrálása és engedélyezése

Ha valamelyik Spring Cloud-alkalmazás hitelesítést vagy engedélyezést igényel, az alábbi irányelveket követve győződjön meg arról, hogy konfigurálva vannak az identitásszolgáltató elérésére:

  • Ha az identitásszolgáltató Microsoft Entra ID, nincs szükség módosításra.
  • Ha az identitásszolgáltató egy helyszíni Active Directory erdő, fontolja meg egy hibrid identitáskezelési megoldás bevezetését a Microsoft Entra ID-vel. Útmutatásért tekintse meg a hibrid identitás dokumentációját.
  • Ha az identitásszolgáltató egy másik helyszíni megoldás, például a PingFederate, tekintse meg az Egyéni telepítése a Microsoft Entra Connect témakört a Microsoft Entra ID-val történő összevonás konfigurálásához. Másik lehetőségként fontolja meg, hogy a Spring Security használatával használja az identitásszolgáltatót az OAuth2/OpenID Connecten vagy az SAML-n keresztül.

Ügyfélalkalmazások frissítése

Frissítse az összes ügyfélalkalmazás konfigurációját a migrált alkalmazások közzétett Azure Container Apps végpontjainak használatára.

A migrálás után

Most, hogy befejezte a migrálást, ellenőrizze, hogy az alkalmazás a várt módon működik-e. Ezt követően az alábbi javaslatokkal natívabbá teheti az alkalmazást a felhőben.

  • Fontolja meg, hogy az alkalmazás együttműködjön a Spring Cloud Registryvel. Ez az összetevő lehetővé teszi az alkalmazás dinamikus felderítését más üzembe helyezett Spring-alkalmazások és -ügyfelek számára. További információért lásd: Az Eureka Server for Spring összetevő beállításainak konfigurálása az Azure Container Apps-ben. Ezután módosítsa az alkalmazásügyfeleket a Spring-ügyfél Load Balancer használatára. A Spring-ügyfél Load Balancer lehetővé teszi az ügyfél számára az alkalmazás összes futó példányának címét, és megkeres egy olyan példányt, amely működik, ha egy másik példány megsérül vagy nem válaszol. További információ: Tippek: Spring Cloud Load Balancer a Spring Blogban.

  • Az alkalmazás nyilvánossá tétele helyett fontolja meg egy Spring Cloud Gateway-példány hozzáadását. A Spring Cloud Gateway egyetlen végpontot biztosít a Azure Container Apps környezetben üzembe helyezett összes alkalmazáshoz. Ha egy Spring Cloud Gateway már üzembe van helyezve, győződjön meg arról, hogy egy útválasztási szabály úgy van konfigurálva, hogy a forgalmat az újonnan üzembe helyezett alkalmazáshoz irányozza.

  • Fontolja meg egy Spring Cloud konfigurációs kiszolgáló hozzáadását az összes Spring Cloud-alkalmazás központi felügyeletéhez és verziókövetéséhez. Először hozzon létre egy Git-adattárat a konfiguráció tárolásához, és konfigurálja az alkalmazáspéldányt a használatára. További információkért lásd: Konfigurálja a beállításokat a Config Server for Spring összetevőhöz az Azure Container Apps-ben. Ezután migrálja a konfigurációt a következő lépésekkel:

    1. Az alkalmazás src/main/resources könyvtárában hozzon létre egy bootstrap.yml fájlt a következő tartalommal:

        spring:
          application:
            name: <your-application-name>
      
    2. A konfigurációs Git-adattárban hozzon létre egy <saját alkalmazásnév>.yml fájlt, ahol your-application-name ugyanaz, mint az előző lépésben. Helyezze át a beállításokat application.ymlsrc/main/resources fájlból a létrehozott új fájlba. Ha a beállítások korábban egy .properties fájlban voltak, először konvertálja őket YAML-fájllá. Az átalakítás végrehajtásához online eszközöket vagy IntelliJ beépülő modulokat találhat.

    3. Hozzon létre egy application.yml fájlt a fenti könyvtárban. Ezzel a fájllal meghatározhatja azokat a beállításokat és erőforrásokat, amelyek a Azure Container Apps környezet összes alkalmazása között meg vannak osztva. Ilyen beállítások általában az adatforrások, a naplózási beállítások, a Spring Boot Actuator konfigurációja és más beállítások.

    4. Véglegesítse és küldje el ezeket a módosításokat a Git-adattárba.

    5. Távolítsa el az application.properties vagy application.yml fájlt az alkalmazásból.

  • Fontolja meg a Spring által kezelt Admin komponens hozzáadását, hogy lehetővé tegye a Spring Boot webalkalmazások adminisztratív felületét, amelyek elérhetővé teszik az aktuátor végpontokat. További információ: A Spring Boot Felügyeleti összetevő konfigurálása a Azure Container Apps.

  • Fontolja meg egy üzembehelyezési csővezeték hozzáadását az automatikus és konzisztens telepítésekhez. Az utasítások Azure Pipelines és GitHub Actions esetében érhetők el.

  • Fontolja meg a konténeralkalmazások verzióinak, verziócímkéknek és bejövő forgalom súlyozásának használatát a kék-zöld üzembe helyezés lehetővé tételére, amely lehetővé teszi a kódmódosítások éles környezetben történő tesztelését, mielőtt azok elérhetővé válnának egyes vagy az összes végfelhasználó számára. További információ található az Azure Container Apps blue-green telepítéséről.

  • Fontolja meg szolgáltatáskötések hozzáadását az alkalmazás támogatott Azure adatbázisokhoz való csatlakoztatásához. Ezek a szolgáltatáskötések szükségtelenné teszik, hogy a Spring Cloud-alkalmazásokhoz kapcsolati adatokat , köztük hitelesítő adatokat adjon meg.

  • Fontolja meg a Java fejlesztői környezet engedélyezését az alkalmazásai JVM-magmetrikáinak gyűjtéséhez. További információ: Java metrikák az Azure Container Apps Java-alkalmazásaihoz.

  • Fontolja meg Azure Monitor riasztási szabályok és műveleti csoportok hozzáadását az aberrált feltételek gyors észleléséhez és kezeléséhez. További információ: A riasztások beállítása Azure Container Apps.

  • Fontolja meg az alkalmazás replikálását a régió zónái között Azure Container Apps zónaredundancia engedélyezésével. A forgalom terheléselosztással van kiegyensúlyozva, és automatikusan replikákhoz van irányítva, zónakimaradás esetén. A redundáns beállításokról további információt a Reliability in Azure Container Apps című témakörben talál.

  • Fontolja meg az Azure Container Apps védelmét a gyakori kihasználási kísérletektől és sebezhetőségektől a Web Application Firewall az Application Gateway-en való használatával. További információért lásd: Az Azure Container Apps védelme a Web Application Firewall és az Application Gateway használatával.

  • Ha az alkalmazásai régi Spring Cloud Netflix-összetevőket használnak, érdemes lecserélni őket az aktuális alternatívákra, ahogyan az az alábbi táblázatban látható:

    Örökség Jelenlegi
    Spring Cloud Eureka Spring Cloud Service Registry
    Spring Cloud Netflix Zuul Spring Cloud átjáró
    Spring Cloud Netflix Archaius Spring Cloud konfigurációs kiszolgáló
    Spring Cloud Netflix menüszalag Spring Cloud Load Balancer (ügyféloldali terheléselosztó)
    Spring Cloud Hystrix (a Spring Cloud rendszer egyik eleme) Spring Cloud Circuit Breaker + Resilience4J
    Spring Cloud Netflix Turbina Mikrométer + Prometheus