Az App Service Environment v2-nek az App Service Environment v3-ba való migrálásához használja a párhuzamos migrálási funkciót
Feljegyzés
Az ebben a cikkben ismertetett migrálási funkció az App Service Environment v2-nek az App Service Environment v3-ba történő, egymás melletti (különböző alhálózati) automatikus migrálására szolgál.
Ha a helyszíni migrálási funkcióról szeretne információt keresni, olvassa el a Migrálás az App Service Environment 3-ra című témakört a helyszíni migrálási funkcióval. Ha a manuális migrálási lehetőségekről szeretne információt keresni, tekintse meg a manuális migrálási lehetőségeket. Ha segítségre van szüksége annak eldöntéséhez, hogy melyik migrálási lehetőség a megfelelő, tekintse meg az áttelepítési útvonal döntési fáját. Az App Service Environment v3-ról további információt az App Service Environment v3 áttekintésében talál.
Az App Service Environment v2-et automatikusan áttelepítheti az App Service Environment v3-ba a párhuzamos migrálási funkcióval. Ha többet szeretne megtudni az áttelepítési folyamatról, és meg szeretné tudni, hogy az App Service-környezet támogatja-e a migrálást, tekintse meg a párhuzamos migrálási funkció áttekintését.
Fontos
Javasoljuk, hogy ezt a funkciót fejlesztési környezetekhez használja, mielőtt bármilyen éles környezetbe migrálnánk, hogy elkerüljük a váratlan problémákat. A cikkhez vagy a funkcióhoz kapcsolódó visszajelzéseket az oldal alján található gombokkal küldheti el.
Előfeltételek
Győződjön meg arról, hogy tisztában van azzal, hogy az App Service Environment v3-ra való migrálás milyen hatással van az alkalmazásokra. A migrálási folyamat áttekintésével megismerheti a folyamat ütemtervét, valamint azt, hogy hol és mikor kell részt vennie. Tekintse át a gyakori kérdéseket is, amelyek megválaszolhatnak néhány kérdést.
Győződjön meg arról, hogy nincsenek zárolások a virtuális hálózaton, az erőforráscsoportokon, az erőforrásokon vagy az előfizetésen. Zárolja a blokkplatform-műveleteket a migrálás során.
Győződjön meg arról, hogy egyetlen Azure-szabályzat sem blokkolja a migráláshoz szükséges műveleteket, beleértve az alhálózati módosításokat és Azure-alkalmazás szolgáltatáserőforrás-létrehozásokat. Az erőforrás-módosításokat és -létrehozásokat letiltó szabályzatok a migrálás elakadását vagy meghiúsulását okozhatják.
Mivel az App Service Environment v3-as verzió a virtuális hálózat egy másik alhálózatán található, gondoskodnia kell arról, hogy a virtuális hálózatban elérhető alhálózattal rendelkezzen, amely megfelel az App Service Environment v3 alhálózati követelményeinek. A kiválasztott alhálózatnak képesnek kell lennie kommunikálni azzal az alhálózattal is, amelyben a meglévő App Service-környezet található. Győződjön meg arról, hogy semmi sem blokkolja a két alhálózat közötti kommunikációt. Ha nem rendelkezik elérhető alhálózattal, az áttelepítés előtt létre kell hoznia egyet. Új alhálózat létrehozása magában foglalhatja a virtuális hálózati címtér növelését. További információ: Virtuális hálózat és alhálózat létrehozása.
Mivel a migrálás során a skálázás le van tiltva, a migrálás megkezdése előtt a környezetet a kívánt méretre kell skáláznia. Ha a migrálás után skáláznia kell a környezetet, ezt az áttelepítés befejezése után teheti meg.
Kövesse az itt leírt lépéseket a sorrendben és az írott módon, mivel Azure REST API-hívásokat indít. Javasoljuk, hogy ezeket az API-hívásokat az Azure CLI használatával végezze el. További információ az egyéb módszerekről: Azure REST API-referencia.
Ebben az útmutatóban telepítse az Azure CLI-t, vagy használja az Azure Cloud Shellt, és használjon Bash-rendszerhéjat.
Feljegyzés
Javasoljuk, hogy az útmutatóban megadott parancsokat Bash-rendszerhéj használatával futtassa. Előfordulhat, hogy a parancsok nem kompatibilisek a PowerShell-konvenciókkal és a feloldó karakterekkel.
Fontos
A migrálás során előfordulhat, hogy az Azure Portal helytelen információkat jelenít meg az App Service-környezetről és az alkalmazásokról. Ne lépjen a Migrálási felületre az Azure Portalon, mivel a párhuzamos migrálási funkció nem érhető el ott. Javasoljuk, hogy az Azure CLI használatával ellenőrizze a migrálás állapotát. Ha kérdése van a migrálás vagy az alkalmazások állapotával kapcsolatban, forduljon az ügyfélszolgálathoz.
1. Válassza ki az új App Service Environment v3 alhálózatát
Válasszon ki egy alhálózatot az App Service Environment v3-ban, amely megfelel az App Service Environment v3 alhálózati követelményeinek. Jegyezze fel a kiválasztott alhálózat nevét. Ennek az alhálózatnak különböznie kell attól az alhálózattól, amelyben a meglévő App Service-környezet található.
2. Az App Service-környezet azonosítóinak lekérése
Futtassa az alábbi parancsokat az App Service-környezet azonosítójának lekéréséhez és környezeti változóként való tárolásához. Cserélje le a név és az erőforráscsoportok helyőrzőit a migrálni kívánt App Service-környezet értékeire. ASE_RG
és VNET_RG
megegyeznek, ha a virtuális hálózat és az App Service-környezet ugyanabban az erőforráscsoportban található.
ASE_NAME=<Your-App-Service-Environment-name>
ASE_RG=<Your-ASE-Resource-Group>
VNET_RG=<Your-VNet-Resource-Group>
ASE_ID=$(az appservice ase show --name $ASE_NAME --resource-group $ASE_RG --query id --output tsv)
3. Ellenőrizze, hogy a migrálás támogatott-e
Az alábbi parancs ellenőrzi, hogy az App Service-környezet támogatja-e a migrálást. Ha hibaüzenetet kap, vagy ha az App Service-környezet állapota nem megfelelő vagy felfüggesztett állapotban van, akkor jelenleg nem lehet migrálni. A lehetséges hibaüzenetek leírását a hibaelhárítási szakaszban találja. Ha a környezet nem támogatott az egymás melletti migrálási funkcióval történő migráláshoz, vagy ha az App Service Environment v3-ba szeretne migrálni a párhuzamos migrálási funkció használata nélkül, tekintse meg a manuális migrálási lehetőségeket. Ez a parancs azt is ellenőrzi, hogy az App Service-környezet a migrálás támogatott buildverzióján van-e. Ha az App Service-környezet nem a támogatott buildverzión van, saját maga kell elindítania a frissítést. A premigrációs frissítéssel kapcsolatos további információkért lásd : Annak ellenőrzése, hogy a migrálás támogatott-e az App Service-környezet egymás melletti migrálási funkciójával.
az rest --method post --uri "${ASE_ID}/NoDowntimeMigrate?phase=Validation&api-version=2022-03-01"
Ha nincsenek hibák, az áttelepítés támogatott, és folytathatja a következő lépést.
Ha frissítenie kell az App Service-környezetet a támogatott buildverzióra, futtassa a következő parancsot. Csak akkor futtassa ezt a parancsot, ha az érvényesítési lépés meghiúsul, és a rendszer arra utasítja, hogy frissítse az App Service-környezetet.
az rest --method post --uri "${ASE_ID}/NoDowntimeMigrate?phase=PreMigrationUpgrade&api-version=2022-03-01"
4. Kimenő IP-címek létrehozása az új App Service Environment v3-hoz
Hozzon létre egy zoneredundancy.json nevű fájlt a régió és a zóna redundancia kiválasztásának alábbi részleteivel.
{
"location":"<region>",
"Properties": {
"zoneRedundant": "<true/false>"
}
}
Az új App Service Environment v3-zóna redundánssá alakítható, ha a meglévő környezet olyan régióban van, amely támogatja a zónaredundanciát. A zónaredundancia a tulajdonság true
beállításával zoneRedundant
konfigurálható. A zónaredundancia nem kötelező konfiguráció. Ez a konfiguráció csak az új App Service Environment v3 létrehozásakor állítható be, és később nem távolítható el.
Futtassa a következő parancsot új kimenő IP-címek létrehozásához. Ez a lépés körülbelül 15 percet vesz igénybe. Ez idő alatt ne skálázza és ne módosítsa a meglévő App Service-környezetet.
az rest --method post --uri "${ASE_ID}/NoDowntimeMigrate?phase=PreMigration&api-version=2022-03-01" --body @zoneredundancy.json
A lépés állapotának ellenőrzéséhez futtassa a következő parancsot:
az rest --method get --uri "${ASE_ID}?api-version=2022-03-01" --query properties.status
Ha a lépés folyamatban van, a következő állapotot Migrating
kapja: . Miután megkapja az állapotot Ready
, futtassa az alábbi parancsot az új kimenő IP-címek megtekintéséhez. Ha nem látja azonnal az új IP-címeket, várjon néhány percet, és próbálkozzon újra.
az rest --method get --uri "${ASE_ID}/configurations/networking?api-version=2022-03-01" --query properties.windowsOutboundIpAddresses
5. Függő erőforrások frissítése új kimenő IP-címekkel
Az új kimenő IP-címek használatával frissítse bármelyik erőforrását vagy hálózati összetevőjét, hogy az új környezet a migrálás befejezése után a kívánt módon működjön. Önnek kell elvégeznie a szükséges frissítéseket.
6. Az App Service Environment alhálózat delegálása
Az App Service Environment v3-hoz a benne lévő alhálózatnak egyetlen delegálásával kell rendelkeznie Microsoft.Web/hostingEnvironments
. A korábbi verziókhoz nem volt szükség erre a delegálásra. A migrálás előtt meg kell győződnie arról, hogy az alhálózat megfelelően van delegálva, és frissítenie kell a delegálást (ha szükséges). A delegálást az alábbi parancs futtatásával vagy az Azure Portal alhálózatára lépve frissítheti.
az network vnet subnet update --resource-group $VNET_RG --name <subnet-name> --vnet-name <vnet-name> --delegations Microsoft.Web/hostingEnvironments
7. Győződjön meg arról, hogy nincsenek zárolások a virtuális hálózaton
A virtuális hálózat zárolja a blokkplatform-műveleteket a migrálás során. Ha a virtuális hálózat zárolva van, a migrálás előtt el kell távolítania őket. Szükség esetén a migrálás befejezése után visszaadhatja a zárolásokat.
A zárolások három hatókörben létezhetnek: előfizetés, erőforráscsoport és erőforrás. Ha egy szülőhatókörre alkalmaz zárolást, az adott hatókörben lévő összes erőforrás ugyanazt a zárolást örökli. Ha zárolta az előfizetést, az erőforráscsoportot vagy az erőforrás hatókörét, az áttelepítés előtt el kell távolítania őket. A zárolásokról és a zárolásöröklésről további információt az erőforrások zárolása az infrastruktúra védelme érdekében című témakörben talál.
A következő paranccsal ellenőrizze, hogy a virtuális hálózat rendelkezik-e zárolásokkal:
az lock list --resource-group $VNET_RG --resource <vnet-name> --resource-type Microsoft.Network/virtualNetworks
Törölje a meglévő zárolásokat a következő paranccsal:
az lock delete --resource-group $VNET_RG --name <lock-name> --resource <vnet-name> --resource-type Microsoft.Network/virtualNetworks
A kapcsolódó parancsokkal ellenőrizheti, hogy az előfizetés vagy az erőforráscsoport rendelkezik-e zárolásokkal, tekintse meg a zárolások Azure CLI-referenciáját.
8. A konfigurációk előkészítése
Ha a meglévő App Service-környezet egyéni tartomány utótagot használ, az áttelepítési folyamat során konfigurálnia kell egyet az új App Service Environment v3-erőforráshoz. Az áttelepítés meghiúsul, ha nem konfigurál egyéni tartomány utótagot, és jelenleg használ egyet. Az App Service Environment v3 egyéni tartomány utótagjaival kapcsolatos további információkért, beleértve a követelményeket, a részletes utasításokat és az ajánlott eljárásokat, tekintse meg az App Service-környezetek egyéni tartomány utótagját.
Feljegyzés
Ha egyéni tartomány utótagot konfigurál, amikor hálózati engedélyeket ad hozzá az Azure Key Vaulthoz, győződjön meg arról, hogy a kulcstartó engedélyezi a hozzáférést az App Service Environment v3 új alhálózatáról.
Ezeknek a konfigurációknak a beállításához, például a korábban kiválasztott alhálózat azonosításához hozzon létre egy parameters.json nevű fájlt, amely a forgatókönyv alapján az alábbi részleteket tartalmazza. Mindenképpen használja az új App Service Environment v3-hoz kiválasztott új alhálózatot. Ne adja meg az egyéni tartomány utótagjának tulajdonságait, ha ez a funkció nem vonatkozik az áttelepítésre. Ügyeljen a tulajdonság értékére zoneRedundant
, és állítsa be ugyanazt az értéket, amelyet a kimenő IP-címgenerálási lépésben használt. Ugyanazt az értéket kell használnia a zónaredundanciához, amelyet a kimenő IP-címgenerálási lépésben használt.
Ha egyéni tartomány utótag nélkül telepít át, használja a következő kódot:
{
"Properties": {
"VirtualNetwork": {
"Id": "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Network/virtualNetworks/<virtual-network-name>/subnets/<subnet-name>"
},
"zoneRedundant": "<true/false>"
}
}
Ha felhasználó által hozzárendelt felügyelt identitást használ az egyéni tartomány utótagjának konfigurációjához, használja a következő kódot:
{
"Properties": {
"VirtualNetwork": {
"Id": "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Network/virtualNetworks/<virtual-network-name>/subnets/<subnet-name>"
},
"zoneRedundant": "<true/false>",
"customDnsSuffixConfiguration": {
"dnsSuffix": "internal.contoso.com",
"certificateUrl": "https://contoso.vault.azure.net/secrets/myCertificate",
"keyVaultReferenceIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/asev3-migration/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ase-managed-identity"
}
}
}
Ha rendszer által hozzárendelt felügyelt identitást használ az egyéni tartomány utótagjának konfigurációjához, használja a következő kódot:
{
"properties": {
"VirtualNetwork": {
"Id": "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Network/virtualNetworks/<virtual-network-name>/subnets/<subnet-name>"
},
"zoneRedundant": "<true/false>",
"customDnsSuffixConfiguration": {
"dnsSuffix": "internal.contoso.com",
"certificateUrl": "https://contoso.vault.azure.net/secrets/myCertificate",
"keyVaultReferenceIdentity": "SystemAssigned"
}
}
}
9. Migrálás az App Service Environment v3-ba, és ellenőrizze az állapotot
Miután elvégezte az összes fenti lépést, elindíthatja az áttelepítést. Győződjön meg arról, hogy tisztában van a migrálás következményeival.
Ez a lépés három-hat órát vesz igénybe. Ez idő alatt nincs alkalmazás állásidő. Ebben a lépésben a meglévő App Service-környezet skálázása, üzembe helyezése és módosítása le lesz tiltva.
Futtassa a következő parancsot az áttelepítés elindításához:
az rest --method post --uri "${ASE_ID}/NoDowntimeMigrate?phase=HybridDeployment&api-version=2022-03-01" --body @parameters.json
Futtassa a következő parancsot az áttelepítés állapotának ellenőrzéséhez:
az rest --method get --uri "${ASE_ID}?api-version=2022-03-01" --query properties.subStatus
Miután megkapja az állapotot MigrationPendingDnsChange
, a migrálás befejeződik, és rendelkezik egy App Service Environment v3-erőforrással. Az alkalmazások mostantól az új környezetben és a régi környezetben is futnak.
Az új környezet részleteinek lekéréséhez futtassa a következő parancsot:
az appservice ase show --name $ASE_NAME --resource-group $ASE_RG
Fontos
A migrálás során és a lépés során az MigrationPendingDnsChange
Azure Portal helytelen információkat jelenít meg az App Service-környezetről és az alkalmazásokról. Az Azure CLI használatával ellenőrizze a migrálás állapotát. Ha kérdése van a migrálás vagy az alkalmazások állapotával kapcsolatban, forduljon az ügyfélszolgálathoz.
Feljegyzés
Ha az áttelepítés tartalmaz egy egyéni tartomány utótagot, az egyéni tartomány utótagjának konfigurációja egy ismert hiba miatt a migrálás befejeződése után korlátozottan jelenhet meg. Az App Service-környezetnek továbbra is a várt módon kell működnie. A csökkentett állapotnak 6-8 órán belül meg kell oldania magát. Ha a konfiguráció 8 óra után romlik, vagy ha az egyéni tartomány utótagja nem működik, forduljon az ügyfélszolgálathoz.
10. Szerezze be az új App Service Environment v3 bejövő IP-címét, és frissítse a függő erőforrásokat
A migrálási folyamat két App Service-környezettel rendelkezik ebben a szakaszban. Az alkalmazások mindkét környezetben futnak. Frissítenie kell a függő erőforrásokat, hogy az új App Service Environment v3-hoz tartozó új IP-címet használhassa. Belső elérésű (ILB) App Service-környezetek esetén frissítenie kell a privát DNS-zónákat, hogy az új bejövő IP-címre mutasson.
Az új App Service Environment v3-hoz tartozó új bejövő IP-címet a következő, az App Service Environment terheléselosztó típusának megfelelő parancs futtatásával szerezheti be. Önnek kell elvégeznie a szükséges frissítéseket.
Az ILB App Service-környezetek esetében a következő parancs futtatásával kérje le a privát bejövő IP-címet:
az rest --method get --uri "${ASE_ID}?api-version=2022-03-01" --query properties.networkingConfiguration.internalInboundIpAddresses
ELB App Service-környezetek esetén kérje le a nyilvános bejövő IP-címet a következő parancs futtatásával:
az rest --method get --uri "${ASE_ID}?api-version=2022-03-01" --query properties.networkingConfiguration.externalInboundIpAddresses
11. Az ügyfélforgalom átirányítása, az App Service Environment 3-ra vonatkozó ellenőrzése és a teljes migrálás
Ebben a lépésben tesztelheti és ellenőrizheti az új App Service Environment 3-at. Alapértelmezés szerint a rendszer a forgalmat az App Service Environment v2 előtér-végpontja felé küldi. Ha ILB App Service Environment v3-at használ, tesztelheti az App Service Environment v3 előterét úgy, hogy frissíti a privát DNS-zónát az új bejövő IP-címmel. Ha ELB App Service Environment 3-at használ, a tesztelés folyamata az adott hálózati konfigurációtól függ. Az ELB-környezetek tesztelésének egyik egyszerű módja, ha frissíti a gazdagépfájlt az új App Service Environment v3 bejövő IP-cím használatára. Ha egyéni tartományok vannak hozzárendelve az egyes alkalmazásokhoz, frissítheti a DNS-üket, hogy az új bejövő IP-címre mutasson. A módosítás tesztelésével teljes mértékben ellenőrizheti az App Service Environment 3-at, mielőtt elindítja a migrálás utolsó lépését, amelyben a régi App Service-környezet törlődik. Ha probléma nélkül tudja elérni az alkalmazásokat, az azt jelenti, hogy készen áll a migrálás befejezésére.
Ha meggyőződik arról, hogy az alkalmazások a várt módon működnek, az alábbi parancs futtatásával átirányíthatja az ügyfélforgalmat az új App Service Environment 3-as verzióra. Ez a parancs a régi környezetet is törli. A lépés végrehajtásához 14 nap áll rendelkezésére. Ha 14 nap alatt nem hajtja végre ezt a lépést, a migrálás automatikusan visszaáll egy App Service Environment 2-re. Ha a lépés elvégzéséhez több mint 14 nap szükséges, forduljon az ügyfélszolgálathoz.
Ha bármilyen problémát talál, vagy ezen a ponton úgy dönt, hogy már nem szeretné folytatni az áttelepítést, forduljon az ügyfélszolgálathoz az áttelepítés visszaállításához. Ne futtassa a DNS-módosítási parancsot, ha vissza kell állítania az áttelepítést. További információ: Migrálás visszaállítása.
az rest --method post --uri "${ASE_ID}/NoDowntimeMigrate?phase=DnsChange&api-version=2022-03-01"
A lépés állapotának ellenőrzéséhez futtassa a következő parancsot:
az rest --method get --uri "${ASE_ID}?api-version=2022-03-01" --query properties.subStatus
Ebben a lépésben a állapotot CompletingMigration
kapja. Amikor megkapja az állapotot MigrationCompleted
, a forgalomátirányítási lépés befejeződik, és a migrálás befejeződött.