Felhők közötti skálázást használó alkalmazás üzembe helyezése az Azure és az Azure Stack Hub használatával

Megtudhatja, hogyan hozhat létre többfelhős megoldást, amely manuálisan aktivált folyamatot biztosít az Azure Stack Hubban üzemeltetett webalkalmazásról azure-beli üzemeltetett webalkalmazásra való váltáshoz a Traffic Manageren keresztüli automatikus skálázással. Ez a folyamat rugalmas és méretezhető felhőalapú segédprogramot biztosít terhelés alatt.

Ezzel a mintával előfordulhat, hogy a bérlő nem áll készen az alkalmazás nyilvános felhőben való futtatására. Azonban gazdaságilag nem kivitelezhető, hogy a vállalat fenntartsa a helyszíni környezethez szükséges kapacitást az alkalmazás iránti kereslet kiugróan magas számának kezeléséhez. A bérlő a helyszíni megoldásával kihasználhatja a nyilvános felhő rugalmasságát.

Ebben a megoldásban egy mintakörnyezetet hoz létre a következőre:

  • Többcsomópontos webalkalmazás létrehozása.
  • A folyamatos üzembe helyezés (CD) folyamat konfigurálása és kezelése.
  • Tegye közzé a webalkalmazást az Azure Stack Hubon.
  • Hozzon létre egy kiadást.
  • Megtudhatja, hogyan figyelheti és követheti nyomon az üzemelő példányokat.

Tipp

hybrid pillars diagramMicrosoft Azure Stack Hub az Azure bővítménye. Az Azure Stack Hub biztosítja a felhőalapú számítástechnika rugalmasságát és innovációját a helyszíni környezetében, így az egyetlen hibrid felhő, amellyel bárhol létrehozhat és üzembe helyezhet hibrid alkalmazásokat.

A hibrid alkalmazások tervezésével kapcsolatos szempontok a szoftverminőség (elhelyezés, méretezhetőség, rendelkezésre állás, rugalmasság, kezelhetőség és biztonság) alappilléreit vizsgálják a hibrid alkalmazások tervezéséhez, üzembe helyezéséhez és üzemeltetéséhez. A kialakítási szempontok segítenek optimalizálni a hibrid alkalmazások tervezését, minimalizálva az éles környezetekben jelentkező kihívásokat.

Előfeltételek

  • Egy Azure-előfizetés. Ha szükséges, hozzon létre egy ingyenes fiókot a kezdés előtt.
  • Az Azure Stack Hub integrált rendszere vagy az Azure Stack Development Kit (ASDK) üzembe helyezése.
  • App Service PaaS-szolgáltatások üzembe helyezése az Azure Stack Hubon.
  • Hozzon létre csomagokat/ajánlatokat az Azure Stack Hub-környezetben.
  • Bérlői előfizetés létrehozása az Azure Stack Hub-környezetben.
  • Hozzon létre egy webalkalmazást a bérlői előfizetésen belül. Jegyezze fel az új webalkalmazás URL-címét későbbi használatra.
  • Azure Pipelines virtuális gép (VM) üzembe helyezése a bérlői előfizetésben.
  • Windows Server 2016 .NET 3.5-tel rendelkező virtuális gépre van szükség. Ez a virtuális gép az Azure Stack Hub bérlői előfizetésében lesz létrehozva privát fordítóügynökként.
  • Windows Server 2016 SQL 2017 virtuálisgép-rendszerképe elérhető az Azure Stack Hub Marketplace-en. Ha ez a rendszerkép nem érhető el, az Azure Stack Hub-operátorral együttműködve győződjön meg arról, hogy a rendszer hozzáadta a környezethez.

Problémák és megfontolandó szempontok

Méretezhetőség

A többfelhős skálázás fő összetevője a nyilvános és helyszíni felhőinfrastruktúra közötti azonnali és igény szerinti skálázás lehetősége, egységes és megbízható szolgáltatás biztosításával.

Rendelkezésre állás

Győződjön meg arról, hogy a helyileg telepített alkalmazások magas rendelkezésre állásra vannak konfigurálva a helyszíni hardverkonfiguráció és a szoftvertelepítés révén.

Kezelhetőség

A felhőközi megoldás zökkenőmentes felügyeletet és ismerős felületet biztosít a környezetek között. A PowerShell platformfüggetlen felügyelethez ajánlott.

Több felhőre kiterjedő méretezés

Egyéni tartomány lekérése és a DNS konfigurálása

Frissítse a tartomány DNS-zónafájlt. Az Azure AD ellenőrzi az egyéni tartománynév tulajdonjogát. Használja az Azure DNS-t az Azure/Microsoft 365/külső DNS-rekordokhoz az Azure-ban, vagy adja hozzá a DNS-bejegyzést egy másik DNS-regisztrálóhoz.

  1. Egyéni tartomány regisztrálása nyilvános regisztrálónál.
  2. Jelentkezzen be a tartomány tartománynév-regisztrálójába. Előfordulhat, hogy egy jóváhagyott rendszergazdának kell DNS-frissítéseket végeznie.
  3. Frissítse a tartomány DNS-zónafájlt az Azure AD által biztosított DNS-bejegyzés hozzáadásával. (A DNS-bejegyzés nem befolyásolja az e-mailek útválasztását és a webes üzemeltetés működését.)

Alapértelmezett többcsomópontos webalkalmazás létrehozása az Azure Stack Hubban

Konfigurálja a hibrid folyamatos integrációt és folyamatos üzembe helyezést (CI/CD) a webalkalmazások Azure-ban és Az Azure Stack Hubban való üzembe helyezéséhez, valamint a módosítások mindkét felhőben való automatikus eléréséhez.

Megjegyzés

Az Azure Stack Hub futtatásához megfelelő rendszerképekkel (Windows Server és SQL) és App Service üzembe helyezésre van szükség. További információkért tekintse át a App Service dokumentációban az App Service Azure Stack Hubon való üzembe helyezésének előfeltételeit.

Kód hozzáadása az Azure-adattárakhoz

Azure Repos

  1. Jelentkezzen be az Azure Reposba egy olyan fiókkal, amely projektlétrehozási jogosultságokkal rendelkezik az Azure Reposban.

    A hibrid CI/CD alkalmazáskódra és infrastruktúra-kódra is alkalmazható. Azure Resource Manager-sablonokat használhat magán- és üzemeltetett felhőfejlesztéshez is.

    Connect to a project on Azure Repos

  2. Klónozza az adattárat az alapértelmezett webalkalmazás létrehozásával és megnyitásával.

    Clone repo in Azure web app

Önálló webalkalmazás üzembe helyezésének létrehozása az App Serviceshez mindkét felhőben

  1. Szerkessze a WebApplication.csproj fájlt. Válassza ki Runtimeidentifier és adja hozzá a elemet win10-x64. (Lásd az önálló üzembe helyezés dokumentációját.)

    Edit web app project file

  2. A Team Explorerrel adja be a kódot az Azure-adattárakba.

  3. Győződjön meg arról, hogy az alkalmazáskód be van jelentkezve az Azure-adattárakba.

A builddefiníció létrehozása

  1. Jelentkezzen be az Azure Pipelinesba a builddefiníciók létrehozásának megerősítéséhez.

  2. -r win10-x64 kód hozzáadása. Erre a kiegészítésre azért van szükség, hogy egy önálló üzembe helyezést aktiváljon a .NET Core-jal.

    Add code to the web app

  3. Futtassa a buildet. A önálló üzembehelyezési buildelési folyamat közzéteszi az Azure-ban és az Azure Stack Hubon futó összetevőket.

Azure-ban üzemeltetett ügynök használata

Webalkalmazások készítéséhez és üzembe helyezéséhez kényelmes megoldás egy üzemeltetett fordítóügynök használata az Azure Pipelinesban. A karbantartást és a frissítéseket a Microsoft Azure automatikusan végzi, ami folyamatos és folyamatos fejlesztési ciklust tesz lehetővé.

A CD-folyamat kezelése és konfigurálása

Az Azure Pipelines és az Azure DevOps Services egy nagy mértékben konfigurálható és felügyelhető folyamatot biztosít a kiadásokhoz több környezetben, például fejlesztési, előkészítési, minőségbiztosítási és éles környezetekben; beleértve a jóváhagyások megkövetelése bizonyos szakaszokban.

Kiadási definíció létrehozása

  1. A plusz gombra kattintva új kiadást adhat hozzá az Azure DevOps Services Build and ReleaseszakaszÁnak Kiadások lapján.

    Create a release definition

  2. Alkalmazza a Azure App Service üzembe helyezési sablont.

    Apply Azure App Service Deployment template

  3. Az Összetevő hozzáadása területen adja hozzá az összetevőt az Azure Cloud buildalkalmazáshoz.

    Add artifact to Azure Cloud build

  4. A Folyamat lapon válassza ki a környezet Fázis, Feladat hivatkozását, és állítsa be az Azure-felhőkörnyezet értékeit.

    Set Azure cloud environment values

  5. Állítsa be a környezet nevét , és válassza ki az Azure-előfizetést az Azure Cloud-végponthoz.

    Select Azure subscription for Azure Cloud endpoint

  6. Az App Service neve területen adja meg a szükséges Azure App Service-nevet.

    Set Azure app service name

  7. Adja meg a "Hosted VS2017" (Üzemeltetett VS2017) kifejezést az Azure-felhőben üzemeltetett környezet ügynöksorában .

    Set Agent queue for Azure cloud hosted environment

  8. Az Üzembe helyezés Azure App Service menüben válassza ki a környezethez tartozó érvényes csomagot vagy mappát. Válassza az OK gombot a mappa helyéhez.

    Select package or folder for Azure App Service environment

    Folder picker dialog 1

  9. Mentse az összes módosítást, és térjen vissza a kiadási folyamathoz.

    Save changes in release pipeline

  10. Adjon hozzá egy új összetevőt, amely kiválasztja az Azure Stack Hub-alkalmazás buildelését.

    Add new artifact for Azure Stack Hub app

  11. Adjon hozzá még egy környezetet a Azure App Service üzembe helyezés alkalmazásával.

    Add environment to Azure App Service Deployment

  12. Adja az új környezetnek az "Azure Stack" nevet.

    Name environment in Azure App Service Deployment

  13. Keresse meg az Azure Stack-környezetet a Feladat lapon.

    Azure Stack environment

  14. Válassza ki az Azure Stack-végpont előfizetését.

    Select the subscription for the Azure Stack endpoint

  15. Állítsa be az Azure Stack-webalkalmazás nevét App Service-névként. Set Azure Stack web app name

  16. Válassza ki az Azure Stack-ügynököt.

    Select the Azure Stack agent

  17. Az Üzembe helyezés Azure App Service szakaszban válassza ki a környezethez tartozó érvényes csomagot vagy mappát. Válassza az OK gombot a mappa helyéhez.

    Select folder for Azure App Service Deployment

    Folder picker dialog 2

  18. A Változó lapon adjon hozzá egy változót, VSTS\_ARM\_REST\_IGNORE\_SSL\_ERRORSállítsa igazként az értékét, és a hatókört az Azure Stackre.

    Add variable to Azure App Deployment

  19. Válassza a Folyamatos üzembe helyezés eseményindító ikont mindkét összetevőben, és engedélyezze a Folytatás üzembe helyezés eseményindítót.

    Select continuous deployment trigger

  20. Válassza az Üzembe helyezés előtti feltételek ikont az Azure Stack-környezetben, és állítsa az eseményindítót a kiadás után értékre.

    Select pre-deployment conditions

  21. Mentse az összes módosítást.

Megjegyzés

Előfordulhat, hogy a feladatok egyes beállításai automatikusan környezeti változókként lettek definiálva, amikor kiadási definíciót hoztak létre egy sablonból. Ezek a beállítások nem módosíthatók a feladatbeállításokban; ehelyett a szülőkörnyezeti elemet kell kijelölni a beállítások szerkesztéséhez.

Közzététel az Azure Stack Hubon Visual Studio

Végpontok létrehozásával egy Azure DevOps Services-build üzembe helyezheti az Azure Service-alkalmazásokat az Azure Stack Hubon. Az Azure Pipelines csatlakozik a buildügynökhöz, amely az Azure Stack Hubhoz csatlakozik.

  1. Jelentkezzen be az Azure DevOps Servicesbe, és lépjen az alkalmazásbeállítások lapjára.

  2. A Gépház válassza a Biztonság lehetőséget.

  3. A VSTS-csoportokban válassza a Végpontkészítők lehetőséget.

  4. A Tagok lapon válassza a Hozzáadás lehetőséget.

  5. A Felhasználók és csoportok hozzáadása területen adjon meg egy felhasználónevet, és válassza ki a felhasználót a felhasználók listájából.

  6. Válassza a Módosítások mentése lehetőséget.

  7. A VSTS-csoportok listájában válassza a Végpontgazdák lehetőséget.

  8. A Tagok lapon válassza a Hozzáadás lehetőséget.

  9. A Felhasználók és csoportok hozzáadása területen adjon meg egy felhasználónevet, és válassza ki a felhasználót a felhasználók listájából.

  10. Válassza a Módosítások mentése lehetőséget.

Most, hogy a végpontadatok már léteznek, az Azure Pipelines és az Azure Stack Hub közötti kapcsolat készen áll a használatra. Az Azure Stack Hub buildügynöke utasításokat kap az Azure Pipelinestól, majd az ügynök végpontinformációkat továbbít az Azure Stack Hubbal való kommunikációhoz.

Az alkalmazás buildjének fejlesztése

Megjegyzés

A megfelelő rendszerképekkel (Windows Server és SQL) és App Service üzembe helyezéssel rendelkező Azure Stack Hubra van szükség. További információ: A App Service Azure Stack Hubon való üzembe helyezésének előfeltételei.

Az Azure-Resource Manager-sablonok, például az Azure-adattárakból származó webalkalmazás-kód használatával üzembe helyezheti mindkét felhőben.

Kód hozzáadása Azure Repos-projekthez

  1. Jelentkezzen be az Azure-adattárakba egy olyan fiókkal, amely projektlétrehozási jogosultságokkal rendelkezik az Azure Stack Hubon.

  2. Klónozza az adattárat az alapértelmezett webalkalmazás létrehozásával és megnyitásával.

Önálló webalkalmazás üzembe helyezésének létrehozása az App Serviceshez mindkét felhőben

  1. A WebApplication.csproj fájl szerkesztése: Válassza ki Runtimeidentifier , majd adja hozzá win10-x64. További információ: Önálló üzembe helyezési dokumentáció.

  2. A Team Explorerrel ellenőrizze a kódot az Azure-adattárakban.

  3. Ellenőrizze, hogy az alkalmazáskód be van-e jelölve az Azure-adattárakba.

A builddefiníció létrehozása

  1. Jelentkezzen be az Azure Pipelinesba egy olyan fiókkal, amely létrehozhat egy builddefiníciót.

  2. Lépjen a projekt Webalkalmazás létrehozása lapjára.

  3. Az argumentumokban adja hozzá az -r win10-x64 kódot. Ez a kiegészítés szükséges a .NET Core használatával történő önálló üzembe helyezés elindításához.

  4. Futtassa a buildet. A önálló üzembe helyezés buildelési folyamata közzéteszi az Azure-ban és az Azure Stack Hubon futtatható összetevőket.

Azure-ban üzemeltetett buildügynök használata

Webalkalmazások készítéséhez és üzembe helyezéséhez kényelmes megoldás egy üzemeltetett fordítóügynök használata az Azure Pipelinesban. A karbantartást és a frissítéseket automatikusan Microsoft Azure végzik, ami folyamatos és folyamatos fejlesztési ciklust tesz lehetővé.

A folyamatos üzembe helyezés (CD) folyamatának konfigurálása

Az Azure Pipelines és az Azure DevOps Services egy nagy mértékben konfigurálható és kezelhető folyamatot biztosít több környezet , például a fejlesztés, az előkészítés, a minőségbiztosítás (QA) és az éles környezetek kiadásához. Ez a folyamat magában foglalhat jóváhagyást az alkalmazás életciklusának bizonyos szakaszaiban.

Kiadási definíció létrehozása

A kiadási definíció létrehozása az alkalmazás buildelési folyamatának utolsó lépése. Ez a kiadásdefiníció egy kiadás létrehozásához és egy build üzembe helyezéséhez használható.

  1. Jelentkezzen be az Azure Pipelinesba, és lépjen a projekt buildjéhez és kiadásához .

  2. A Kiadások lapon válassza a [ + ] lehetőséget, majd válassza a Kiadásdefiníció létrehozása lehetőséget.

  3. A Sablon kiválasztása lapon válassza Azure App Service Üzembe helyezés, majd az Alkalmaz lehetőséget.

  4. Az Add artifact (Összetevő hozzáadása) területen válassza ki az Azure Cloud buildalkalmazást a Forrás (Builddefiníció) területen.

  5. A Folyamat lapon válassza az 1 fázis, 1 tevékenység hivatkozását a környezeti tevékenységek megtekintéséhez.

  6. A Feladatok lapon adja meg az Azure-t a környezet neveként , majd válassza ki az AzureCloud Traders-Web EP-t az Azure-előfizetések listájából.

  7. Adja meg az Azure App Service nevét, amely a következő képernyőfelvételen látható northwindtraders .

  8. Az Ügynök fázisnál válassza az Üzemeltetett VS2017 elemet az Ügynök várólistájának listájából.

  9. Az Üzembe helyezés Azure App Service területen válassza ki a környezethez tartozó érvényes csomagot vagy mappát.

  10. A Fájl vagy mappa kiválasztása területen válassza az OKgombot a helyhez.

  11. Mentse az összes módosítást, és térjen vissza a folyamathoz.

  12. A Folyamat lapon válassza az Összetevő hozzáadása lehetőséget, majd a Forrás (Builddefiníció) listából válassza a NorthwindCloud Traders-Vessel elemet.

  13. A Sablon kiválasztása területen adjon hozzá egy másik környezetet. Válassza Azure App Service üzembe helyezést, majd válassza az Alkalmaz lehetőséget.

  14. Adja meg Azure Stack Hub a környezet nevét.

  15. A Feladatok lapon keresse meg és válassza ki az Azure Stack Hubot.

  16. Az Azure-előfizetések listájában válassza az Azure Stack Hub-végponthoz tartozó AzureStack Traders-Vessel EP-t .

  17. Adja meg az Azure Stack Hub-webalkalmazás nevét az App Service neveként.

  18. Az Ügynök kiválasztása területen válassza az AzureStack -b Douglas Fir elemet az Ügynök várólistájának listájából.

  19. Az Üzembe helyezés Azure App Service beállításnál válassza ki a környezethez tartozó érvényes csomagot vagy mappát. A Fájl vagy mappa kiválasztása lapon válassza az OK gombot a mappa helyének megadásához.

  20. A Változó lapon keresse meg a következő nevű változót VSTS\_ARM\_REST\_IGNORE\_SSL\_ERRORS: . Állítsa a változó értékét igaz értékre, és állítsa a hatókörét az Azure Stack Hubra.

  21. A Folyamat lapon válassza a NorthwindCloud Traders-Web összetevőhöz tartozó folyamatos üzembehelyezési eseményindító ikont, és állítsa a Folyamatos üzembe helyezés eseményindítótEngedélyezve értékre. Tegye ugyanezt a NorthwindCloud Traders-Vessel összetevő esetében is.

  22. Az Azure Stack Hub-környezet esetében válassza az Üzembe helyezés előtti feltételek ikont, és állítsa az eseményindítót kiadás utáni értékre.

  23. Mentse az összes módosítást.

Megjegyzés

A kiadási feladatok egyes beállításai automatikusan környezeti változókként vannak definiálva, amikor kiadási definíciót hoz létre egy sablonból. Ezek a beállítások nem módosíthatók a tevékenység beállításaiban, de módosíthatók a szülőkörnyezet elemeiben.

Kiadás létrehozása

  1. A Folyamat lapon nyissa meg a Kiadás listát, és válassza a Kiadás létrehozása lehetőséget.

  2. Adja meg a kiadás leírását, ellenőrizze, hogy a megfelelő összetevők vannak-e kiválasztva, majd válassza a Létrehozás lehetőséget. Néhány pillanat múlva megjelenik egy szalagcím, amely jelzi, hogy az új kiadás létrejött, és a kiadás neve hivatkozásként jelenik meg. Kattintson a hivatkozásra a kiadás összegzési oldalának megtekintéséhez.

  3. A kiadás összefoglalása oldalon a kiadás részletei láthatók. A "Release-2" következő képernyőfelvételében a Környezetek szakasz az Azure üzembehelyezési állapotát "FOLYAMATBAN" állapotúként jeleníti meg, az Azure Stack Hub állapota pedig "SUCCEEDED" (SIKERES). Amikor az Azure-környezet üzembe helyezési állapota "SIKERES" értékre változik, megjelenik egy szalagcím, amely jelzi, hogy a kiadás készen áll a jóváhagyásra. Ha egy üzembe helyezés függőben van vagy sikertelen, kék (i) információs ikon jelenik meg. Az ikonra mutatva megjelenik egy előugró ablak, amely tartalmazza a késés vagy a hiba okát.

  4. Más nézetek, például a kiadások listája is megjelenít egy ikont, amely azt jelzi, hogy a jóváhagyás függőben van. Az ikon előugró panelje megjeleníti a környezet nevét és az üzembe helyezéssel kapcsolatos további részleteket. A rendszergazdák könnyen láthatják a kiadások általános állapotát, és megtekinthetik, hogy mely kiadások várnak jóváhagyásra.

Az üzemelő példányok monitorozása és nyomon követése

  1. A Release-2 összefoglaló oldalán válassza a Naplók lehetőséget. Az üzembe helyezés során ezen az oldalon az ügynök élő naplója látható. A bal oldali panelen az egyes környezetekben az üzemelő példány egyes műveleteinek állapota látható.

  2. Válassza a Személy ikont a Művelet oszlopban az üzembe helyezés előtti vagy az üzembe helyezés utáni jóváhagyáshoz, hogy megtekintse, ki hagyta jóvá (vagy utasította el) az üzemelő példányt és a megadott üzenetet.

  3. Az üzembe helyezés befejezése után a teljes naplófájl megjelenik a jobb oldali panelen. A bal oldali panelen bármelyik lépésre kattintva megtekintheti az egyetlen lépés naplófájlját, például a feladat inicializálását. Az egyes naplók megtekintésének lehetősége megkönnyíti a teljes üzembe helyezés egyes részeinek nyomon követését és hibakeresését. Mentse a naplófájlt egy lépéshez, vagy töltse le az összes naplót zip-fájlként.

  4. Nyissa meg az Összefoglalás lapot a kiadással kapcsolatos általános információk megtekintéséhez. Ez a nézet a buildel, az üzembe helyezett környezetekkel, az üzembe helyezés állapotával és a kiadással kapcsolatos egyéb információkat jeleníti meg.

  5. Válasszon ki egy környezeti hivatkozást (Azure vagy Azure Stack Hub) az adott környezetben meglévő és függőben lévő üzembe helyezésekkel kapcsolatos információk megtekintéséhez. Ezekkel a nézetekkel gyorsan ellenőrizheti, hogy ugyanazt a buildet mindkét környezetben üzembe helyezték-e.

  6. Nyissa meg az üzembe helyezett éles alkalmazást egy böngészőben. Például a Azure-alkalmazás Services webhelyén nyissa meg az URL-címethttps://[your-app-name\].azurewebsites.net.

Az Azure és az Azure Stack Hub integrációja skálázható többfelhős megoldást biztosít

A rugalmas és robusztus többfelhős szolgáltatás adatbiztonságot, biztonsági mentést és redundanciát, konzisztens és gyors rendelkezésre állást, méretezhető tárolást és elosztást, valamint geomegfelelő útválasztást biztosít. Ez a manuálisan aktivált folyamat megbízható és hatékony terhelésváltást biztosít az üzemeltetett webalkalmazások és a kritikus fontosságú adatok azonnali rendelkezésre állása között.

Következő lépések