Átmeneti környezetek beállítása az Azure App Service-ben
Feljegyzés
2024. június 1-től az újonnan létrehozott App Service-alkalmazások létrehozhatnak egy egyedi alapértelmezett gazdagépnevet, amely az elnevezési konvenciót <app-name>-<random-hash>.<region>.azurewebsites.net
használja. A meglévő alkalmazásnevek változatlanok maradnak. Példa:
myapp-ds27dh7271aah175.westus-01.azurewebsites.net
További információ: Az App Service-erőforrás egyedi alapértelmezett gazdagépneve.
Amikor a webalkalmazást, a webalkalmazást Linuxon, mobil háttérrendszeren vagy API-alkalmazáson helyezi üzembe a Azure-alkalmazás Service-ben, az alapértelmezett éles pont helyett egy külön üzembehelyezési pontot használhat. Ez a módszer akkor érhető el, ha a Standard, a Premium vagy az Izolált App Service csomagszinten fut. Az üzembehelyezési pontok saját gazdagépnevekkel rendelkező élő alkalmazások. Az alkalmazástartalom és a konfigurációk elemei felcserélhetők két üzembe helyezési tárhely között az üzemelési pontot is beleértve.
Az alkalmazás nem gyártási ponton való üzembe helyezése a következő előnyökkel jár:
- Az előkészítési üzembehelyezési ponton végrehajtott alkalmazásmódosításokat érvényesítheti, mielőtt felcserélené azokat az éles ponttal.
- Ha először üzembe helyez egy alkalmazást egy ponton, és élesre cseréli azt, akkor a pont összes példánya felmelegedik, mielőtt felcseréli az éles környezetbe. Ez a módszer kiküszöböli az állásidőt az alkalmazás üzembe helyezésekor. A forgalom átirányítása zökkenőmentes. A felcserélési műveletek miatt a rendszer nem küld el kéréseket. Ezt a teljes munkafolyamatot automatizálhatja az automatikus felcserélés konfigurálásával, ha nincs szükség előcseréléses ellenőrzésre.
- A felcserélés után a korábban előkészített alkalmazással rendelkező pont már rendelkezik az előző éles alkalmazással. Ha az éles pontra felcserélt módosítások nem a várt módon változnak, ugyanezt a felcserélést azonnal elvégezheti, hogy visszakapja az utolsó ismert jó webhelyét.
Minden App Service-csomagszint különböző számú üzembehelyezési pontot támogat. Az üzembehelyezési pontok használata nem jár külön díjjal. Az alkalmazásszint által támogatott pontok számának megtekintéséhez tekintse meg az App Service korlátait.
Ha az alkalmazást egy másik szintre szeretné skálázni, győződjön meg arról, hogy a célszint támogatja az alkalmazás által már használt tárolóhelyek számát. Ha például az alkalmazás ötnél több tárolóhellyel rendelkezik, nem skálázhatja le a Standard szintre. A Standard szint csak öt üzembehelyezési pontot támogat.
Ez a videó bemutatja, hogyan állíthat be átmeneti környezeteket Azure-alkalmazás Szolgáltatásban.
A videó lépéseit a következő szakaszokban is ismertetjük.
Előfeltételek
- A kívánt pontművelet végrehajtásához szükséges engedélyekkel kapcsolatos információkért tekintse meg az erőforrás-szolgáltató műveleteit. Keresse meg például a pontot.
Tárhely felvétele
Az alkalmazásnak a Standard, a Premium vagy az Izolált szinten kell futnia ahhoz, hogy több üzembehelyezési pontot engedélyezhessen.
Az Azure Portalon lépjen az alkalmazás felügyeleti oldalára.
A bal oldali panelen válassza az Üzembehelyezési>pontok>hozzáadása lehetőséget.
Feljegyzés
Ha az alkalmazás még nincs a Standard, a Prémium vagy az Izolált szinten, válassza a Frissítés lehetőséget. A folytatás előtt lépjen az alkalmazás Méretezés lapjára.
A Pont hozzáadása párbeszédpanelen adjon nevet a pontnak, és adja meg, hogy klónozza-e az alkalmazáskonfigurációt egy másik üzembehelyezési pontból. A folytatáshoz válassza a Hozzáadás lehetőséget.
A konfigurációt bármely meglévő pontból klónozhatja. A klónozni kívánt beállítások közé tartoznak az alkalmazásbeállítások, a kapcsolati sztring, a nyelvi keretrendszer verziói, a webes szoftvercsatornák, a HTTP-verzió és a platformbitesség.
Feljegyzés
A privát végpont jelenleg nem klónozott a pontok között.
A beállítások megadása után kattintson a Bezárás gombra a párbeszédpanel bezárásához. Az új pont megjelenik az Üzembehelyezési pontok lapon. Alapértelmezés szerint a Forgalom %-a 0 értékre van állítva az új ponthoz, és az összes ügyfélforgalom az éles ponthoz van irányítva.
Válassza ki az új üzembehelyezési pontot a pont erőforrásoldalának megnyitásához.
Az előkészítési pont felügyeleti oldallal rendelkezik, mint bármely más App Service-alkalmazás. Módosíthatja a pont konfigurációját. Az üzembehelyezési pont megtekintéséhez az alkalmazás neve alkalmazásnévként/pontnévként ><jelenik meg.<> Az alkalmazás típusa App Service (Slot). A pont egy külön alkalmazásként is látható az erőforráscsoportban ugyanazokkal a megjelölésekkel.
Válassza ki az alkalmazás URL-címét a pont erőforrásoldalán. Az üzembehelyezési pontnak saját állomásneve van, és egy élő alkalmazás is. Az üzembehelyezési ponthoz való nyilvános hozzáférés korlátozásához tekintse meg Azure-alkalmazás szolgáltatás IP-korlátozásait.
Az új üzembehelyezési pont nem tartalmaz tartalmat, még akkor sem, ha a beállításokat egy másik pontról klónozza. Közzéteheti például ezt a pontot a Gittel. Egy másik adattárágból vagy egy másik adattárból is üzembe helyezheti a pontot. Szerezze be a közzétételi profilt Azure-alkalmazás szolgáltatásból, amely biztosítja a pontban való üzembe helyezéshez szükséges információkat. A Visual Studio importálhatja a profilt, hogy tartalmat helyezzen üzembe a ponton.
A pont URL-címe formátuma http://sitename-slotname.azurewebsites.net
. Ha az URL-cím hosszát a szükséges DNS-korlátokon belül szeretné tartani, a rendszer 40 karakterből csonkolja a webhely nevét. A kombinált webhelynévnek és pontnévnek 59 karakternél kevesebbnek kell lennie.
Mi történik a felcserélés során?
A felcserélési művelet lépései
Két pont felcserélésekor az App Service a következőket teszi annak érdekében, hogy a célhelyen ne legyen állásidő:
Alkalmazza a következő beállításokat a célhelyről (például az éles pontról) a forráshely összes példányára:
- Pontspecifikus alkalmazásbeállítások és kapcsolati sztring, ha vannak.
- Folyamatos üzembe helyezési beállítások, ha engedélyezve van.
- Az App Service hitelesítési beállításai, ha engedélyezve van.
Ha a rendszer a forráshelyre alkalmazza a beállításokat, a módosítás aktiválja a forráshelyen lévő összes példányt az újraindításhoz. Az előzetes verzióval való felcserélés során ez a művelet az első fázis végét jelöli. A felcserélési művelet szünetel. Ellenőrizheti, hogy a forráshely megfelelően működik-e a célhely beállításaival.
Várja meg, amíg a forráshely minden példánya befejezi az újraindítást. Ha egy példány nem indul újra, a felcserélési művelet visszaállítja a forráshely összes módosítását, és leállítja a műveletet.
Ha a helyi gyorsítótár engedélyezve van, aktiválja a helyi gyorsítótár inicializálását úgy, hogy http-kérést küld a forráshely minden példányán az alkalmazásgyökérnek ("/"). Várjon, amíg minden példány http-választ ad vissza. A helyi gyorsítótár inicializálása minden példányon újraindul.
Ha az automatikus felcserélés engedélyezve van az egyéni bemelegítéssel, aktiválja az egyéni alkalmazásindítást a forráshely minden példányán.
Ha
applicationInitialization
nincs megadva, http-kérést indíthat el az egyes példányok forráshelyének alkalmazásgyökeréhez.Ha egy példány http-választ ad vissza, az bemelegítésnek minősül.
Ha a forráshely összes példánya sikeresen felmelegedik, cserélje fel a két pontot a két pont útválasztási szabályainak módosításával. A lépés után a célhely (például az éles pont) rendelkezik a forráshelyen korábban bemelegített alkalmazással.
Most, hogy a forráshelyen már szerepel az előcserélés előtti alkalmazás a célhelyen, hajtsa végre ugyanezt a műveletet az összes beállítás alkalmazásával és a példányok újraindításával.
A felcserélési művelet bármely pontján a felcserélt alkalmazások inicializálása a forrásponton történik. A célhely online állapotban marad, miközben a forráspont előkészítése és bemelegedése folyamatban van, függetlenül attól, hogy a csere sikeres vagy sikertelen lesz-e. Ha fel szeretne cserélni egy előkészítési pontot az éles ponttal, győződjön meg arról, hogy az éles pont mindig a célhely. Így a felcserélési művelet nincs hatással az éles alkalmazásra.
Feljegyzés
A korábbi éles példányokat a rendszer a felcserélési művelet után átmenetire cseréli. Ezeket a példányokat a felcserélési folyamat utolsó lépésében újrahasznosítottuk. Ha az alkalmazásban hosszú ideig futó műveletek vannak, azokat a feldolgozók újrafeldolgozásakor felhagyják. Ez a tény a függvényalkalmazásokra is vonatkozik. Ezért az alkalmazáskódot hibatűrő módon kell írni.
Mely beállítások vannak felcserélve?
Ha egy másik üzembehelyezési pontról klónozza a konfigurációt, a klónozott konfiguráció szerkeszthető. Egyes konfigurációs elemek a felcserélés tartalmát követik (nem pontspecifikusak). A többi konfigurációs elem ugyanabban a pontban marad a felcserélés után (pontspecifikus). Az alábbi listák a pontok felcserélésekor változó beállításokat mutatják be.
Felcserélt beállítások:
- Nyelvi verem és verzió, 32/64 bites
- Alkalmazásbeállítások (konfigurálható egy ponthoz való ragaszkodáshoz)
- Kapcsolati sztringek (konfigurálhatók úgy, hogy egy ponthoz tartsanak)
- Csatlakoztatott tárfiókok (konfigurálható úgy, hogy egy ponthoz ragaszkodjanak)
- Kezelőleképezések
- Nyilvános tanúsítványok
- WebJobs-tartalom
- Hibrid kapcsolatok *
- Szolgáltatásvégpontok *
- Azure Content Delivery Network *
- Elérésiút-hozzárendelések
A csillaggal (*) jelölt funkciók a tervek szerint nem lesznek leképezve.
Nem felcserélt beállítások:
- A felcserélt beállításokban nem említett általános beállítások
- Végpontok közzététele
- Egyéni tartománynevek
- Nem nyilvános tanúsítványok és TLS/SSL-beállítások
- Méretezési beállítások
- WebJobs-ütemezők
- IP-korlátozások
- Folyamatos üzem
- Diagnosztikai beállítások
- Eltérő eredetű erőforrások megosztása (CORS)
- Virtuális hálózat integrációja
- Felügyelt identitások és kapcsolódó beállítások
- A _EXTENSION_VERSION utótaggal végződő beállítások
- A Service Connector által létrehozott beállítások
Feljegyzés
A beállítások felcserélhetővé tétele érdekében adja hozzá az alkalmazásbeállítást WEBSITE_OVERRIDE_PRESERVE_DEFAULT_STICKY_SLOT_SETTINGS
az alkalmazás minden pontjához, és állítsa az értékét a következőre 0
: vagy false
. Ezek a beállítások vagy felcserélhetők, vagy egyáltalán nem. Egyes beállításokat nem lehet felcserélni, a többit nem. A felügyelt identitások soha nem cserélődnek fel. Ez a felülbírálási alkalmazásbeállítás nincs hatással rájuk.
A nem leképezett beállításokra vonatkozó egyes alkalmazásbeállítások szintén nincsenek felcserélve. Mivel például a diagnosztikai beállítások nincsenek felcserélve, a kapcsolódó alkalmazásbeállítások is hasonlók WEBSITE_HTTPLOGGING_RETENTION_DAYS
és DIAGNOSTICS_AZUREBLOBRETENTIONDAYS
nem is cserélődnek fel, még akkor sem, ha nem jelennek meg pontbeállításokként.
Ha egy alkalmazásbeállítást vagy kapcsolati sztring úgy szeretne konfigurálni, hogy egy adott ponthoz ragaszkodjon, amely nincs felcserélve, nyissa meg az adott pont Beállítások>környezeti változó lapját. Adjon hozzá vagy szerkesszen egy beállítást, majd válassza az Üzembehelyezési pont beállítását. Ha ezt a beállítást választja, az App Service azt jelzi, hogy a beállítás nem cserélhető fel.
Két tárolóhely felcserélése
Az üzembehelyezési pontok felcserélhetők az alkalmazás Üzembehelyezési pontok lapján és az Áttekintés lapon. A pontcseréről további információt a mi történik a felcserélés során?
Fontos
Mielőtt felcserél egy alkalmazást egy üzembehelyezési pontról az éles környezetbe, győződjön meg arról, hogy az éles környezet a célhely, és hogy a forráshely összes beállítása pontosan úgy van konfigurálva, ahogyan éles környezetben szeretné őket használni.
Üzembehelyezési pontok felcserélése:
Nyissa meg az alkalmazás üzembehelyezési pontjainak lapját, és válassza a Felcserélés lehetőséget.
A Felcserélés párbeszédpanel a módosítani kívánt forrás- és célhelyek beállításait jeleníti meg.
Válassza ki a kívánt forrás- és célhelyeket. A cél általában az éles pont. Emellett válassza a Forrásváltozások és a Célmódosítások lapot, és ellenőrizze, hogy a konfigurációs módosítások várhatók-e. Ha végzett, azonnal felcserélheti a pontokat a Felcserélés gombra kattintva.
Ha meg szeretné tudni, hogy a célhely hogyan futna az új beállításokkal a felcserélés előtt, ne válassza a Felcserélés lehetőséget, hanem kövesse a Felcserélés előzetes verzióval című témakör utasításait.
Ha végzett, a párbeszédpanel bezárásához válassza a Bezárás lehetőséget.
Ha bármilyen problémája van, tekintse meg a csereelhárítók hibaelhárítását.
Felcserélés előzetes verzióval (többfázisú felcserélés)
Mielőtt célhelyként felcseréli az éles környezetbe, ellenőrizze, hogy az alkalmazás a felcserélt beállításokkal fut-e. A forráshelyet a csere befejezése előtt is bemelegíti a rendszer, ami kritikus fontosságú alkalmazások esetében kívánatos.
Ha előzetes verziójú felcserélést hajt végre, az App Service ugyanezt a felcserélési műveletet hajtja végre, de az első lépés után szünetel. Ezután ellenőrizheti az eredményt az előkészítési ponton, mielőtt befejezi a felcserélést.
Ha megszakítja a felcserélést, az App Service újra alkalmazza a konfigurációs elemeket a forráshelyre.
Feljegyzés
Az előzetes verzióval való felcserélés nem használható, ha az egyik tárolóhelyen engedélyezve van a helyhitelesítés.
Felcserélés az előzetes verzióval:
Kövesse az üzembehelyezési pontok felcserélésével kapcsolatos lépéseket, de válassza a Felcserélés végrehajtása előzetes verzióval lehetőséget.
A párbeszédpanel bemutatja, hogyan változik a forráshely konfigurációja az 1. fázisban, és hogyan változik a forrás- és célhely a 2. fázisban.
Ha készen áll a felcserélés indítására, válassza a Felcserélés indítása lehetőséget.
Ha az 1. fázis befejeződik, a párbeszédpanel értesíti Önt. Tekintse meg a felcserélést a forráshelyen a következő lépéssel
https://<app_name>-<source-slot-name>.azurewebsites.net
: .Ha készen áll a függőben lévő felcserélés befejezésére, válassza a Felcserélés műveletben a Felcserélés befejezése elemet, és válassza a Teljes felcserélés lehetőséget.
Függőben lévő felcserélés megszakításához válassza a Mégse felcserélés lehetőséget, majd alul válassza a Felcserélés megszakítása lehetőséget.
Ha végzett, a párbeszédpanel bezárásához válassza a Bezárás lehetőséget.
Ha bármilyen problémája van, tekintse meg a csereelhárítók hibaelhárítását.
Csere visszaállítása
Ha hiba történik a célhelyen (például az éles pontban) egy pontcserét követően, állítsa vissza a réseket a felcserélés előtti állapotukba úgy, hogy azonnal felcseréli ugyanazt a két pontot.
Automatikus felcserélés konfigurálása
Feljegyzés
Az automatikus felcserélés linuxos és webalkalmazásos webalkalmazásokban nem támogatott.
Az automatikus felcserélés leegyszerűsíti az Azure DevOps-forgatókönyveket, ahol az alkalmazást folyamatosan szeretné üzembe helyezni nulla hidegindítással és nulla állásidővel az alkalmazás ügyfelei számára. Ha az automatikus felcserélés engedélyezve van egy pontról az éles üzembe helyezésre, minden alkalommal, amikor a kód módosításait erre a pontra küldi, az App Service automatikusan felcseréli az alkalmazást éles környezetbe , miután bemelegedett a forráshelyen.
Feljegyzés
Mielőtt konfigurálja az automatikus felcserélést az éles ponthoz, fontolja meg az automatikus felcserélés tesztelését egy nem termelési célhelyen.
Automatikus felcserélés konfigurálása:
Nyissa meg az alkalmazás erőforráslapját. Válassza ki a központi telepítési>pontok><kívánt forráshelyét.>
A bal oldali panelen válassza a Beállítások>konfiguráció>általános beállításai lehetőséget.
Ha az automatikus felcserélés engedélyezve van, válassza a Be lehetőséget. Ezután válassza ki a kívánt célhelyet az automatikus felcserélés üzembehelyezési pontjához, és válassza a Mentés lehetőséget a parancssávon.
Kódküldés futtatása a forráshelyre. Az automatikus felcserélés rövid idő után történik. A frissítés a célhely URL-címében jelenik meg.
Ha bármilyen problémája van, tekintse meg a csereelhárítók hibaelhárítását.
Egyéni bemelegítés megadása
Egyes alkalmazások egyéni bemelegítési műveleteket igényelhetnek a felcserélés előtt. A applicationInitialization
web.config konfigurációs eleme lehetővé teszi egyéni inicializálási műveletek megadását. A felcserélési művelet megvárja, amíg ez az egyéni bemelegítés befejeződik, mielőtt felcseréli a célhelyet. Íme egy web.config mintatöredék.
<system.webServer>
<applicationInitialization>
<add initializationPage="/" hostName="[app hostname]" />
<add initializationPage="/Home/About" hostName="[app hostname]" />
</applicationInitialization>
</system.webServer>
Az elem testreszabásával kapcsolatos további információkért tekintse meg az applicationInitialization
üzembehelyezési pontok leggyakoribb felcserélési hibáit és azok javítását ismertető témakört.
A bemelegítési viselkedést az alábbi alkalmazásbeállításokkal is testre szabhatja:
-
WEBSITE_SWAP_WARMUP_PING_PATH
: A HTTP-kapcsolaton keresztüli pingelés elérési útja a webhely bemelegítéséhez. Adja hozzá ezt az alkalmazásbeállítást egy egyéni elérési út megadásával, amely egy perjellel kezdődik értékként. Például:/statuscheck
. Az alapértelmezett érték/
. -
WEBSITE_SWAP_WARMUP_PING_STATUSES
: Érvényes HTTP-válaszkódok a bemelegítési művelethez. Adja hozzá ezt az alkalmazásbeállítást a HTTP-kódok vesszővel tagolt listájával. Például:200,202
. Ha a visszaadott állapotkód nem szerepel a listában, a bemelegítési és felcserélési műveletek leállnak. Alapértelmezés szerint az összes válaszkód érvényes. -
WEBSITE_WARMUP_PATH
: Relatív elérési út a webhelyen, amelyet a webhely újraindulásakor (nem csak a pontcserék során) kell pingelni. Példaértékek a következők:/statuscheck
vagy a gyökér elérési útja./
Feljegyzés
A <applicationInitialization>
konfigurációs elem minden alkalmazásindítás része, míg a bemelegítési viselkedés alkalmazásbeállításai csak a pontcserékre vonatkoznak.
Ha bármilyen problémája van, tekintse meg a csereelhárítók hibaelhárítását.
Felcserélés figyelése
Ha a felcserélési művelet végrehajtása hosszú időt vesz igénybe, a tevékenységnaplóban információkat kaphat a felcserélési műveletről.
Az alkalmazás erőforráslapján a portál bal oldali ablaktábláján válassza a Tevékenységnapló lehetőséget.
A napló lekérdezésében felcserélési művelet jelenik meg a következőként Swap Web App Slots
: . Kibonthatja, és kiválaszthat egy alművet vagy hibát a részletek megtekintéséhez.
Éles forgalom automatikus átirányítása
Alapértelmezés szerint a rendszer az alkalmazás éles URL-címére (http://<app_name>.azurewebsites.net
) irányuló összes ügyfélkérést az éles ponthoz irányítja. A forgalom egy részét átirányíthatja egy másik pontra. Ez a funkció akkor hasznos, ha felhasználói visszajelzésre van szüksége egy új frissítéshez, de még nem áll készen arra, hogy éles környezetben kiadja.
Éles forgalom automatikus átirányítása:
Nyissa meg a webalkalmazás erőforráslapját, és válassza az Üzembe helyezési pontok lehetőséget.
Az átirányítani kívánt pont Forgalom %-os oszlopában adjon meg egy százalékot (0 és 100 között) az irányítandó teljes forgalom mennyiségének megjelenítéséhez. Válassza a Mentés lehetőséget.
A beállítás mentése után a rendszer véletlenszerűen átirányítja az ügyfelek megadott százalékát a nem gyártási ponthoz.
Miután az ügyfél automatikusan egy adott ponthoz lett irányítva, egy órán keresztül vagy a cookie-k törléséig rögzítve lesz. Az ügyfélböngészőben láthatja, hogy a munkamenet melyik pontjára van rögzítve, ha megtekinti a cookie-t a x-ms-routing-name
HTTP-fejlécekben. Az előkészítési ponthoz irányított kéréshez tartozik a cookiex-ms-routing-name=staging
. Az éles ponthoz irányított kéréshez tartozik a cookie x-ms-routing-name=self
.
Éles forgalom manuális irányítása
Az automatikus forgalomirányítás mellett az App Service átirányíthatja a kéréseket egy adott pontra. Ez a lehetőség akkor hasznos, ha azt szeretné, hogy a felhasználók a bétaalkalmazást is bekapcsolhassák vagy kikapcsolhassák. Az éles forgalom manuális irányításához használja a lekérdezési x-ms-routing-name
paramétert.
Ha például azt szeretné, hogy a felhasználók kikapcsolják a bétaalkalmazást, ezt a hivatkozást elhelyezheti a weblapján:
<a href="<webappname>.azurewebsites.net/?x-ms-routing-name=self">Go back to production app</a>
A sztring x-ms-routing-name=self
megadja az éles pontot. Miután az ügyfélböngésző hozzáfér a hivatkozáshoz, a rendszer átirányítja az éles pontra. Minden további kérés rendelkezik azzal a x-ms-routing-name=self
cookie-val, amely a munkamenetet az éles ponthoz rögzíti.
Ha lehetővé szeretné tenni a felhasználóknak, hogy a bétaalkalmazást választják, állítsa ugyanazt a lekérdezési paramétert a nem gyártási pont nevére. Példa:
<webappname>.azurewebsites.net/?x-ms-routing-name=staging
Alapértelmezés szerint az új pontokhoz a rendszer a szürke színnel megjelenített útválasztási 0%
szabályt adja meg. Ha ezt az értéket 0%
explicit módon (fekete szövegben) állítja be, a felhasználók manuálisan férhetnek hozzá az előkészítési ponthoz a x-ms-routing-name
lekérdezési paraméter használatával. Nem lesznek automatikusan átirányítva a ponthoz, mert az útválasztás százalékos értéke 0. Ez a konfiguráció egy speciális forgatókönyv, amelyben elrejtheti az előkészítési pontot a nyilvánosság elől, miközben a belső csapatok tesztelhetik a módosításokat a ponton.
Pont törlése
Keresse meg és válassza ki az alkalmazást. Az Áttekintés törléséhez>>válassza az Üzembe helyezési>pontok><pontot. Az alkalmazás típusa App Service -ként (Slot) jelenik meg, amely emlékezteti arra, hogy egy üzembehelyezési pontot tekint meg. Mielőtt töröl egy pontot, állítsa le a pontot, és állítsa a forgalom nullára. Válassza a Törlés lehetőséget a parancssávon.
Automatizálás Resource Manager-sablonokkal
Az Azure Resource Manager-sablonok deklaratív JSON-fájlok, amelyek az Azure-erőforrások üzembe helyezésének és konfigurálásának automatizálására szolgálnak. Ha Resource Manager-sablonokkal szeretne réseket cserélni, két tulajdonságot kell beállítania a Microsoft.Web/sites/slots és a Microsoft.Web/sites erőforrásokon:
-
buildVersion
: Egy sztringtulajdonság, amely a pontban üzembe helyezett alkalmazás aktuális verzióját jelöli. Például:v1
,1.0.0.1
vagy2019-09-20T11:53:25.2887393-07:00
. -
targetBuildVersion
: Egy sztringtulajdonság, amely meghatározza, hogy mibuildVersion
legyen a pontnak. Ha aztargetBuildVersion
aktuálisbuildVersion
érték nem egyenlő, a felcserélési műveletet úgy indítja el, hogy megkeresi a megadottbuildVersion
ponttal rendelkező pontot .
Példa Resource Manager-sablonra
Az alábbi Resource Manager-sablon két pontot cserél fel a buildVersion
staging
pont frissítésével és az targetBuildVersion
éles pont beállításával. Rendelkeznie kell egy úgynevezett ponttal staging
.
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"my_site_name": {
"defaultValue": "SwapAPIDemo",
"type": "String"
},
"sites_buildVersion": {
"defaultValue": "v1",
"type": "String"
}
},
"resources": [
{
"type": "Microsoft.Web/sites/slots",
"apiVersion": "2018-02-01",
"name": "[concat(parameters('my_site_name'), '/staging')]",
"location": "East US",
"kind": "app",
"properties": {
"buildVersion": "[parameters('sites_buildVersion')]"
}
},
{
"type": "Microsoft.Web/sites",
"apiVersion": "2018-02-01",
"name": "[parameters('my_site_name')]",
"location": "East US",
"kind": "app",
"dependsOn": [
"[resourceId('Microsoft.Web/sites/slots', parameters('my_site_name'), 'staging')]"
],
"properties": {
"targetBuildVersion": "[parameters('sites_buildVersion')]"
}
}
]
}
Ez a Resource Manager-sablon idempotens. A tárolóhelyeket többször is futtathatja, és ugyanazt az állapotot hozhatja létre. A sablon módosítása nélkül ugyanannak a sablonnak a későbbi futtatásai nem váltanak ki pontcserét, mert a pontok már a kívánt állapotban vannak.
Felcserélések hibaelhárítása
Ha hiba történik egy pontcserélés során, a hiba a D:\home\LogFiles\eventlog.xml fájlban jelenik meg. A rendszer az alkalmazásspecifikus hibanaplóban is naplózza.
Íme néhány gyakori felcserélési hiba:
Az alkalmazás gyökerének küldött HTTP-kérés időzít. A felcserélési művelet minden HTTP-kérelemre 90 másodpercet vár, és legfeljebb ötször próbálkozik újra. Ha az összes újrapróbálkozási művelet túllépi az időkorlátot, a felcserélési művelet leáll.
A helyi gyorsítótár inicializálása meghiúsulhat, ha az alkalmazás tartalma meghaladja a helyi gyorsítótárhoz megadott helyi lemezkvótát. További információ: Helyi gyorsítótár áttekintése.
A helyfrissítési művelet során a következő hiba léphet fel : A pont nem módosítható, mert a konfigurációs beállítások fel lettek készítve a felcserélésre. Ez a hiba akkor fordulhat elő, ha az előzetes verzió (többfázisú felcserélés) 1. fázisa befejeződött, de a 2. fázis még nem lett végrehajtva. Akkor is előfordulhat, ha egy felcserélés meghiúsult. A probléma kétféleképpen oldható meg:
- A hely régi állapotba visszaállítását váltó felcserélési művelet megszakítása
- Hajtsa végre a felcserélési műveletet, amely frissíti a webhelyet a kívánt új állapotra
A felcserélési művelet megszakításáról vagy befejezéséről a felcserélés előzetes verzióval (többfázisú felcseréléssel) című témakörben olvashat.
Az egyéni bemelegítés során a HTTP-kérések belsőleg, a külső URL-címen való áthaladás nélkül jönnek létre. A Web.config bizonyos URL-átírási szabályaival meghiúsulhatnak. Például a tartománynevek átirányítására vagy a HTTPS kényszerítésére vonatkozó szabályok megakadályozhatják, hogy a bemelegítési kérések elérjék az alkalmazás kódját. A probléma megoldásához módosítsa az átírási szabályokat az alábbi két feltétel hozzáadásával:
<conditions> <add input="{WARMUP_REQUEST}" pattern="1" negate="true" /> <add input="{REMOTE_ADDR}" pattern="^100?\." negate="true" /> ... </conditions>
Egyéni bemelegítés nélkül az URL-átírási szabályok továbbra is blokkolhatják a HTTP-kéréseket. A probléma megoldásához módosítsa az átírási szabályokat az alábbi feltétel hozzáadásával:
<conditions> <add input="{REMOTE_ADDR}" pattern="^100?\." negate="true" /> ... </conditions>
A pontcserék után előfordulhat, hogy az alkalmazás váratlan újraindítást tapasztal. Az újraindítások azért történnek, mert a felcserélés után a gazdagépnév kötésének konfigurációja megszakad. Ez a helyzet önmagában nem okoz újraindítást. Bizonyos mögöttes tárolási események, például a tárolókötet feladatátvételei azonban észlelhetik ezeket az eltéréseket, és az összes feldolgozói folyamatot újraindításra kényszeríthetik. Az ilyen típusú újraindítások minimalizálásához állítsa be az alkalmazásbeállítást az
WEBSITE_ADD_SITENAME_BINDINGS_IN_APPHOST_CONFIG=1
összes ponton. Ez az alkalmazásbeállítás azonban nem működik a Windows Communication Foundation (WCF) alkalmazásokkal.