Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A magas rendelkezésre állás és a hibatűrés a jól kivitelezett megoldások kulcsfontosságú összetevői. A robusztus konfiguráció tartalmaz egy vészhelyzeti tervet a váratlan hibákhoz, az állásidő csökkentésére és hogy a rendszerek automatikusan működjenek.
Amikor üzembe helyez egy alkalmazást a felhőben, kiválaszt egy régiót a felhőben az alkalmazásinfrastruktúra-bázis számára. Ha csak egyetlen régióban helyez üzembe egy alkalmazást, és az a régió elérhetetlenné válik, az alkalmazás is elérhetetlenné válik. A rendelkezésre állás hiánya az alkalmazás szolgáltatásiszint-szerződésének (SLA) feltételei szerint elfogadhatatlan lehet. A rendelkezésre állás biztosítása érdekében helyezze üzembe az alkalmazást és szolgáltatásait a felhő több régiójában.
Ez az oktatóanyag egy magas rendelkezésre állású többrégiós webalkalmazás üzembe helyezését ismerteti. Az eljárás egy webalkalmazásból és Azure Front Door álló egyszerű forgatókönyvet valósít meg. Az egyéb infrastruktúra-minták támogatásához bővítheti a fogalmakat. Ha például az alkalmazás egy Azure adatbázis-ajánlathoz vagy tárfiókhoz csatlakozik, tekintse meg Az SQL-adatbázisok georeplikációjának aktiválása és Azure Storage redundancia című témakört. Részletesebb forgatókönyvre vonatkozó referenciaarchitektúra megtekintéséhez lásd a megbízható webalkalmazás-mintát a .NET esetében.
Ebben az útmutatóban Ön:
- Azonos App Service-alkalmazások létrehozása külön régiókban
- Azure Front Door létrehozása hozzáférési korlátozásokkal az App Service-hez való nyilvános hozzáférés letiltásához
Előfeltételek
Ha nincs Azure fiókja, a kezdés előtt hozzon létre egy felszabadító fiókot.
Az oktatóanyag elvégzéséhez:
Használja a Bash-környezetet a Azure Cloud Shell. További információért tekintse meg az Azure Cloud Shell használatának megkezdését.
Ha helyileg szeretné futtatni a CLI-referenciaparancsokat, telepítse az Azure CLI-t. Ha Windows vagy macOS rendszeren fut, érdemes lehet Azure CLI egy Docker-tárolóban futtatni. További információ: A Azure CLI futtatása Docker-tárolóban.
Ha helyi telepítést használ, jelentkezzen be az Azure CLI-be a az login paranccsal. A hitelesítési folyamat befejezéséhez kövesse a terminálon megjelenő lépéseket. További bejelentkezési lehetőségekért lásd: Az Azure CLI használatával hitelesítés az Azure-hoz.
Amikor a rendszer kéri, először telepítse a Azure CLI bővítményt. További információ a bővítményekről: Bővítmények használata és kezelése az Azure CLI.
Futtassa az az version parancsot a telepített verzió és a függő kódtárak megkereséséhez. A legújabb verzióra az az upgrade paranccsal frissíthet.
A forgatókönyv architektúrájának áttekintése
Az alábbi architektúradiagram az oktatóanyagban létrehozott infrastruktúrát mutatja be. Két azonos App Service-alkalmazásból áll, külön régiókban. Az első webalkalmazás az aktív régióban található. Ez az elsődleges alkalmazás felelős a bejövő forgalom feldolgozásáért. A második alkalmazás a készenléti régióban van, és az elsődleges alkalmazás rendelkezésre állására vár. Azure Front Door megpróbálja átirányítani a forgalmat az elsődleges webalkalmazásba. Ha az elsődleges régió nem érhető el, a forgalom a készenléti webes régióra irányul. A diagramon a pontozott vonal a forgalom útválasztását jelöli a régió állapota alapján. A hozzáférési korlátozások úgy vannak konfigurálva, hogy blokkolják az alkalmazásokhoz való közvetlen hozzáférést az internetről.
Azure különböző lehetőségeket biztosít a terheléselosztáshoz és a forgalom útválasztásához. Azure Front Door azért van kiválasztva ehhez az oktatóanyaghoz, mert több régióban üzembe helyezett Azure App Service üzemeltetett internetes webalkalmazásokat tartalmaz. Ha a konfiguráció eltér az oktatóanyagban szereplő példától, olvassa el a helyzet terheléselosztási megoldásának kiválasztása című témakört.
Az oktatóanyagban szereplő forgatókönyv a következő viselkedést mutatja be:
- Az azonos App Service-alkalmazások két külön régióban vannak üzembe helyezve.
- A közvetlenül a webalkalmazásokba küldött nyilvános forgalom le van tiltva.
- Azure Front Door a forgalmat az elsődleges régió aktív alkalmazásához irányítja.
- A másodlagos régióban található készenléti alkalmazás szükség szerint a forgalom kiszolgálására használható.
Erőforráscsoport létrehozása
Ehhez az oktatóanyaghoz két webalkalmazás-példányra van szükség, amelyek különböző Azure régiókban futnak.
Tekintse át az elérhető régiópárokat, és válasszon ki két párosított régiót a webalkalmazásokhoz.
Ebben az oktatóanyagban a két régió neve
<primary-region>(eastus) és<standby-region>(westus).Hozzon létre egy erőforráscsoportot az oktatóanyagban konfigurált összes erőforráshoz. Ez az oktatóanyag létrehozza az erőforráscsoportot a
<primary-region>helyen.az group create --name <resource-group> --location <primary-region>Cserélje le a következő
<placeholder>paraméterértékeket a saját erőforrásai adataira:Paraméter Érték Leírás Example --name<resource-group>Az oktatóanyagban létrehozott erőforrásokat tartalmazó erőforráscsoport. zava-resource-group--location<primary-region>Az erőforráscsoport régióhelye. Ez az oktatóanyag ugyanazt a régióhelyet használja az erőforráscsoporthoz és az elsődleges webalkalmazáshoz. eastusEgy tényleges implementációban használjon külön erőforráscsoportokat minden régióhoz/erőforráshoz. Az elkülönítés lehetővé teszi az erőforrások elkülönítését vészhelyreállítási helyzetben.
További információért lásd a az group create parancs referenciát.
Két App Service-csomag létrehozása
Hozzon létre két App Service-csomagot, egyet minden webalkalmazáshoz. Hozza létre az egyes terveket abban a régióban, ahol a megfelelő alkalmazást kívánja létrehozni.
Ehhez a parancshoz a korábban kiválasztott régiópárt kell használnia. Használja az aktív régiót az elsődleges webalkalmazáshoz és a passzív régiót a készenléti webalkalmazáshoz.
Futtassa a következő parancsot az App Service-csomag létrehozásához az elsődleges webalkalmazáshoz, majd futtassa újra a parancsot a készenléti alkalmazás tervének létrehozásához.
az appservice plan create --name <app-service-plan> --resource-group <resource-group> --is-linux --location `<region>`
Cserélje le a következő <placeholder> paraméterértékeket a saját erőforrásai adataira:
| Paraméter | Érték | Leírás | Example |
|---|---|---|---|
--name |
<app-service-plan> |
A webalkalmazás App Service-csomagjának neve. Minden csomagpéldánynak egyedi névvel kell rendelkeznie. | zava-primary-planzava-standby-plan |
--resource-group |
<resource-group> |
Az oktatóanyagban létrehozott erőforrásokat tartalmazó erőforráscsoport. | zava-resource-group |
--location |
<region> |
A webalkalmazás régióhelye. | - Elsődleges webalkalmazás, aktív régió eastus - Készenléti webalkalmazás, passzív régió westus |
További információért lásd az az appservice plan create parancsreferenciát.
Két alkalmazás létrehozása
Hozzon létre két App Service-webalkalmazást. Helyezze az egyes alkalmazásokat egy megfelelő App Service-csomagba és régióhelyre.
--runtimeA webalkalmazások nyelvi verziójának azonosítása.Az elérhető futtatókörnyezetek listájához a következő parancsot futtathatja:
az webapp list-runtimesHa az oktatóanyagban ismertetett minta Node.js alkalmazást tervezi használni, állítsa a
<language-version>értéket a következőre:NODE:24-lts.Hozzon létre két webalkalmazást. Futtassa a következő parancsot az elsődleges webalkalmazás létrehozásához, majd futtassa újra a parancsot a készenléti alkalmazás létrehozásához.
az webapp create --name <web-app-name> --resource-group <resource-group> --plan <app-service-plan> --runtime <language-version>Cserélje le a következő
<placeholder>paraméterértékeket a saját erőforrásai adataira:Paraméter Érték Leírás Example --name<web-app-name>A webalkalmazás neve. Minden alkalmazásnak globálisan egyedi névvel kell rendelkeznie. Az érvényes karakterek a következők a-z: ,0-9és-.zava-primary-appzava-standby-app--resource-group<resource-group>Az oktatóanyagban létrehozott erőforrásokat tartalmazó erőforráscsoport. zava-resource-group--name<app-service-plan>A webalkalmazás App Service-csomagjának neve. zava-primary-planzava-standby-plan--runtime<language-version>A webalkalmazás futtatókörnyezeti nyelvi verziója. NODE:24-ltsTovábbi információért tekintse meg a webapp create parancsreferenciát.
Azonosítsa az
defaultHostNameegyes webalkalmazások értékét. A gazdagépnév formátuma<web-app-name>.azurewebsites.net.Vizsgálja meg az egyes webalkalmazások parancskimenetét, és keresse meg az értéket, vagy futtassa az alábbi parancsot az egyes webalkalmazásokhoz:
az webapp show --name <web-app-name> --resource-group <resource-group> --query "hostNames"Cserélje le a következő
<placeholder>paraméterértékeket a saját erőforrásai adataira:Paraméter Érték Leírás Example --name<web-app-name>A webalkalmazás neve. zava-primary-appzava-standby-app--resource-group<resource-group>Az oktatóanyagban létrehozott erőforrásokat tartalmazó erőforráscsoport. zava-resource-groupA Azure portálon az egyes alkalmazások gazdaneve megjelenik a webalkalmazás Overview lapon.
Jegyezze fel későbbre a gazdagépnév értékeit. A hostnevek segítségével határozza meg az Azure Front Door szolgáltatáshoz tartozó háttércímeket.
Ellenőrizze, hogy hozzáfér-e az új webalkalmazásokhoz.
A böngészőben adja meg az elsődleges webalkalmazás állomásnevét, például
zava-primary-app.azurewebsites.net.Ha a kapcsolat sikeres, a következő üzenet jelenik meg:
Ismételje meg a tesztet a készenléti webalkalmazás gazdagépnevével.
Azure Front Door konfigurálása
Többrégiós kiépítés esetén aktív-aktív vagy aktív-passzív konfiguráció használható. Az elsődleges régió aktív, a készenléti régió pedig passzív.
- Az aktív-aktív konfigurációk több aktív régióban osztják el a kéréseket.
- Az aktív-passzív konfiguráció folyamatosan futtat példányokat a készenléti (passzív) régióban, de csak akkor irányít oda forgalmat, ha az elsődleges (aktív) régió meghibásodik.
Azure Front Door lehetővé teszi mindkét konfiguráció engedélyezését. A magas rendelkezésre állású és hibatűrésű alkalmazások tervezésével kapcsolatos további információkért tekintse meg a megbízhatósági ellenőrzés ellenőrzőlistáját.
Profil létrehozása
Hozzon létre egy Azure Front Door Premium példányt a webalkalmazások felé irányuló forgalom irányításához.
Tekintse át a Azure Front Door szint összehasonlítását és válassza ki az üzembe helyezéshez szükséges szintet.
Ez az oktatóanyag Azure Front Door Premiumot (
Premium_AzureFrontDoor) használ.Ha inkább a Azure Front Door Standardot szeretné üzembe helyezni, vegye figyelembe, hogy a Standard szint nem támogatja a felügyelt szabályok WAF-szabályzattal való üzembe helyezését.
Futtassa a következő parancsot a profil létrehozásához:
az afd profile create --profile-name <front-door-profile> --resource-group <resource-group> --sku <front-door-tier>Cserélje le a következő
<placeholder>paraméterértékeket a saját erőforrásai adataira:Paraméter Érték Leírás Example --profile-name<front-door-profile>Az Azure Front Door profil neve. A névnek egyedinek kell lennie az erőforráscsoporton belül. zava-profile--resource-group<resource-group>Az oktatóanyagban létrehozott erőforrásokat tartalmazó erőforráscsoport. zava-resource-group--sku<front-door-tier>Az üzembe helyezéshez szükséges Azure Front Door réteg SKU-ja. Premium_AzureFrontDoor(ajánlott)
Standard_AzureFrontDoorTovábbi információért olvassa el az az afd profile create parancshivatkozást.
Végpont hozzáadása
Hozzon létre egy végpontot a profiljában. Az első végpont létrehozása után több végpontot is létrehozhat a profiljában.
az afd endpoint create --resource-group <resource-group> --endpoint-name <front-door-endpoint> --profile-name <front-door-profile> --enabled-state Enabled
Cserélje le a következő <placeholder> paraméterértékeket a saját erőforrásai adataira:
| Paraméter | Érték | Leírás | Example |
|---|---|---|---|
--resource-group |
<resource-group> |
Az oktatóanyagban létrehozott erőforrásokat tartalmazó erőforráscsoport. | zava-resource-group |
--endpoint-name |
<front-door-endpoint> |
A végpont neve a Azure Front Door profil alatt. A névnek globálisan egyedinek kell lennie. | zava-endpoint |
--profile-name |
<front-door-profile> |
Az Azure Front Door profil neve. | zava-profile |
További információért lásd az az afd endpoint create parancsreferenciát.
Forráscsoport létrehozása
Amikor üzembe helyezi a Azure Front Door, szüksége lesz egy forrásra, amely a webalkalmazás háttérrendszerének végpontjaként szolgál. További információ: Források és forráscsoportok az Azure Front Doorban. A forrásokat egy forráscsoport tárolja.
Hozzon létre egy forráscsoportot a Azure Front Door-profiljában, amely a két webalkalmazás forrását tartalmazza.
az afd origin-group create --resource-group <resource-group> --origin-group-name <front-door-origin-group> --profile-name <front-door-profile> \
--probe-request-type <probe-request> \
--probe-protocol <probe-protocol> \
--probe-interval-in-seconds <probe-interval> \
--probe-path <probe-path> \
--sample-size <sample-size> \
--successful-samples-required <required-samples> \
--additional-latency-in-milliseconds <extra-latency>
Cserélje le a következő <placeholder> paraméterértékeket a saját erőforrásai adataira:
| Paraméter | Érték | Leírás | Example |
|---|---|---|---|
--resource-group |
<resource-group> |
Az oktatóanyagban létrehozott erőforrásokat tartalmazó erőforráscsoport. | zava-resource-group |
--origin-group-name |
<front-door-origin-group> |
A Azure Front Door forráscsoport neve. A névnek globálisan egyedinek kell lennie. | zava-origin-group |
--profile-name |
<front-door-profile> |
Az Azure Front Door profil neve. | zava-profile |
--probe-request-type |
<probe-request> |
Az állapotadat-mintavételi kérelem típusa. | GET |
--probe-protocol |
<probe-protocol> |
Az állapotadat-mintavételhez használandó protokoll. | Http |
--probe-interval-in-seconds |
<probe-interval> |
Az állapotvizsgálatok közötti másodpercek száma. | 60 |
--probe-path |
<probe-path> |
A forráshoz viszonyított elérési út, amely a forrás állapotának meghatározására szolgál. |
/ (fordított perjel) |
--sample-size |
<sample-size> |
A terheléselosztási döntésekhez megfontolandó minták száma. | 4 |
--successful-samples-required |
<required-samples> |
A mintavételi időszakon belüli minták száma, amelyeknek sikeresnek kell lenniük. | 3 |
--additional-latency-in-milliseconds |
<extra-latency> |
Az extra késleltetés milliszekundumban, amely szükséges ahhoz, hogy a próbák a legalacsonyabb késleltetési tartományba kerüljenek. | 50 |
További információért lásd az az afd origin-group create parancs hivatkozást.
Forrás hozzáadása a forráscsoporthoz
Adjon hozzá egy forrást az egyes webalkalmazásokhoz a Azure Front Door forráscsoporthoz.
Adjon hozzá forrást az elsődleges webalkalmazáshoz. Állítsa a
--priorityparamétert1értékre, amely tájékoztatja Azure Front Door, hogy ez az alkalmazás a forgalom elsődleges fogadója.az afd origin create --resource-group <resource-group> --host-name <web-app-name>.azurewebsites.net --profile-name <front-door-profile> \ --origin-group-name <front-door-origin-group> \ --origin-name <web-app-origin-name> \ --origin-host-header <web-app-name>.azurewebsites.net \ --priority <origin-priority> --weight <origin-weight> --enabled-state <origin-state> \ --http-port <origin-port> --https-port <origin-secure-port>Cserélje le a következő
<placeholder>paraméterértékeket a saját erőforrásai adataira:Paraméter Érték Leírás Example --resource-group<resource-group>Az oktatóanyagban létrehozott erőforrásokat tartalmazó erőforráscsoport. zava-resource-group--host-name<web-app-name>.azurewebsites.netAz elsődleges webalkalmazás állomásneve. A gazdagép neve egyesíti a webalkalmazás nevét, például zava-primary-appa gazdagép azonosítójátazurewebsites.net.zava-primary-app.azurewebsites.net--profile-name<front-door-profile>Az Azure Front Door profil neve. zava-profile--origin-group-name<front-door-origin-group>A Azure Front Door forráscsoport neve. zava-origin-group--origin-name<web-app-origin-name>Az elsődleges webalkalmazás forrásának neve. A névnek egyedinek kell lennie a forráscsoporton belül. primary-origin--origin-host-header<web-app-name>.azurewebsites.netA gazdafejléc, amelyet a kérésekhez küldünk az elsődleges webalkalmazás eredetére. Ha nem ad meg értéket, a kérelem állomásneve határozza meg ezt az értéket. Azure CDN forrásokhoz, például Webalkalmazásokhoz, Blob Storage-hoz és Felhőszolgáltatásokhoz, ez a host header értéknek alapértelmezés szerint meg kell egyeznie az eredet hostnevével. zava-primary-app.azurewebsites.net--priority<origin-priority>A forráscsoporton belüli forrás prioritása. Az elsődleges webalkalmazás esetében állítsa a prioritást 1 értékre. Azure Front Door a prioritási értékeket használja a forrás és az aktív régiók közötti terheléselosztáshoz. Az értéknek 1 és 5 között kell lennie. 1 --weight<origin-weight>A forráscsoporton belüli forrás súlya terheléselosztáshoz. Az értéknek 1 és 1000 közöttinek kell lennie. 1000 --enabled-state<origin-state>Adja meg, hogy engedélyezi-e ennek a forrásnak a forgalom fogadását. Enabled--http-port<origin-port>A forrásra irányuló HTTP-kérelmekhez használt port. 80 --https-port<origin-secure-port>A forrásra irányuló biztonságos HTTPS-kérelmekhez használt port. 443 További információért lásd a az afd origin create parancs referencia.
Futtassa újra a parancsot, és adjon hozzá egy forrást a készenléti webalkalmazáshoz. A parancs ugyanazokat a paramétereket használja, de a következő egyedi paraméterértékekkel:
Paraméter Érték Leírás Example --host-name<web-app-name>.azurewebsites.netA készenléti webalkalmazás állomásneve. zava-standby-app.azurewebsites.net--origin-name<web-app-origin-name>A készenléti webalkalmazás forrásának neve. standby-origin--origin-host-header<web-app-name>.azurewebsites.netA készenléti webalkalmazás forrásának küldött kérések állomásfejléce. zava-standby-app.azurewebsites.net--priority<origin-priority>A forráscsoporton belüli forrás prioritása. A készenléti webalkalmazás esetében állítsa a prioritást 2 értékre. Azure Front Door megpróbálja az összes forgalmat az elsődleges forrásra irányítani. Ha az elsődleges forrás nem érhető el, a forgalom a készenléti forrás felé halad. 2
Útvonalszabály hozzáadása
Adjon hozzá egy útválasztási szabályt, amely megfelelteti a Azure Front Door végpontot a forráscsoportnak. Az útvonal a végponttól a forráscsoporthoz továbbítja a kérelmeket.
Hozzon létre egy útvonalszabályt, amely megfelelteti a Azure Front Door végpontot a forráscsoportnak:
az afd route create --resource-group <resource-group> --profile-name <front-door-profile> --endpoint-name <front-door-endpoint> ` --forwarding-protocol <protocol-type> --route-name <route-rule-name> --https-redirect <secure-redirect> ` --origin-group <front-door-origin-group> --supported-protocols <protocol-list> --link-to-default-domain <domain-link>Cserélje le a következő
<placeholder>paraméterértékeket a saját erőforrásai adataira:Paraméter Érték Leírás Example --resource-group<resource-group>Az oktatóanyagban létrehozott erőforrásokat tartalmazó erőforráscsoport. zava-resource-group--profile-name<front-door-profile>Az Azure Front Door profil neve. zava-profile--endpoint-name<front-door-endpoint>A végpont neve a Azure Front Door profil alatt. zava-endpoint--forwarding-protocol<protocol-type>Az útvonalszabály által a háttéralkalmazásokba továbbított forgalom protokollja. MatchRequest--route-name<route-rule-name>Az útvonalszabály neve. A Azure Front Door profilban egyedinek kell lennie. zava-route-rule--https-redirect<secure-redirect>Azt jelzi, hogy a HTTP-forgalom automatikusan HTTPS-forgalomra legyen-e átirányítva. Enabled--origin-group-name<front-door-origin-group>A Azure Front Door forráscsoport neve. zava-origin-group--supported-protocols<protocol-list>Az útvonalszabály támogatott protokolljainak listája. Használjon szóközt a protokolltípusok elkülönítéséhez. Http Https--link-to-default-domain<domain-link>Jelzi, hogy ez az útvonal az alapértelmezett végponttartományhoz van-e csatolva. EnabledTovábbi információért tekintse meg az az afd route create parancshivatkozást.
Az üzembe helyezés befejezése körülbelül 15 percet vehet igénybe. A módosítások globális propagálása eltarthat egy ideig.
Csak Azure Front Door keresztüli hozzáférés korlátozása
A webalkalmazásokat jelenleg közvetlenül is elérheti, ha beírja a gazdanevüket egy böngészőbe. Ha hozzáférési korlátozásokat állít be az alkalmazásokra, biztosíthatja, hogy a forgalom csak a Azure Front Door keresztül érje el az alkalmazásokat.
Azure Front Door funkciók akkor működnek a legjobban, ha a forgalom csak a szolgáltatáson keresztül halad át. Ajánlott úgy konfigurálni a webalkalmazások eredetét, hogy letiltsa a nem Azure Front Door keresztül küldött forgalmat. Ellenkező esetben a forgalom megkerülheti a Azure Front Door webalkalmazás tűzfalát, a DDoS-védelmet és más biztonsági funkciókat.
A Azure Front Door az alkalmazások felé érkező forgalom a AzureFrontDoor.Backend szolgáltatáscímkében meghatározott, jól ismert IP-tartományokból származik. Szolgáltatáscímke-korlátozási szabály használatával forgalom csak Azure Front Door származhat.
Kérje le a Azure Front Door-profil azonosítóját.
A profilazonosítóra azért van szüksége, hogy a forgalom csak az adott Azure Front Door-példányból származhasson. A hozzáférési korlátozás tovább szűri a bejövő kéréseket a Azure Front Door profilból küldött egyedi HTTP-fejléc alapján.
az afd profile show --resource-group <resource-group> --profile-name <front-door-profile> --query "frontDoorId"Cserélje le a következő
<placeholder>paraméterértékeket a saját erőforrásai adataira:Paraméter Érték Leírás Example --resource-group<resource-group>Az oktatóanyagban létrehozott erőforrásokat tartalmazó erőforráscsoport. zava-resource-group--profile-name<front-door-profile>Az Azure Front Door profil neve. zava-profileA parancs kimenete megjeleníti a profilazonosítót (32 jegyű alfanumerikus érték):
"0000aaaa-1b1b-2c2c-3d3d-444444eeeeee"A következő lépésben a
<profile-identifier>értékhez használja a profil azonosítóját.Futtassa a következő parancsot az elsődleges webalkalmazás hozzáférési korlátozásainak beállításához, majd futtassa újra a parancsot a készenléti alkalmazásra vonatkozó korlátozások beállításához.
az webapp config access-restriction add --resource-group <resource-group> --name <web-app-name> ` --priority <access-priority> --service-tag <tag-name> --http-header x-azure-fdid=<front-door-id>Cserélje le a következő
<placeholder>paraméterértékeket a saját erőforrásai adataira:Paraméter Érték Leírás Example --resource-group<resource-group>Az oktatóanyagban létrehozott erőforrásokat tartalmazó erőforráscsoport. zava-resource-group--name<web-app-name>Annak a webalkalmazásnak a neve, amelyhez hozzáférési korlátozásokat állít be. zava-primary-appzava-standby-app--priority<access-priority>Adja meg a hozzáférés-korlátozási szabály prioritását a profilhoz definiált összes szabály esetében. Az alacsonyabb érték magasabb prioritással egyenlő. 100 --service-tag<tag-name>A Azure Front Door által felismert szolgáltatáscímkenév. A hozzáférési korlátozások a szolgáltatáscímke által jelzett IP-tartományra vonatkoznak. AzureFrontDoor.Backend--http-headerx-azure-fdid=<profile-identifier>Adjon meg egy vagy több egyedi HTTP-fejlécet a bejövő forgalom további szűréséhez. A hozzáférési korlátozások a bejövő kéréseket a Azure Front Door profilból küldött egyedi HTTP-fejléc alapján szűrik. A fejléc egyesíti a Azure Front Door előtagot és a Azure Front Door-példány profilazonosítóját. x-azure-fdid=0000aaaa-1b1b-2c2c-3d3d-444444eeeeeeAz az webapp config access-restriction add parancs hivatkozását lásd a további információkért.
Hozzáférési korlátozások tesztelése
Győződjön meg arról, hogy a hozzáférési korlátozások megakadályozzák az alkalmazásokhoz való közvetlen hozzáférést.
A böngészőben adja meg az elsődleges webalkalmazás állomásnevét, például
zava-primary-app.azurewebsites.net.A kapcsolatnak a következő üzenettel kell meghiúsulnia:
Ismételje meg a tesztet a készenléti webalkalmazás gazdagépnevével, például
zava-standby-app.azurewebsites.net.
Azure Front Door üzembe helyezésének tesztelése
A Azure Front Door Standard vagy Prémium profil létrehozása eltarthat egy ideig, amíg a konfiguráció globálisan üzembe helyezhető. Az üzembe helyezés befejezése után hozzáférhet a frontend gazdagéphez.
Kérje le a Azure Front Door végpont gazdagépnevét:
az afd endpoint show --resource-group <resource-group> --profile-name <front-door-profile> --endpoint-name <front-door-endpoint> --query "hostName"Cserélje le a következő
<placeholder>paraméterértékeket a saját erőforrásai adataira:Paraméter Érték Leírás Example --resource-group<resource-group>Az oktatóanyagban létrehozott erőforrásokat tartalmazó erőforráscsoport. zava-resource-group--profile-name<front-door-profile>Az Azure Front Door profil neve. zava-profile--endpoint-name<front-door-endpoint>A végpont neve a Azure Front Door profil alatt. zava-endpointA parancs kimenete a végpont állomásnevét jeleníti meg:
"zava-endpoint-0a1b2c3d4e5f6g78.z00.azurefd.net"A gazdagépnév a végpont nevéből, egy egyedi alfanumerikus kivonatból, egy azonosítóból és az Azure Front Door utótagból áll. A következő lépésben a végpont gazdagépnevét fogod használni.
További információért lásd az az afd endpoint show parancs hivatkozást.
Egy böngészőben adja meg a végpont állomásnevét, például
zava-endpoint-0a1b2c3d4e5f6g78.z00.azurefd.net.A kérésnek automatikusan az aktív régióban lévő elsődleges alkalmazáshoz kell irányítania.
Ha a kapcsolat sikeres, a következő üzenet jelenik meg:
Tesztelje a párosított régiókban lévő alkalmazások közötti azonnali globális feladatátvételt.
Egy böngészőben adja meg a végpont állomásnevét, például
zava-endpoint-0a1b2c3d4e5f6g78.z00.azurefd.net.Állítsa le az elsődleges alkalmazást az az webapp stop parancs futtatásával.
Cserélje le a következő
<placeholder>paraméterértékeket a saját erőforrásai adataira:az webapp stop --name <primary-web-app> --resource-group <resource-group>Frissítse a böngészőjét.
Ha a forgalom helyesen átirányítódik a készenléti alkalmazás felé a másik régióban, akkor ugyanazt az oldalt és üzenetet kell látnia.
Tipp.
Előfordulhat, hogy a feladatátvétel befejezéséhez néhány alkalommal frissítenie kell a lapot.
Az Azure Front Door átirányít-e a készenléti alkalmazásra, ellenőrizheti, ha megvizsgálja az Azure portálon található webalkalmazások állapotát. Az elsődleges webalkalmazás Áttekintés lapján a Start lehetőségnek elérhetőnek kell lennie (nem szürkén). A készenléti webalkalmazás Áttekintés lapján a Start beállítás nem lehet elérhető (szürkén).
Futtassa újra a
az webapp stopparancsot, és állítsa le a készenléti alkalmazást.Cserélje le a következő
<placeholder>paraméterértékeket a saját erőforrásai adataira:az webapp stop --name <standby-web-app> --resource-group <resource-group>Frissítse újra a böngészőt.
Ha a készenléti alkalmazás is leáll, az összes forgalomirányításnak le kell állnia. Ezúttal egy hibaüzenetnek kell megjelennie:
Futtassa a
az webapp startparancsot, és indítsa újra a készenléti alkalmazást.Cserélje le a következő
<placeholder>paraméterértékeket a saját erőforrásai adataira:az webapp start --name <standby-web-app> --resource-group <resource-group>Frissítse a böngészőt, és sikeres alkalmazáskapcsolatot kell látnia.
Az ellenőrzés megerősíti, hogy mostantól az Azure Front Door-on keresztül érheti el az alkalmazásait, és a feladatátvételi funkciók a kívánt módon működnek.
Ha befejezte a feladatátvételi tesztelést, indítsa újra az elsődleges alkalmazást.
Az erőforrások tisztítása
Az előző lépésekben Azure erőforrásokat hozott létre egy erőforráscsoportban. Ha a jövőben nem lesz szüksége ezekre az erőforrásokra, törölje az erőforráscsoportot az alábbi parancs futtatásával a Cloud Shell.
Cserélje le a <placeholder> paraméter értékét a saját erőforrás adataira:
az group delete --name <resource-group>
A parancs futtatása eltarthat néhány percig.
Üzembe helyezés ARM segítségével vagy Bicep
Az oktatóanyagban létrehozott erőforrások Azure Resource Manager sablon (ARM-sablon) vagy Bicep sablon használatával telepíthetők. A magas rendelkezésre állású, többrégiós webalkalmazás Bicep fájl a GitHubon. Ez a sablon segít biztonságos, magas rendelkezésre állású, többrégiós, végpontok közötti megoldás létrehozásában két különböző régióban található webalkalmazással Azure Front Door mögött.
Az ARM- és Bicep-sablonok üzembe helyezéséről a A Bicep fájlok üzembe helyezése a Azure CLI című témakörben olvashat.
Gyakori kérdések
Ebben az oktatóanyagban üzembe helyezett egy alapinfrastruktúrát egy többrégiós webalkalmazás engedélyezéséhez. Az App Service olyan funkciókat biztosít, amelyekkel biztosítható, hogy olyan alkalmazásokat futtasson, amelyek a biztonsági ajánlott eljárásokat és javaslatokat követik.
Ez a szakasz válaszokat tartalmaz a gyakori kérdésekre, amelyek segíthetnek az alkalmazások további védelmében, valamint az erőforrások ajánlott eljárások szerinti üzembe helyezésében és kezelésében.
Infrastruktúra és Azure erőforrások kezelése és üzembe helyezése
Ebben az oktatóanyagban a Azure CLI használta az infrastruktúra-erőforrások üzembe helyezéséhez. Fontolja meg egy folyamatos üzembehelyezési mechanizmus konfigurálását az alkalmazásinfrastruktúra kezeléséhez. Mivel különböző régiókban helyezi üzembe az erőforrásokat, ezeket az erőforrásokat egymástól függetlenül kell kezelnie a régiók között. Annak érdekében, hogy az erőforrások minden régióban azonosak legyenek, az infrastruktúra kódként (IaC), például egy ARM-sablon vagy Terraform olyan üzembehelyezési folyamatokkal kell használni, mint a Azure Pipelines vagy GitHub Actions. Ha megfelelően állítja be ezt a konfigurációt, az erőforrások módosítása minden üzembe helyezési régióban frissítéseket vált ki. További információért lásd: Folyamatos üzembe helyezés konfigurálása az Azure App Service-hez.
Átmeneti tárolóhelyek használata az éles környezetben való biztonságos üzembe helyezéshez
Az alkalmazáskód közvetlen üzembe helyezése éles alkalmazásokban és slotokon nem ajánlott. Fontos, hogy legyen egy biztonságos hely az alkalmazások tesztelésére és a módosítások ellenőrzésére, mielőtt azokat éles környezetbe küldenénk. Az előkészítési pontok és a pontcserék kombinációjával kódot helyezhet át a tesztelési környezetből az éles környezetbe.
Ebben az oktatóanyagban létrehozta az előkészítési pontok használatát támogató alapinfrastruktúrát. A webalkalmazás minden példányához létrehozhat üzembehelyezési helyeket, és konfigurálhatja a folyamatos üzembe helyezést ezekre az átmeneti pontokra GitHub Actions. Az infrastruktúra-kezeléshez hasonlóan a folyamatos üzembe helyezés konfigurálása az alkalmazás forráskódjához is ajánlott annak biztosítása érdekében, hogy a régiók közötti változások szinkronban maradjanak. Ha nem konfigurálja a folyamatos üzembe helyezést, minden egyes régióban manuálisan kell frissítenie az egyes alkalmazásokat, amikor kódmódosítás történik.
Az előkészítési pontok használatához kövesse az alábbi eljárást:
Ehhez az eljáráshoz olyan alkalmazásra van szüksége, amely készen áll az App Service-alkalmazásban való üzembe helyezésre.
Ha elvégezte az oktatóanyagot, használhatja az elsődleges webalkalmazást és a készenléti webalkalmazást. Azonban olyan App Service-csomagra van szüksége, amely támogatja a megfelelő üzembehelyezési pontokat. További információ: Azure előfizetési és szolgáltatási korlátok, kvóták és korlátozások.
Ha nem rendelkezik alkalmazással, a Node.js Hello World mintaalkalmazással kezdhet. Ágazzon el a GitHub-tárhelyről annak érdekében, hogy saját másolattal rendelkezzen, amelyben módosításokat végezhet.
Konfigurálja a webalkalmazások App Service-verembeállításait.
A verembeállítások az alkalmazáshoz használt nyelvi verzióra vagy futtatókörnyezetre vonatkoznak.
Konfigurálhatja a beállításokat a Azure portálon, vagy használhatja a
az webapp config setparancsot. Ha a Node.js mintát használja, állítsa a verem beállításait a következőreNode 24 LTS: .A Azure portálon nyissa meg a primary webalkalmazást.
A bal oldali menüben válassza a Beállítások konfigurációja lehetőséget>.
A Verem beállításai lapon konfigurálja a következő beállításokat:
Válassza ki a Stack értéket, például a Csomópontot.
Válassza ki a Verzió értéket, például a Node 24 LTS-t.
Kattintson az Alkalmaz elemre.
Ismételje meg a folyamatot a készenléti webalkalmazás App Service-verembeállításainak konfigurálásához.
Állítsa be a folyamatos üzembe helyezést a Azure portálon. A folyamatos üzembe helyezés olyan szolgáltatókkal történő konfigurálásáról, mint például a GitHub Actions, részletes útmutatást találhat a Folyamatos üzembe helyezés konfigurálása az Azure App Service-be címen.
Futtassa a következő parancsot az
stagewebalkalmazáshoz elnevezett átmeneti pont létrehozásához.az webapp deployment slot create --resource-group <resource-group> --name <web-app-name> --slot stage --configuration-source <web-app-name>Futtassa újra a
az webapp deployment slot createparancsot, és hozzon létre egy átmeneti pontot astagewebalkalmazáshoz.Konfigurálja a folyamatos üzembe helyezést a GitHub Actions-szal az egyes tesztelési fázisokhoz:
A Azure portálon nyissa meg a primary webalkalmazást.
A bal oldali menüben válassza az Üzembe helyezés>, majd az Üzembehelyezési pontok lehetőséget.
Keresse meg a fázishelyet a listában, és válassza ki a helyet a részletek paneljének megnyitásához.
A bal oldali menüben válassza az Üzembehelyezési>központ lehetőséget.
A Beállítások lapon állítsa a Forrás beállítást GitHub értékre.
Ha első alkalommal telepíti az GitHub-t, válassza a Authorize lehetőséget, és kövesse az engedélyezési utasításokat. Ha egy másik felhasználó adattárából szeretne telepíteni, válassza a Fiók megváltoztatása lehetőséget.
Miután engedélyezte Azure-fiókját a GitHubhoz, válassza ki a Organization, Repository és a Branch lehetőséget a CI/CD konfigurálásához. Ha nem talál szervezetet vagy adattárat, lehetséges, hogy további engedélyeket kell engedélyeznie a GitHub. További információ: A szervezet adattáraihoz való felhasználói hozzáférés kezelése.
Ha a Node.js mintaalkalmazást használja, használja az alábbi beállításokat.
Beállítás Érték Organizáció <your-GitHub-organization>Adattár Node.js dokumentáció - Hello World Fiók fő Válassza a Mentés lehetőséget.
A kijelölt adattárban és ágban lévő új véglegesítések mostantól folyamatosan kerülnek üzembe helyezésre az App Service alkalmazásrésen. A véglegesítéseket és az üzembe helyezéseket a Naplók lapon követheti nyomon.
A rendszer hozzáad egy alapértelmezett munkafolyamat-fájlt a GitHub adattárhoz, amely egy közzétételi profilt használ az App Service-hitelesítéshez. Ezt a fájlt a <repo-name>/.github/workflows/ könyvtárban tekintheti meg.
Alapszintű hitelesítés letiltása az App Service-ben
Az FTP- és SCM-végpontokhoz való hozzáférést az Microsoft Entra ID által támogatott felhasználók számára korlátozhatja az alapszintű hitelesítés használatával.
Ha az alkalmazás forráskódját folyamatos üzembehelyezési eszközzel telepíti, az alapszintű hitelesítés letiltásához további lépésekre van szükség a folyamatos üzembe helyezés konfigurálásához. Például nem használhat közzétételi profilt, mert nem használja Microsoft Entra hitelesítő adatait. Ehelyett szolgáltatásnevet vagy OpenID Connect-hitelesítő adatot kell használnia.
Az alábbi parancsok letiltják az alapszintű hitelesítést az App Service elsődleges webalkalmazásához és átmeneti pontjához, valamint a készenléti webalkalmazáshoz és az előkészítési ponthoz. Cserélje le a következő <placeholder> paraméterértékeket a saját erőforrásaira vonatkozó információkra.
Tiltsa le az FTP-hozzáférést az elsődleges webalkalmazás éles helyeihez és átmeneti pontjaihoz:
az resource update --resource-group <resource-group> --name ftp --namespace Microsoft.Web --resource-type basicPublishingCredentialsPolicies \ --parent sites/<web-app-name> --set properties.allow=false az resource update --resource-group <resource-group> --name ftp --namespace Microsoft.Web --resource-type basicPublishingCredentialsPolicies \ --parent sites/<web-app-name>/slots/stage --set properties.allow=falseFuttassa újra a parancsokat a készenléti webalkalmazáshoz.
Tiltsa le a WebDeploy-porthoz és az SCM-helyhez való alapvető hitelesítési hozzáférést az elsődleges webalkalmazás éles helyeihez és átmeneti pontjaihoz:
az resource update --resource-group <resource-group> --name scm --namespace Microsoft.Web --resource-type basicPublishingCredentialsPolicies \ --parent sites/<primary-web-app> --set properties.allow=false az resource update --resource-group <resource-group> --name scm --namespace Microsoft.Web --resource-type basicPublishingCredentialsPolicies \ --parent sites/<primary-web-app>/slots/stage --set properties.allow=falseFuttassa újra a parancsokat a készenléti webalkalmazáshoz.
További információért az alapszintű hitelesítés letiltásáról, beleértve a bejelentkezések tesztelésének és monitorozásának módját is, tekintse meg az Alapszintű hitelesítés letiltása az App Service-környezetekben című témakört.
Folyamatos üzembe helyezés használata, ha az alapszintű hitelesítés le van tiltva
Ha úgy dönt, hogy engedélyezi az alapszintű hitelesítést az App Service-alkalmazásokban, az App Service-ben elérhető üzembe helyezési módszerek bármelyikét használhatja. Használhatja például az előkészítési pontok szakaszban konfigurált közzétételi profilt.
Ha letiltja az App Service-alkalmazások alapszintű hitelesítését, a folyamatos üzembe helyezéshez szolgáltatásnévre vagy OpenID Connectre van szükség a hitelesítéshez. Ha a GitHub Actions-t használja kódtárként, tekintse meg a A GitHub Actions használatával történő telepítés az Azure App Service-be útmutatót. Az oktatóanyag részletes útmutatást nyújt egy szolgáltatásnév vagy az OpenID Connect létrehozásához az App Service-ben való üzembe helyezéshez GitHub Actions használatával. A folyamatot a következő szakaszban található eljárást követve is végrehajthatja.
Szolgáltatási identitás és hitelesítő adatok létrehozása a GitHub Actions segítségével
Folyamatos üzembe helyezés konfigurálása a GitHub Actions és egy szolgáltatási főazonosító segítségével:
Hozza létre az elsődleges webalkalmazás és a készenléti webalkalmazás szolgáltatásnevét :
Cserélje le a következő
<placeholder>paraméterértékeket a saját erőforrásaira vonatkozó információkra.az ad sp create-for-rbac --name <service-principal-name> --role contributor --scopes \ /subscriptions/<subscription-ID>/resourceGroups/<resource-group>/providers/Microsoft.Web/sites/<primary-web-app> \ /subscriptions/<subscription-ID>/resourceGroups/<resource-group>/providers/Microsoft.Web/sites/<standby-web-app>A kimenet egy JSON-objektum, amelynek szerepkör-hozzárendelési hitelesítő adatai hozzáférést biztosítanak az App Service-alkalmazásokhoz.
{ "clientId": "00001111-aaaa-2222-bbbb-3333cccc4444", "clientSecret": "ffffffff-5a5a-6b6b-7c7c-888888888888", "subscriptionId": "cccc2c2c-dd3d-ee4e-ff5f-aaaaaa6a6a6a", "tenantId": "aaaabbbb-6666-cccc-7777-dddd8888eeee", "activeDirectoryEndpointUrl": "https://login.microsoftonline.com", "resourceManagerEndpointUrl": "https://management.azure.com/", "activeDirectoryGraphResourceId": "https://graph.windows.net/", "sqlManagementEndpointUrl": "https://management.core.windows.net:8443/", "galleryEndpointUrl": "https://gallery.azure.com/", "managementEndpointUrl": "https://management.core.windows.net/" }A JSON tartalmazza az ügyfél titkos kódját, amely jelenleg csak látható.
Tipp.
Ajánlott minimális hozzáférést biztosítani. Ebben a példában a hatókör csak az alkalmazásokra korlátozódik, nem a teljes erőforráscsoportra.
Másolja ki a JSON-objektumot, hogy az ügyfél titkos kulcsának rekordja legyen.
Adja meg a szolgáltatásfelelősi objektum hitelesítő adatait az Azure bejelentkezés művelet részeként a GitHub Akció munkafolyamatában.
Az értékeket közvetlenül a munkafolyamatban adhatja meg, vagy GitHub a munkafolyamatban hivatkozott titkos kulcsként tárolhatja őket. Az értékek GitHub titkos kulcsként való mentése a biztonságosabb megoldás.
Nyissa meg az alkalmazás GitHub adattárát.
Lépjen a Beállítások>biztonsági>titkos kulcsok és változók>műveletek lapra.
Válassza az Új tárház titkos kód lehetőséget, és hozzon létre egy titkos kulcsot az alábbi beállítások mindegyikéhez. Használja a JSON-kimenet értékeit.
Beállítás Érték Example AZURE_APP_ID <application/client-id>00001111-aaaa-2222-bbbb-3333cccc4444AZURE_PASSWORD <client-secret>ffffffff-5a5a-6b6b-7c7c-888888888888AZURE_TENANT_ID <tenant-id>aaaabbbb-6666-cccc-7777-dddd8888eeeeAZURE_SUBSCRIPTION_ID <subscription-id>cccc2c2c-dd3d-ee4e-ff5f-aaaaaa6a6a6a
GitHub Actions munkafolyamat létrehozása
Miután rendelkezik egy szolgáltatási szerepkörrel, amely hozzáfér az App Service-alkalmazásokhoz, szerkessze az alkalmazásaik alapértelmezett munkafolyamatait. Ezek a munkafolyamatok automatikusan jönnek létre, amikor konfigurálja a folyamatos üzembe helyezést.
A hitelesítést a szolgáltatásnév használatával kell elvégezni a közzétételi profil helyett. A minta munkafolyamatokat a Szolgáltatásnév lapon találja A munkafolyamat fájljának hozzáadása a GitHub-adattárhoz. Az alábbi minta-munkafolyamat használható a Node.js mintaalkalmazáshoz.
Nyissa meg az alkalmazás GitHub adattárát.
Nyissa meg a
<repo-name>/.github/workflows/könyvtárat. Látnia kell az automatikusan létrehozott munkafolyamatokat.Minden munkafolyamat-fájlhoz válassza a Szerkesztés (ceruza) lehetőséget.
Cserélje le a munkafolyamat-fájl tartalmát a következő tartalomra. A kód feltételezi, hogy már létrehozta a hitelesítő adatok GitHub titkos kulcsait.
envA szakaszban konfigurálja a következő beállításokat:-
AZURE_WEBAPP_NAME: Cserélje le a<web-app-name>helyőrzőt a webalkalmazás nevére. -
NODE_VERSION: Adja meg a használni kívánt csomópontverziót. A Node.js minta értéke'24.x'. -
AZURE_WEBAPP_PACKAGE_PATH: Adja meg a webalkalmazás-projekt elérési útját. Az alapértelmezett érték az adattár gyökere,'.'. -
AZURE_WEBAPP_SLOT_NAME: Adja meg az alkalmazás hely nevét. A köznapi névstage.
name: Build and deploy Node.js app to Azure Web App on: push: branches: - main workflow_dispatch: env: AZURE_WEBAPP_NAME: <web-app-name> # Your application name NODE_VERSION: '24.x' # Node version to use AZURE_WEBAPP_PACKAGE_PATH: '.' # Path to your web app project AZURE_WEBAPP_SLOT_NAME: stage # Application slot name jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Set up Node.js version uses: actions/setup-node@v4 with: node-version: ${{ env.NODE_VERSION }} - name: npm install, build run: | npm install npm run build --if-present - name: Upload artifact for deployment job uses: actions/upload-artifact@v4 with: name: node-app path: . deploy: runs-on: ubuntu-latest needs: build environment: name: 'stage' url: ${{ steps.deploy-to-webapp.outputs.webapp-url }} steps: - name: Download artifact from build job uses: actions/download-artifact@v4 with: name: node-app - uses: azure/login@v2 with: creds: | { "clientId": "${{ secrets.AZURE_APP_ID }}", "clientSecret": "${{ secrets.AZURE_PASSWORD }}", "subscriptionId": "${{ secrets.AZURE_SUBSCRIPTION_ID }}", "tenantId": "${{ secrets.AZURE_TENANT_ID }}" } - name: 'Deploy to Azure Web App' id: deploy-to-webapp uses: azure/webapps-deploy@v3 with: app-name: ${{ env.AZURE_WEBAPP_NAME }} slot-name: ${{ env.AZURE_WEBAPP_SLOT_NAME }} package: ${{ env.AZURE_WEBAPP_PACKAGE_PATH }} - name: logout run: | az logout-
Mentse és véglegesítse a munkafolyamat-fájl módosításait közvetlenül az adattár fő ágába.
A véglegesítés aktiválja a GitHub műveletet, hogy újra fusson, és üzembe helyezze a kódot. A rendszer ezúttal a szolgáltatásnevet használja a hitelesítéshez.
Alkalmazásfrissítések tesztelése forgalomirányítási sávok használatával
A tárolóhelyekkel rendelkező forgalomirányítás lehetővé teszi, hogy a felhasználói forgalom egy előre meghatározott részét irányítsa az egyes pontokra. Kezdetben a forgalom 100%-a az éles helyre lesz irányítva. A forgalom 10% azonban elküldhető az előkészítési pontra. Ez a pontforgalom-útválasztási módszer automatikusan 10% küld az átmeneti ponthoz hozzáférést megkísérlő felhasználóknak. A megközelítéshez nincs szükség a Azure Front Door példány módosítására. Az App Service slotcseréiről és előkészítési környezeteiről további információt a Staging környezetek beállítása az Azure App Service-ben című témakörben talál.
Kód áthelyezése az előkészítési pontról az éles pontra
Miután befejezte az előkészítési pontok tesztelését és érvényesítését, elvégezhet egy pontcserét az előkészítési pontról az éles helyre. Ön befejezi az alkalmazás összes példányának cseréjét minden régióban. A szlotcsere során az App Service platform biztosítja, hogy a cél szlot ne tapasztaljon állásidőt.
Az elsődleges webalkalmazás felcserélése:
az webapp deployment slot swap --resource-group <resource-group> -name <primary-web-app-name> --slot stage --target-slot productionA készenléti webalkalmazás felcserélése:
az webapp deployment slot swap --resource-group <resource-group> -name <standby-web-app-name> --slot stage --target-slot productionNéhány perc múlva nyissa meg a Azure Front Door végpontot a Azure portálon, és ellenőrizze, hogy a pontcserét sikerült-e végrehajtani.
Ezen a ponton az alkalmazások futnak, és az alkalmazás forráskódján végrehajtott módosítások automatikusan aktiválják a frissítést mindkét átmeneti tárolóhelyre. Ezután megismételheti a slotcsere folyamatot, amikor készen áll a kód éles környezetbe való áthelyezésére.
A többrégiós üzembe helyezések alkalmazásával elkerülheti a fennakadásokat és a folytonossági problémákat.
Elkerülheti a régiók közötti folytonossággal kapcsolatos esetleges fennakadásokat vagy problémákat, ha ideiglenesen eltávolít egy helyet, amely a pontcserén megy keresztül a Azure Front Door forráscsoportból. Ez a művelet megakadályozza, hogy az ügyfelek egyszerre láthassák az alkalmazás különböző verzióit. Akkor is hasznos, ha jelentős módosításokat végez az alkalmazásokon. Az ideiglenes eltávolítás miatt az összes forgalom a másik forrásra lesz átirányítva.
Az Azure portálon navigáljon az Azure Front Door példányához.
A bal oldali menüben válassza a Beállítások>forráscsoportokat.
A forráscsoportok listájában válassza ki az ideiglenesen eltávolítani kívánt pontot tartalmazó forráscsoportot.
A Forráscsoport frissítése panelen keresse meg az eltávolítandó foglalatot az Origin állomásnév listában.
További műveletek kiválasztása (...) >Törölje, majd válassza a Frissítés lehetőséget.
A módosítás alkalmazása több percet is igénybe vehet.
Ha készen áll az eltávolított pont felé történő forgalom engedélyezésére, térjen vissza a Forráscsoport frissítése panelre.
A tetején válassza a + Eredet hozzáadása lehetőséget, hogy az eredethelyet visszaadja az eredetcsoporthoz.
További forráscsoportok létrehozása és útvonaltársítások módosítása
Ha nem szeretné törölni és olvasni a forrásokat, további forráscsoportokat hozhat létre a Azure Front Door-példányhoz. Ezután társíthatja az útvonalat ahhoz a forráscsoporthoz, amely a kívánt forrásra mutat.
Létrehozhat például két további forráscsoportot, egyet az elsődleges (aktív) régióhoz, egyet pedig a készenléti (passzív) régióhoz. Ha az elsődleges régió módosul, társítsa az útvonalat a készenléti régióhoz. Ha a készenléti régió módosul, társítsa az útvonalat az elsődleges régióhoz. Ha minden módosítás befejeződött, társíthatja az útvonalat az eredeti forráscsoporthoz, amely mindkét régiót tartalmazza. Ez a módszer azért működik, mert egy útvonal egyszerre csak egy forráscsoporthoz társítható.
Fontolja meg a három forráscsoporttal rendelkező konfigurációt:
- A
Main-Origincsoport az elsődleges és a készenléti webalkalmazásokat is tartalmazza, amelyek mindegyike a saját régiójukban található. - A
Primary-Origincsoport csak az aktív régióban lévő elsődleges webalkalmazást tartalmazza. - A
Standby-Origincsoport csak a passzív régióban lévő készenléti webalkalmazást tartalmazza.
Tegyük fel, hogy az elsődleges webalkalmazás módosul. A módosítások megkezdése előtt a csoport Main-Origin útvonaltársítását megváltoztatják a Secondary-Origin csoportra. Ez a művelet biztosítja, hogy a megfelelő régióban az összes forgalom a készenléti webalkalmazás felé irányul, míg az elsődleges webalkalmazás a megfelelő régiójában módosítás alatt áll.
Kövesse az alábbi lépéseket egy forráscsoport útvonaltársításának módosításához:
Az Azure portálon navigáljon az Azure Front Door példányához.
A bal oldali menüben válassza a Beállítások>forráscsoportokat.
A forráscsoportok listájában keresse meg azt a forráscsoportot, amely a Társítás nélküli jelzőt jeleníti meg az Útvonalak oszlopban.
További műveletek kiválasztása (...) >Végpont és útvonal társítása.
Az Útvonalak társítása panelen jelöljön ki egy vagy több útvonalat a forráscsoporthoz társítani, majd válassza a Társítás lehetőséget.
Speciális eszközöket tartalmazó webhelyhez való hozzáférés korlátozása
A Azure App szolgáltatással az SCM/speciális eszközök webhelye az alkalmazások kezelésére és az alkalmazás forráskódjának üzembe helyezésére szolgál. Fontolja meg az SCM/advanced tools webhely zárolását, mivel valószínűleg nincs szükség arra, hogy ezt a webhelyet a Front Dooron keresztül lehessen elérni. Beállíthat például olyan hozzáférési korlátozásokat, amelyek csak a tesztelés elvégzését teszik lehetővé, és lehetővé teszik a folyamatos üzembe helyezést a választott eszközről. Ha üzembehelyezési pontokat használ, kifejezetten éles üzembehelyezési pontokhoz, szinte minden hozzáférést megtagadhat az SCM webhelyhez, mivel a tesztelés és az ellenőrzés az előzetes pontokon történik.