Spring Cloud-alkalmazások migrálása az Azure Spring Appsbe

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 az útmutató azt ismerteti, hogy mire érdemes figyelnie, amikor át szeretne telepíteni egy meglévő Spring Cloud-alkalmazást az Azure Spring Appsben való futtatáshoz.

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 Azure Kubernetes Service-beli tárolókba (tervezett útmutató)
  • Végrehajtható JAR-alkalmazások migrálása az Azure Virtual Machinesba (tervezett útmutató)

Alkalmazásösszetevők vizsgálata

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

Keresse meg azokat a példányokat, 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.

Feljegyzés

Az Azure Spring Apps 5 GB ideiglenes tárterületet biztosít az Azure Spring Apps-példányonként, amely a következőbe /tmpvan csatlakoztatva: . Ha az ideiglenes fájlok írása meghaladja ezt a korlátot, vagy egy másik helyre van írva, kódmódosításra lesz szükség.

Csak olvasható statikus tartalom

Ha az alkalmazás jelenleg statikus tartalmat szolgáltat, szüksége lesz egy másik helyre hozzá. A statikus tartalmat célszerű az Azure Blob Storage-ba helyezni és az Azure CDN hozzáadásával biztosítani a villámgyors globális letöltést. További információ: Statikus webhely üzemeltetése az Azure Storage-ban és rövid útmutató: Azure Storage-fiók integrálása az Azure CDN-nel.

Dinamikusan közzétett statikus tartalom

Ha az alkalmazás engedélyezi az alkalmazás által feltöltött/előállított statikus tartalmakat, azonban a létrehozás után nem módosítható, az Azure Blob Storage és az Azure CDN fent ismertetett módon történő, egy Azure-függvénnyel közös használatával kezelheti a feltöltéseket és a CDN-frissítést. A Statikus tartalom feltöltése és CDN-előtöltése az Azure Functions szolgáltatással című témakörben megadtunk egy szabadon használható mintaimplementációt.

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

Ha az alkalmazás tartalmaz a gazdagép operációs rendszeréhez tartozó függőségekkel rendelkező kódot, azt Önnek újra kell bontania a függőségek eltávolításához. Előfordulhat például, hogy a File.Separator vagy Paths.get fájlrendszerbeli útvonalakkal rendelkező /- vagy \-előfordulásokat cserélnie kell.

Váltás egy támogatott platformra

Az Azure Spring Apps a Java és a Spring Boot és a Spring Cloud egyes verzióit kínálja. A kompatibilitás biztosítása érdekében először migrálja az alkalmazást a Java egyik támogatott verziójába a jelenlegi környezetben, 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.

Feljegyzé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).

A jelenlegi 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óiról, valamint a frissítési utasításokról az Alkalmazás előkészítése az Azure Spring Appsben való üzembe helyezéshez című témakörben olvashat.

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>2.7.10</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
Gradle

A Gradle-projektekben a Spring Boot-verzió általában a plugins beépülő modul verziójaként jelenik meg:org.springframework.boot

plugins {
  id 'org.springframework.boot' version '2.7.10'
  id 'io.spring.dependency-management' version '1.0.15.RELEASE'
  id 'java'
}

A Spring Boot 1.x-et használó alkalmazások esetében kövesse a Spring Boot 2.0 migrálási útmutatót , és frissítse őket egy támogatott Spring Boot-verzióra. A támogatott verziókról az Alkalmazás előkészítése az Azure Spring Appsben való üzembe helyezéshez című Spring Boot- és Spring Cloud-verziók című szakaszá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>
    <java.version>1.8</java.version>
    <spring-cloud.version>2021.0.6</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', "2021.0.6")
}

Frissítenie kell az összes alkalmazást a Spring Cloud támogatott verzióinak használatához. A támogatott verziók listáját az Alkalmazás előkészítése az Azure Spring Appsben való üzembe helyezéshez című Spring Boot- és Spring Cloud-verziók szakaszában találja.

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ókért tekintse meg a konzolnaplózás és a diagnosztikai beállítások konfigurálását ismertető szakaszt.

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

Azonosítsa az alkalmazásokkal használt összes alkalmazásteljesítmény-figyelő ügynököt. Az Azure Spring Apps támogatja az Alkalmazás Elemzések, a New Relic, az Elastic APM, a Dynatrace és az AppDynamics integrációját. Ha az alkalmazás támogatott APM-t használ, konfigurálja az integrációt a migrálásban. Ha az alkalmazás nem támogatott APM-et használ, fontolja meg inkább az Alkalmazás Elemzések használatát. További információ: Migrálás szakasz.

Zipkin-függőségek azonosítása

Annak meghatározása, hogy az alkalmazás rendelkezik-e a Zipkin-függőségekkel. Frissítse az alkalmazást az Alkalmazás Elemzések használatára. További információt az Alkalmazás Elemzések Java In-Process Agent használata az Azure Spring Appsben és a migrálás utáni szakaszban talál.

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/directory mappában, egy általában application.properties vagy application.yml nevű fájlban.
  • Az előző lépésben azonosított Spring Cloud Config-adattárban.

Adatbázisok

Azonosítsa a kapcsolati sztringet valamelyik SQL-adatbázishoz.

Spring Boot-alkalmazások esetén a kapcsolati sztringek általában konfigurációs fájlokban jelennek meg.

Íme egy példa az egyik 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 az egyik 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őket vagy közvetítőket a megfelelő függőségek buildjegyzékében (általában egy 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.0.4.0")
      ...
    }

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-kiszolgáló adattárában.

Í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=tryandguess

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: big$ecr3t

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.

Állapítsa meg, hogy a munkamenet-adatok gyorsítótárazva lesznek-e a Spring Session-en keresztül a megfelelő konfiguráció keresésével (Java vagy XML nyelven).

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őrizzen minden tulajdonságot, konfigurációs fájlt és környezeti változót az éles üzemben, hogy nem tartalmaz-e titkos sztringeket és jelszavakat. 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-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 kiszolgáló(ko)n 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 Vault vagy CredHub). 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 a 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 fog kinézni:

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

Bár a Gitet leggyakrabban a Spring Cloud Config 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 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.

Feljegyzés

Ha a konfigurációs kiszolgáló adatai a helyszínen vannak tárolva, például a GitHub Enterprise-ban, elérhetővé kell tennie őket az Azure Spring Apps számára egy Git-adattáron keresztül.

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ányok számára lefoglalt RAM mennyisége.

Dokumentum georeplikációs/terjesztési

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

Az áttelepített szolgáltatásokban keresse meg és távolítsa el az alábbi korlátozott beállítások explicit hozzárendeléseit. Ezeket a tulajdonságokat a rendszer automatikusan injektálja az alkalmazáskörnyezetbe a Config Server és a Service Discovery eléréséhez. Ha ezek a tulajdonságok a Config Server alkalmazásfájljaiban találhatók, ütközések és váratlan viselkedés léphet fel. További információ: FelügyeltSpring Cloud Config-kiszolgáló konfigurálása az Azure Spring Appsben

  • eureka.client.service-url.defaultZone
  • eureka.client.tls.keystore
  • eureka.instance.preferIpAddress
  • eureka.instance.instance-id
  • server.port
  • spring.cloud.config.tls.keystore
  • spring.config.import
  • spring.application.name
  • spring.jmx.enabled
  • management.endpoints.jmx.exposure.include

Azure Spring Apps-példány és -alkalmazások létrehozása

Azure Spring Apps-példány kiépítése az Azure-előfizetésben. Ezután minden áttelepített szolgáltatáshoz kiépíthet egy alkalmazást. Ne tartalmazza a Spring Cloud beállításjegyzékét és konfigurációs kiszolgálóit. Használja a Spring Cloud Gateway szolgáltatást. Útmutatásért tekintse meg a rövid útmutatót: Az első alkalmazás üzembe helyezése az Azure Spring Appsben.

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

Konfigurálja a konfigurációs kiszolgálót az Azure Spring Apps-példányban. További információ: Spring Cloud Config Server-példány beállítása a szolgáltatáshoz.

Feljegyzé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 magánfelhő-alapú adattárba, például a GitHubra, az Azure Reposra vagy a BitBucketre.

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

Konfigurálja a naplózást úgy, hogy az összes kimenet a konzolra legyen irányítva, ne a fájlokra.

Miután üzembe helyezett egy alkalmazást az Azure Spring Appsben, adjon hozzá egy diagnosztikai beállítást, hogy a naplózott események felhasználhatók legyenek, például az Azure Monitor Log Analyticsen keresztül.

LogStash/ELK Stack

Ha a LogStash/ELK Stacket használja a naplóösszesítéshez, konfigurálja a diagnosztikai beállítást a konzol kimenetének egy Azure Event Hubba való streameléséhez. Ezután használja a LogStash EventHub beépülő modult a naplózott események LogStashbe való betöltéséhez.

Splunk

Ha splunkot használ a naplóösszesítéshez, konfigurálja a diagnosztikai beállítást, hogy a konzol kimenetét az Azure Blob Storage-ba streamelje. Ezután használja a Microsoft Cloud Services Splunk bővítményét a naplózott események Splunkba való betöltéséhez.

Á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. További információ: Beépített állandó tárterület használata az Azure Spring Appsben.

Minden ideiglenes fájlt a könyvtárba /tmp kell írnia. Az operációs rendszer függetlenségéhez ezt a könyvtárat a következővel System.getProperty("java.io.tmpdir")szerezheti be: . Ideiglenes fájlokat is java.nio.Files::createTempFile létrehozhat.

VMware Tanzu-összetevők

Nagyvállalati szinten a VMware Tanzu® alkalmazáskonfigurációs szolgáltatása támogatja az alkalmazások külső konfigurációját. A felügyelt Spring Cloud konfigurációs kiszolgáló nem érhető el a nagyvállalati szinten, és csak az Azure Spring Apps standard és alapszintű szintjén érhető el.

Tanzu alkalmazáskonfigurációs szolgáltatása

A Tanzu alkalmazáskonfigurációs szolgáltatása az egyik kereskedelmi VMware Tanzu-összetevő. A Tanzu alkalmazáskonfigurációs szolgáltatása Kubernetes-natív, és eltér a Spring Cloud Config Servertől. A Tanzu alkalmazáskonfigurációs szolgáltatása lehetővé teszi a Kubernetes-natív ConfigMap-erőforrások kezelését, amelyek egy vagy több Git-adattárban meghatározott tulajdonságokból vannak feltöltve.

A nagyvállalati szinten nincs Spring Cloud Config-kiszolgáló, de a Tanzu-hoz készült Application Configuration Service-t használhatja a központosított konfigurációk kezelésére. További információ: A Tanzu alkalmazáskonfigurációs szolgáltatásának használata

Az Application Configuration Service for Tanzu használatához hajtsa végre az alábbi lépéseket az egyes alkalmazásokhoz:

  1. Adjon hozzá egy explicit alkalmazáskötést annak deklarálásához, hogy az alkalmazásnak a Tanzu alkalmazáskonfigurációs szolgáltatását kell használnia.

    Feljegyzés

    A kötés/kötés megszüntetése állapotának módosításakor újra kell indítania vagy újra kell üzembe helyeznie az alkalmazást a módosítás érvénybe lépéséhez.

  2. Konfigurációs fájlminták beállítása. A konfigurációs fájlminták lehetővé teszik az alkalmazás által használt alkalmazás és profil kiválasztását. További információkért lásd a Tanzuhoz készült Use Application Configuration Service mintaszakaszát.

    Egy másik lehetőség a konfigurációs fájlminták beállítása az alkalmazás üzembe helyezésével egy időben, ahogy az alábbi példában látható:

    az spring app deploy \
        --name <app-name> \
        --artifact-path <path-to-your-JAR-file> \
        --config-file-pattern <config-file-pattern>
    

A Tanzu alkalmazáskonfigurációs szolgáltatása a Kubernetesen fut. Az átlátható helyi fejlesztési élmény érdekében az alábbi javaslatokat nyújtjuk.

  • Ha már rendelkezik Egy Git-adattárral a külső konfiguráció tárolásához, helyileg beállíthatja a Spring Cloud Config Servert az alkalmazás központi konfigurációjaként. A Config Server elindítása után klónozza a Git-adattárat, és a webvezérlőn keresztül biztosítja az adattár tartalmát. További információ: Spring Cloud Config a Spring dokumentációjában. Ez spring-cloud-config-client lehetővé teszi, hogy az alkalmazás automatikusan vegye fel a külső konfigurációt a konfigurációs kiszolgálóról.

  • Ha nem rendelkezik Git-adattárral, vagy nem szeretné helyileg beállítani a konfigurációs kiszolgálót, használhatja a konfigurációs fájlt közvetlenül a projektben. Javasoljuk, hogy használjon profilt a konfigurációs fájl elkülönítéséhez, hogy az csak a fejlesztési környezetben legyen használva. Használja például dev profilként. Ezután létrehozhat egy application-dev.yml fájlt az src/main/resource mappában a konfiguráció tárolásához. Ha azt szeretné, hogy az alkalmazás használja ezt a konfigurációt, indítsa el az alkalmazást helyileg a következővel --spring.profiles.active=dev: .

Tanzu szolgáltatásregisztrációs adatbázis

A VMware Tanzu® szolgáltatásregisztrációs adatbázisa az egyik kereskedelmi VMware Tanzu-összetevő. A Tanzu szolgáltatásregisztrációs adatbázis a nagyvállalati szintű alkalmazásokat a Service Discovery-minta implementálásával biztosítja, amely a mikroszolgáltatás-alapú architektúra egyik fő alapelve. Az alkalmazások a Tanzu szolgáltatásregisztrációs adatbázisával dinamikusan felderíthetik és meghívhatják a regisztrált szolgáltatásokat. A Tanzu szolgáltatásregisztrációs adatbázis használata előnyösebb, ha kézzel konfigurálja egy szolgáltatás minden ügyfelet, ami nehézkes lehet, vagy valamilyen hozzáférési konvenciót vezet be, amely éles környezetben törékeny lehet. További információ: Tanzu szolgáltatásregisztrációs adatbázis használata.

Spring Cloud Vault-titkos kódok migrálása az Azure KeyVaultba

Az Azure KeyVault Spring Boot Starter használatával közvetlenül injektálhat titkos kulcsokat az alkalmazásokba a Spring használatával. További információ : Az Azure Key Vaulthoz készült Spring Boot Starter használata.

Feljegyzés

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

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

Az Azure Spring Apps nem biztosít hozzáférést a JRE-kulcstárhoz, ezért át kell telepítenie a tanúsítványokat az Azure KeyVaultba, és módosítania kell az alkalmazás kódját a KeyVault tanúsítványainak eléréséhez. További információ: Ismerkedés a Key Vault-tanúsítványokkal és az Azure Key Vault-tanúsítvány ügyfélkódtárával Java-hoz.

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

Az Azure Spring Apps az alábbi APM-integrációkat kínálja. A szükséges APM engedélyezéséhez kövesse az alábbi hivatkozásokat:

Ha az alkalmazás nem támogatott APM-t használ, fontolja meg inkább az Alkalmazás Elemzések használatát. Az Azure Spring Apps mély integrációt biztosít az Alkalmazás Elemzések a teljesítménykezeléshez és az aberrációkra adott valós idejű válaszhoz.

Metrikák ügyfelek és végpontok letiltása az alkalmazásokban

Távolítsa el a használt metrika-ügyfeleket vagy az alkalmazásokban közzétett metrikavégpontokat.

A szolgáltatások üzembe helyezése

Telepítse az egyes migrált Spring-alkalmazásokat (a Spring Cloud Config és a Beállításjegyzék-kiszolgálók kivételével), a következő rövid útmutatóban leírtak szerint: Az első alkalmazás üzembe helyezése az Azure Spring Appsben.

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

Bármilyen szolgáltatásonkénti konfigurációs beállítást beszúrhat az egyes szolgáltatásokba környezeti változókként. Kövesse az alábbi lépéseket az Azure Portalon:

  1. Lépjen az Azure Spring Apps-példányra, és válassza az Alkalmazások lehetőséget.
  2. Válassza ki a konfigurálni kívánt szolgáltatást.
  3. Válassza a Konfiguráció lehetőséget.
  4. Adja meg a konfigurálni kívánt változókat.
  5. Válassza a Mentés lehetőséget.

Spring Cloud App Configuration Settings

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, győződjön meg arról, hogy az identitásszolgáltató eléréséhez konfigurálva van:

  • Ha az identitásszolgáltató Microsoft Entra-azonosító, nincs szükség módosításra.
  • Ha az identitásszolgáltató egy helyi Active Directory erdő, fontolja meg egy hibrid identitáskezelési megoldás implementálását a Microsoft Entra ID-val. Ú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, a Microsoft Entra Csatlakozás témakör egyéni telepítésével konfigurálhatja az összevonást a Microsoft Entra-azonosítóval. Másik lehetőségként fontolja meg a Spring Security használatát az identitásszolgáltató OAuth2/OpenID Csatlakozás vagy SAML használatával történő használatához.

Ü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 Spring Apps-végpontjainak használatára.

A migrálás után

  • Fontolja meg egy üzembehelyezési folyamat hozzáadását az automatikus, konzisztens üzemelő példányokhoz. Utasítások érhetők el az Azure Pipelineshoz, a GitHub Actionshez és a Jenkinshez.

  • Érdemes lehet átmeneti üzembe helyezéseket használni az éles kódmódosítások teszteléséhez, mielőtt azok elérhetők lennének néhány vagy az összes végfelhasználó számára. További információ: Átmeneti környezet beállítása az Azure Spring Appsben.

  • 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 Azure-alkalmazás Elemzések használatát az alkalmazások teljesítményének és interakcióinak figyeléséhez. További információ: Application Elemzések Java In-Process Agent in Azure Spring Apps.

  • Fontolja meg az Azure Monitor riasztási szabályainak és műveleti csoportjainak hozzáadását az aberrált feltételek gyors észleléséhez és kezeléséhez. További információ : Oktatóanyag: Spring Cloud-erőforrások monitorozása riasztásokkal és műveletcsoportokkal.

  • Fontolja meg az Azure Spring Apps üzembe helyezésének replikálását egy másik régióban az alacsonyabb késés, valamint a nagyobb megbízhatóság és hibatűrés érdekében. Az Azure Traffic Managerrel terheléselosztást helyezhet üzembe az üzemelő példányok között, vagy az Azure Front Door használatával SSL-kiszervezést és webalkalmazási tűzfalat adhat hozzá DDoS-védelemmel.

  • Ha nincs szükség georeplikációra, fontolja meg egy Azure-alkalmazás-átjáró hozzáadását az SSL-kiszervezés és a webalkalmazási tűzfal DDoS-védelemmel való hozzáadásához.

  • Ha az alkalmazások régi Spring Cloud Netflix-összetevőket használnak, érdemes lehet lecserélni őket a jelenlegi alternatívákra:

    Örökölt Aktuális
    Spring Cloud Eureka Spring Cloud Service Registry
    Spring Cloud Netflix Zuul Spring Cloud Gateway
    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 Spring Cloud Circuit Breaker + Resilience4J
    Spring Cloud Netflix Turbina Mikrométer + Prometheus