Rychlý start: Nasazení aplikací mikroslužeb do Azure Spring Apps

Poznámka:

Plány Basic, Standard a Enterprise budou od poloviny března 2025 vyřazeny ze 3letého období vyřazení. Doporučujeme přejít na Azure Container Apps. Další informace najdete v oznámení o vyřazení Azure Spring Apps.

Od 30. září 2024 bude od 30. září 2024 zastaralý plán s úplným vypnutím po šesti měsících. Doporučujeme přejít na Azure Container Apps. Další informace najdete v tématu Migrace spotřeby Azure Spring Apps Úrovně Standard a vyhrazeného plánu do Azure Container Apps.

Tento článek vysvětluje, jak nasadit aplikace mikroslužeb do Azure Spring Apps pomocí dobře známé ukázkové aplikace PetClinic.

Ukázka Pet Clinic ukazuje model architektury mikroslužeb. Následující diagram znázorňuje architekturu aplikace PetClinic v plánu Azure Spring Apps Enterprise.

Diagram znázorňující architekturu ukázky PetClinic v plánu Azure Spring Apps Enterprise

Diagram znázorňuje následující architektonické toky a vztahy ukázky Pet Clinic:

  • Používá Azure Spring Apps ke správě front-endových a back-endových aplikací. Back-endové aplikace jsou sestavené pomocí Spring Bootu a každá aplikace používá HSQLDB jako trvalé úložiště. Reforged front-endová aplikace vychází z aplikace API Gateway Pet Clinic s Node.js sloužící jako samostatná front-endová webová aplikace.
  • Používá spravované komponenty v Azure Spring Apps, včetně registru služeb, služby Application Configuration Service, Spring Cloud Gateway a živého zobrazení aplikace. Služba konfigurace aplikace čte konfiguraci úložiště Git.
  • Zveřejňuje adresu URL brány Spring Cloud pro směrování požadavku do aplikací back-endových služeb a zveřejňuje adresu URL živého zobrazení aplikace pro monitorování back-endových aplikací.
  • Analyzuje protokoly pomocí pracovního prostoru služby Log Analytics.
  • Monitoruje výkon pomocí Application Insights.

Poznámka:

Tento článek používá zjednodušenou verzi PetClinic s využitím databáze v paměti, která není připravená k rychlému nasazení do Azure Spring Apps.

Vývojářské nástroje Tanzu zpřístupňují veřejný přístup k živému zobrazení aplikace, což je rizikový bod. Produkční prostředí musí zabezpečit přístup. Další informace najdete v části Konfigurace portálu Dev Tools v plánu Azure Spring Apps Enterprise v části Konfigurace nástrojů Tanzu Dev Tools.

Ukázka Pet Clinic ukazuje model architektury mikroslužeb. Následující diagram znázorňuje architekturu aplikace PetClinic v plánu Azure Spring Apps Standard.

Diagram znázorňující architekturu ukázky PetClinic ve standardním plánu Azure Spring Apps

Diagram znázorňuje následující architektonické toky a vztahy ukázky Pet Clinic:

  • Používá Azure Spring Apps ke správě aplikací Spring Boot. Každá aplikace používá HSQLDB jako trvalé úložiště.
  • Používá spravované komponenty Spring Cloud Config Server a Registr služby Eureka v Azure Spring Apps. Konfigurační server přečte konfiguraci úložiště Git.
  • Zveřejňuje adresu URL služby API Gateway pro vyrovnávání zatížení požadavků na aplikace služeb a zveřejňuje adresu URL serveru pro správu pro správu aplikací.
  • Analyzuje protokoly pomocí pracovního prostoru služby Log Analytics.
  • Monitoruje výkon pomocí Application Insights.

Poznámka:

Tento článek používá zjednodušenou verzi PetClinic s využitím databáze v paměti, která není připravená k rychlému nasazení do Azure Spring Apps.

Nasazená aplikace admin-server zveřejňuje veřejný přístup, což je rizikový bod. Produkční prostředí musí zabezpečit aplikaci Spring Boot Admin.

Tento článek obsahuje následující možnosti nasazení do Azure Spring Apps:

  • Možnost webu Azure Portal je nejjednodušší a nejrychlejší způsob, jak vytvářet prostředky a nasazovat aplikace jediným kliknutím. Tato možnost je vhodná pro vývojáře Springu, kteří chtějí rychle nasazovat aplikace do cloudových služeb Azure.
  • Možnost modulu plug-in Azure Portal + Maven je konvenční způsob, jak vytvářet prostředky a nasazovat aplikace krok za krokem. Tato možnost je vhodná pro vývojáře springu, kteří používají cloudové služby Azure poprvé.
  • Možnost Azure CLI používá k správě prostředků Azure výkonný nástroj příkazového řádku. Tato možnost je vhodná pro vývojáře Springu, kteří jsou obeznámeni s cloudovými službami Azure.
  • Možnost modulu plug-in Azure Portal + Maven je konvenční způsob, jak vytvářet prostředky a nasazovat aplikace krok za krokem. Tato možnost je vhodná pro vývojáře springu, kteří používají cloudové služby Azure poprvé.
  • Možnost Azure Developer CLI je efektivnější způsob, jak automaticky vytvářet prostředky a nasazovat aplikace prostřednictvím jednoduchých příkazů. Azure Developer CLI používá šablonu ke zřízení potřebných prostředků Azure a k nasazení kódu aplikace. Tato možnost je vhodná pro vývojáře Springu, kteří jsou obeznámeni s cloudovými službami Azure.

1. Požadavky

  • Předplatné Azure. Pokud předplatné nemáte, vytvořte si před zahájením bezplatný účet .
  • Pokud nasazujete instanci plánu Azure Spring Apps Enterprise poprvé v cílovém předplatném, přečtěte si část Požadavky plánu Enterprise na Azure Marketplace.
  • (Volitelné) Git.
  • (Volitelné) Java Development Kit (JDK) verze 17.

2. Příprava projektu Spring

Ukázku připravíte místně pomocí následujících kroků:

  1. Naklonujte ukázkový projekt pomocí následujícího příkazu:

    git clone https://github.com/Azure-Samples/spring-petclinic-microservices.git
    
  2. Přejděte do kořenového adresáře projektu a pak pomocí následujícího příkazu spusťte ukázkový projekt místně:

    bash ./scripts/run_all_without_infra.sh
    
  3. Po úspěšném dokončení skriptu přejděte v http://localhost:8080 prohlížeči a přejděte do aplikace PetClinic.

3. Příprava cloudového prostředí

Tato část popisuje, jak vytvořit instanci služby Azure Spring Apps a připravit cloudové prostředí Azure.

3.1. Přihlaste se k portálu Azure Portal.

Přejděte na web Azure Portal, zadejte svoje přihlašovací údaje a přihlaste se k portálu. Výchozím zobrazením je váš řídicí panel služby.

3.2. Vytvoření instance Azure Spring Apps

K vytvoření instance služby použijte následující postup:

  1. V rohu webu Azure Portal vyberte Vytvořit prostředek .

  2. Na kartě Služby Azure vyberte Compute>Azure Spring Apps.

    Snímek obrazovky webu Azure Portal se zvýrazněnou stránkou Vytvořit prostředek se zvýrazněnou možností Azure Spring Apps

  3. Na stránce Vytvořit Azure Spring Apps vyplňte formulář na kartě Základy.

    Snímek obrazovky webu Azure Portal znázorňující stránku Vytvořit aplikace Azure Spring s vybranou kartou Základy

    Jako vodítko pro dokončení formuláře použijte následující tabulku. Doporučený plán je Standard.

    Nastavení Navrhovaná hodnota Popis
    Předplatné Název vašeho předplatného Předplatné Azure, které chcete použít pro váš server. Pokud máte více předplatných, zvolte předplatné, za které chcete prostředek fakturovat.
    Skupina prostředků myresourcegroup Název nové skupiny prostředků nebo některé ze stávajících ve vašem předplatném.
    Název myasa Jedinečný název, který identifikuje vaši instanci Azure Spring Apps. Název musí mít délku 4 až 32 znaků a může obsahovat jenom malá písmena, číslice a pomlčky. První znak názvu služby musí být písmeno a poslední znak musí být písmeno nebo číslo.
    Plán Standard Cenový plán určuje prostředky a náklady spojené s vaší instancí.
    Oblast Oblast, která je nejblíže vašim uživatelům. Umístění co nejblíže vašim uživatelům.
    Zónově redundantní Nevybráno Vytvoří službu Azure Spring Apps v zóně dostupnosti Azure. V současné době se nepodporuje ve všech oblastech.
  4. Přejděte na kartu Nastavení diagnostiky na stránce Vytvořit azure Spring Apps a pak vyberte Vytvořit nový a vytvořte novou instanci pracovních prostorů služby Log Analytics. Na stránce Vytvořit nový pracovní prostor služby Log Analytics podle potřeby aktualizujte název pracovního prostoru služby Log Analytics a pak výběrem ok potvrďte vytvoření.

    Snímek obrazovky webu Azure Portal se stránkou Vytvořit azure Spring Apps s vybranou kartou Diagnostika a zvýrazněným tlačítkem Vytvořit nový

  5. Přejděte na kartu Application Insights na stránce Vytvořit azure Spring Apps a pak vyberte Vytvořit novou a vytvořte novou instanci Application Insights. Na stránce Vytvořit nový prostředek Application Insights podle potřeby aktualizujte název Application Insights, vyberte pracovní prostor pro režim prostředků a pak výběrem ok potvrďte vytvoření.

    Snímek obrazovky webu Azure Portal se stránkou Vytvořit aplikace Azure Spring s podoknem prostředků Vytvořit novou službu Application Insights

  6. Výběrem možnosti Zkontrolovat a Vytvořit zkontrolujte vybrané možnosti. Pak vyberte Vytvořit a zřiďte instanci Azure Spring Apps.

  7. Vyberte ikonu Oznámení (zvonek) a sledujte proces nasazení. Po dokončení nasazení můžete výběrem možnosti Připnout na řídicí panel vytvořit zástupce na řídicím panelu webu Azure Portal na stránce Přehled služby.

    Snímek obrazovky webu Azure Portal znázorňující nasazení prostředku a podokna oznámení s tlačítky Přejít k prostředku a Připnout na řídicí panel

  8. Výběrem možnosti Přejít k prostředku přejděte na stránku Přehled služby Azure Spring Apps.

  9. V navigačním podokně vyberte Konfigurační server .

  10. Na stránce konfiguračního serveru jako identifikátor URI zadejte https://github.com/Azure-Samples/spring-petclinic-microservices-config.git a pak vyberte Ověřit.

    Snímek obrazovky webu Azure Portal se stránkou Konfigurační server se zvýrazněným výchozím identifikátorem URI a zvýrazněným tlačítkem Ověřit

  11. Po ověření vyberte Použít a dokončete konfiguraci konfiguračního serveru.

4. Nasazení aplikací do Azure Spring Apps

Aplikaci teď můžete nasadit do Azure Spring Apps.

Pomocí následujících kroků nasaďte aplikace mikroslužeb pomocí modulu plug-in Maven pro Azure Spring Apps:

  1. Přejděte do ukázkového adresáře projektu a pak pomocí následujícího příkazu nakonfigurujte aplikace pro Azure Spring Apps:

    ./mvnw -P spring-apps com.microsoft.azure:azure-spring-apps-maven-plugin:1.17.0:config
    
  2. Následující seznam popisuje interakce příkazů:

    • Vyberte podřízené moduly, které chcete konfigurovat (vstupní čísla oddělená čárkou, např: [1-2;4;6], ENTER vyberte VŠE): Stisknutím klávesy Enter vyberte vše.
    • Přihlášení OAuth2: Autorizuje přihlášení do Azure na základě protokolu OAuth2.
    • Vyberte předplatné: Vyberte číslo seznamu předplatných instance Azure Spring Apps, kterou jste vytvořili. Výchozí hodnota je první předplatné v seznamu. Pokud použijete výchozí číslo, stiskněte klávesu Enter přímo.
    • Vyberte Azure Spring Apps pro nasazení: Vyberte číslo seznamu instance Azure Spring Apps, kterou jste vytvořili. Pokud použijete výchozí číslo, stiskněte klávesu Enter přímo.
    • Vyberte aplikace pro zveřejnění veřejného přístupu:(vstupní čísla oddělená čárkou, např: [1-2;4;6], ENTER vyberte NONE): Zadejte 1,5 pro admin-server a api-gateway.
    • Potvrďte uložení všech výše uvedených konfigurací (Y/n): Stiskněte y. Pokud stisknete klávesu n, konfigurace se neuloží do souborů POM.
  3. Pomocí následujícího příkazu sestavte a nasaďte každou aplikaci:

    ./mvnw azure-spring-apps:deploy
    
  4. V případě výzvy k přihlášení OAuth2 autorizujete přihlášení k Azure na základě protokolu OAuth2.

    Poznámka:

    Nasazení do Azure Spring Apps může trvat až 25 minut.

Po spuštění příkazu se v protokolu zobrazí výstup podobný následujícímu příkladu, který označuje, že všechna nasazení jsou úspěšná:

[INFO] Deployment(default) is successfully updated.
[INFO] Deployment Status: Running
[INFO]   InstanceName:admin-server-default-xx-xx-xxx  Status:Running Reason:null       DiscoverStatus:UP
[INFO] Getting public url of app(admin-server)...
[INFO] Application url: https://<your-Azure-Spring-Apps-instance-name>-admin-server.azuremicroservices.io

...

[INFO] Getting public url of app(api-gateway)...
[INFO] Application url: https://<your-Azure-Spring-Apps-instance-name>-api-gateway.azuremicroservices.io

2. Příprava projektu Spring

Tlačítko Nasadit do Azure v další části spustí prostředí webu Azure Portal, které nasadí zdrojový kód z úložiště Spring PetClinic . Nejsou potřeba žádné místní přípravné kroky.

3. Příprava cloudového prostředí

Hlavním prostředkem, který potřebujete ke spuštění této ukázky, je instance Azure Spring Apps. Tato část popisuje, jak vytvořit tento prostředek.

Tato část používá tlačítko Nasadit do Azure ke spuštění prostředí nasazení na webu Azure Portal. V tomto prostředí se k vytváření prostředků Azure používá šablona ARM.

3.1. Přihlaste se k portálu Azure Portal.

Přejděte na web Azure Portal, zadejte svoje přihlašovací údaje a přihlaste se k portálu. Výchozím zobrazením je váš řídicí panel služby.

3.2. Vytvoření zdrojů Azure

Pomocí následujících kroků vytvořte všechny prostředky Azure, na které aplikace závisí:

  1. Výběrem následujícího tlačítka Nasadit do Azure spusťte prostředí nasazení na webu Azure Portal:

    Tlačítko pro nasazení šablony Resource Manageru do Azure

  2. Vyplňte formulář na kartě Základy . Jako vodítko pro dokončení formuláře použijte následující tabulku:

    Nastavení Navrhovaná hodnota Popis
    Předplatné Název vašeho předplatného Předplatné Azure, které chcete použít pro váš server. Pokud máte více předplatných, zvolte předplatné, ve kterém chcete prostředek fakturovat.
    Skupina prostředků myresourcegroup Název nové skupiny prostředků nebo některé ze stávajících ve vašem předplatném.
    Oblast Oblast, která je nejblíže vašim uživatelům. Oblast slouží k vytvoření skupiny prostředků.

    Snímek obrazovky webu Azure Portal se stránkou Vlastní nasazení

  3. Výběrem možnosti Zkontrolovat a Vytvořit zkontrolujte vybrané možnosti. Pak vyberte Vytvořit a nasaďte aplikaci do Azure Spring Apps.

  4. Pokud chcete monitorovat proces nasazení, na panelu nástrojů vyberte ikonu Oznámení (zvonek). Po dokončení nasazení můžete vybrat Připnout na řídicí panel, který vytvoří dlaždici pro tuto službu na řídicím panelu webu Azure Portal jako zástupce na stránce Přehled služby. Výběrem možnosti Přejít k prostředku otevřete stránku Přehled služby.

    Snímek obrazovky webu Azure Portal se stránkou Přehled s otevřeným podoknem oznámení o vlastním nasazení

4. Nasazení aplikací do Azure Spring Apps

Tlačítko Nasadit do Azure v předchozí části spustí prostředí webu Azure Portal, které zahrnuje nasazení aplikace, takže není potřeba nic jiného.

5. Ověření aplikací

Následující části popisují, jak nasazení ověřit.

5.1. Přístup k aplikacím

Po dokončení nasazení najdete adresu URL brány Spring Cloud z výstupů nasazení, jak je znázorněno na následujícím snímku obrazovky:

Snímek obrazovky webu Azure Portal se stránkou Výstupy nasazení

Otevřete adresu URL brány. Aplikace by měla vypadat podobně jako na následujícím snímku obrazovky:

Snímek obrazovky aplikace PetClinic spuštěné v plánu Azure Spring Apps Enterprise

5.2. Dotazování protokolů aplikace

Po procházení jednotlivých funkcí Pet Clinic shromažďuje pracovní prostor Log Analytics protokoly každé aplikace. Protokoly můžete zkontrolovat pomocí vlastních dotazů, jak je znázorněno na následujícím snímku obrazovky:

Snímek obrazovky webu Azure Portal se stránkou Protokoly dotazu v aplikaci PetClinic a výsledky plánu Enterprise

5.3. Monitorování aplikací

Application Insights monitoruje závislosti aplikací, jak je znázorněno v následující mapě trasování aplikací:

Snímek obrazovky webu Azure Portal zobrazící stránku mapy aplikace pro plán Azure Spring Apps Enterprise

Adresu URL živého zobrazení aplikace najdete ve výstupech nasazení. Otevřete adresu URL živého zobrazení aplikace pro monitorování modulů runtime aplikací, jak je znázorněno na následujícím snímku obrazovky:

Snímek obrazovky živého zobrazení aplikace pro aplikaci PetClinic

5.1. Přístup k aplikacím

Pomocí informací o adrese URL ve výstupu protokolu nasazení otevřete adresu URL vystavenou aplikací s názvem api-gateway , https://<your-Azure-Spring-Apps-instance-name>-api-gateway.azuremicroservices.ionapříklad . Aplikace by měla vypadat podobně jako na následujícím snímku obrazovky:

Snímek obrazovky aplikace PetClinic spuštěné v Azure Spring Apps

5.2. Dotazování protokolů aplikace

Po procházení jednotlivých funkcí Pet Clinic shromažďuje pracovní prostor Log Analytics protokoly každé aplikace. Protokoly můžete zkontrolovat pomocí vlastních dotazů, jak je znázorněno na následujícím snímku obrazovky:

Snímek obrazovky webu Azure Portal se stránkou Protokoly dotazu v aplikaci PetClinic a výsledky

5.3. Monitorování aplikací

Application Insights monitoruje závislosti aplikací, jak je znázorněno v následující mapě trasování aplikací:

Snímek obrazovky webu Azure Portal se stránkou mapy aplikace pro instanci Application Insights

Otevřete adresu URL vystavenou aplikací admin-server pro správu aplikací prostřednictvím serveru Spring Boot Admin, jak je znázorněno na následujícím snímku obrazovky:

Snímek obrazovky se stránkou Spring Boot Admin Server pro aplikaci PetClinic se seznamem aktuálních instancí aplikace

6. Vyčištění prostředků

Pokud chcete pokračovat v práci s dalšími rychlými starty a kurzy, můžete tyto prostředky ponechat na místě. Pokud už prostředky nepotřebujete, můžete vyčistit nepotřebné prostředky, abyste se vyhnuli poplatkům za Azure.

Pomocí následujících kroků odstraňte celou skupinu prostředků, včetně nově vytvořené instance služby:

  1. Vyhledejte skupinu prostředků na webu Azure Portal. V navigační nabídce vyberte Skupiny prostředků a pak vyberte název vaší skupiny prostředků.

  2. Na stránce Skupina prostředků vyberte Odstranit. Do textového pole zadejte název skupiny prostředků, abyste potvrdili odstranění, a pak vyberte Odstranit.

Pokud už je nepotřebujete, nezapomeňte odstranit prostředky, které jste vytvořili v tomto článku. Můžete odstranit skupinu prostředků Azure, což zahrnuje odstranění všech prostředků v této skupině prostředků.

Pomocí následujících kroků odstraňte celou skupinu prostředků:

  1. Vyhledejte skupinu prostředků na webu Azure Portal. V navigační nabídce vyberte Skupiny prostředků a pak vyberte název vaší skupiny prostředků.

  2. Na stránce Skupina prostředků vyberte Odstranit. Do textového pole zadejte název skupiny prostředků, abyste potvrdili odstranění, a pak vyberte Odstranit.

7. Další kroky

Další informace najdete v následujících článcích: