Az App Service Environment hálózatkezelése

Az App Service Environment a Windows- és Linux-tárolókat, webalkalmazásokat, API-alkalmazásokat, logikai alkalmazásokat és függvényalkalmazásokat üzemeltető Azure-alkalmazás Szolgáltatás egybérlős üzembe helyezése. Az App Service-környezet telepítésekor kiválaszthatja azt az Azure-beli virtuális hálózatot, amelyben üzembe szeretné helyezni. Az összes bejövő és kimenő alkalmazásforgalom a megadott virtuális hálózaton belül van. A virtuális hálózat egyetlen alhálózatán helyezi üzembe az üzembe helyezést, és semmi más nem helyezhető üzembe az alhálózatban.

Feljegyzés

Ez a cikk az App Service Environment v3-ról szól, amely izolált v2 App Service-csomagokkal használható.

Alhálózati követelmények

Delegálnia kell az alhálózatot, Microsoft.Web/hostingEnvironmentsés az alhálózatnak üresnek kell lennie.

Az alhálózat mérete befolyásolhatja az App Service-csomagpéldányok skálázási korlátait az App Service-környezetben. Éles skálázás esetén az alhálózat címterét (256 címet) javasoljuk /24 . Ha az App Service-környezetben 200 példány maximális kapacitásának közel skálázását tervezi, és a gyakori fel- és leskálázási műveleteket tervezi, javasoljuk, hogy adjon meg egy /23 címteret (512 cím) az alhálózat számára.

Ha kisebb alhálózatot használ, vegye figyelembe a következő korlátozásokat:

  • Minden egyes alhálózat öt, felügyeleti célra fenntartott címmel rendelkezik. Az App Service Environment a felügyeleti címek mellett dinamikusan skálázza a támogató infrastruktúrát, és a konfigurációtól és a terheléstől függően 7–27 címet használ. A fennmaradó címeket az App Service-csomag példányaihoz használhatja. Az alhálózat minimális mérete egy /27 címtér (32 cím).
  • Az App Service-környezetben használt bármely App Service-csomag operációs rendszere/termékváltozat-kombinációja, például az I1v2 Windows esetén minden 20 aktív példányhoz létrejön egy készenléti példány. A készenléti példányokhoz IP-címekre is szükség van.
  • Az App Service-csomagok App Service-környezetben való vertikális fel- és leskálázása során az App Service-csomag által használt IP-címek mennyisége ideiglenesen megkétszereződött, amíg a méretezési művelet befejeződik. Az új példányoknak teljes mértékben működőképesnek kell lenniük a meglévő példányok leépítése előtt.
  • A platformfrissítéseknek ingyenes IP-címekre van szükségük, hogy a frissítések a kimenő forgalom megszakítása nélkül történjenek.
  • A vertikális felskálázás, a le- vagy a műveletek befejezése után előfordulhat, hogy az IP-címek kiadása előtt rövid idő áll rendelkezésre. Ritkán ez a művelet akár 12 óra is lehet.
  • Ha elfogynak az alhálózaton belüli címek, az App Service-csomagokat az App Service-környezetben korlátozhatja. Egy másik lehetőség, hogy nagyobb késést tapasztalhat az intenzív forgalmi terhelés során, ha a Microsoft nem tudja skálázni a támogató infrastruktúrát.

Feljegyzés

A Windows-tárolók alkalmazásonként további IP-címet használnak minden App Service-csomagpéldányhoz, és ennek megfelelően kell méreteznie az alhálózatot. Ha az App Service-környezet például 2 Windows Container App Service-csomaggal rendelkezik, amelyek mindegyike 25 példányból áll, és mindegyikben 5 alkalmazás fut, 300 IP-címre és további címekre lesz szüksége a horizontális (ki- és befelé irányuló) skálázás támogatásához.

Mintaszámítás:

Minden App Service-csomagpéldányhoz: 5 Windows Container Apps = 5 IP-cím 1 IP-cím App Service-csomagpéldányonként 5 + 1 = 6 IP-cím

25 példány esetén: 6 x 25 = 150 IP-cím App Service-csomagonként

Mivel 2 App Service-csomagja van, 2 x 150 = 300 IP-címmel rendelkezik.

Címek

Az App Service Environment a következő hálózati információkkal rendelkezik a létrehozáskor:

Cím típusa Leírás
App Service Environment virtuális hálózat A virtuális hálózat üzembe helyezése.
App Service Environment alhálózat A betelepített alhálózat.
Tartomány utótagja A létrehozott alkalmazások által használt tartomány utótagja.
Virtuális IP-cím (VIP) A használt VIP-típus. A két lehetséges érték belső és külső.
Bejövő cím A bejövő cím az a cím, amelyen az alkalmazások elérhetők. Ha rendelkezik belső VIP-címmel, az az App Service Environment alhálózatának egy címe. Ha a cím külső, az egy nyilvános cím.
Alapértelmezett kimenő címek Az alkalmazások alapértelmezés szerint ezt a címet használják, amikor kimenő hívásokat kezdeményeznek az interneten.

A részleteket a portál IP-címek szakaszában találja, ahogyan az alábbi képernyőképen látható:

Képernyőkép az IP-címek részleteiről.

Az App Service-csomagok App Service-környezetben történő skálázása során az alhálózaton kívül további címeket is használhat. A használt címek száma az App Service-csomagpéldányok számától és a használt forgalomtól függően változik. Az App Service-környezetben lévő alkalmazások nem rendelkeznek dedikált címekkel az alhálózatban. Az alhálózatban egy alkalmazás által használt konkrét címek idővel megváltoznak.

Saját bejövő cím létrehozása

Saját bejövő címét is elérheti az App Service-környezetben. Ha belső VIP-vel hoz létre App Service-környezetet, statikus IP-címet adhat meg az alhálózatban. Ha egy külső VIP-vel rendelkező App Service-környezetet hoz létre, a nyilvános IP-cím erőforrás-azonosítójának megadásával saját Azure Nyilvános IP-címet használhat. A saját bejövő cím beléptetésére vonatkozó korlátozások a következők:

  • Külső VIP-vel rendelkező App Service-környezet esetén az Azure Nyilvános IP-cím erőforrásának ugyanabban az előfizetésben kell lennie, mint az App Service Environment.
  • A bejövő cím nem módosítható az App Service-környezet létrehozása után.

Portok és hálózati korlátozások

Ahhoz, hogy az alkalmazás fogadhassa a forgalmat, győződjön meg arról, hogy a bejövő hálózati biztonsági csoport (NSG) szabályai lehetővé teszik, hogy az App Service Environment alhálózat fogadja a forgalmat a szükséges portokról. A portokon kívül minden olyan porton, amelyen forgalmat szeretne fogadni, győződjön meg arról, hogy az Azure Load Balancer képes csatlakozni a 80-s porton lévő alhálózathoz. Ez a port a belső virtuális gép állapot-ellenőrzésére szolgál. Továbbra is szabályozhatja a 80-os port forgalmát a virtuális hálózatról az alhálózatra.

Érdemes konfigurálni a következő bejövő NSG-szabályt:

Forrás-/célport(ok) Irány Forrás Cél Cél
* / 80,443 Bejövő VirtualNetwork App Service Environment alhálózati tartomány Alkalmazásforgalom és belső állapot pingelési forgalmának engedélyezése

Az App Service-környezet működésének minimális követelménye a következő:

Forrás-/célport(ok) Irány Forrás Cél Cél
* / 80 Bejövő AzureLoadBalancer App Service Environment alhálózati tartomány Belső állapot pingelési forgalmának engedélyezése

Ha a minimálisan szükséges szabályt használja, előfordulhat, hogy egy vagy több szabályra van szüksége az alkalmazás forgalmához. Ha az üzembe helyezési vagy hibakeresési lehetőségek bármelyikét használja, engedélyeznie kell ezt a forgalmat az App Service Environment alhálózatra is. Ezeknek a szabályoknak a forrása lehet a virtuális hálózat, vagy egy vagy több konkrét ügyfél IP-címe vagy IP-tartománya. A cél mindig az App Service Environment alhálózati tartománya. A 80-s port belső állapot pingelési forgalma elkülönítve van a terheléselosztó és a belső kiszolgálók között. A külső forgalom nem érheti el az állapot-ping végpontot.

A bejövő normál alkalmazás-hozzáférési portok a következők:

Használat Portok
HTTP/HTTPS 80, 443
FTP/FTPS 21, 990, 10001-10020
Visual Studio távoli hibakeresés 4022, 4024, 4026
Webes üzembe helyezési szolgáltatás 8172

Feljegyzés

Ftp-hozzáférés esetén még akkor is engedélyeznie kell a standard FTP-t a 21-s porton, ha a LoadBalancerből az App Service Environment alhálózati tartományba irányuló forgalmat szeretné engedélyezni a 21-as porton, mivel ez az ftp-szolgáltatás belső állapot pingelési forgalmához használatos.

Hálózati útválasztás

Az útvonaltáblákat korlátozás nélkül állíthatja be. Az App Service-környezetből az összes kimenő alkalmazásforgalmat alagútba helyezheti egy kimenő tűzfaleszközre, például az Azure Firewallba. Ebben a forgatókönyvben csak az alkalmazásfüggőségek miatt kell aggódnia.

Az alkalmazásfüggőségek olyan végpontokat tartalmaznak, amelyekre az alkalmazásnak szüksége van a futásidőben. Az alkalmazás által hívott API-k és szolgáltatások mellett a függőségek olyan végpontok is származtathatók, mint a tanúsítvány-visszavonási lista (CRL) végpontjai és identitás-/hitelesítési végpontjai, például a Microsoft Entra-azonosító. Ha folyamatos üzembe helyezést használ az App Service-ben, előfordulhat, hogy típustól és nyelvtől függően engedélyeznie kell a végpontokat is. Kifejezetten a Linux folyamatos üzembe helyezéséhez engedélyeznie oryx-cdn.microsoft.io:443kell.

A webalkalmazás tűzfaleszközeit( például Azure-alkalmazás Gatewayt) a bejövő forgalom elé helyezheti. Így adott alkalmazásokat tehet közzé az Adott App Service-környezetben.

Az alkalmazás az egyik alapértelmezett kimenő címet használja a nyilvános végpontokra irányuló kimenő forgalomhoz. Ha testre szeretné szabni az alkalmazások kimenő címét egy App Service-környezetben, hozzáadhat egy NAT-átjárót az alhálózathoz.

Feljegyzés

A kimenő SMTP-kapcsolat (25-ös port) támogatott az App Service Environment v3-hoz. A támogatottságot annak az előfizetésnek a beállítása határozza meg, amelyben a virtuális hálózat üzembe van helyezve. Az 1. előtt létrehozott virtuális hálózatok/alhálózatok esetében. 2022. augusztusban ideiglenes konfigurációmódosítást kell kezdeményeznie a virtuális hálózaton/alhálózaton ahhoz, hogy a beállítás szinkronizálva legyen az előfizetésből. Ilyen lehet például egy ideiglenes alhálózat hozzáadása, egy NSG ideiglenes társítása vagy leválasztása, vagy egy szolgáltatásvégpont ideiglenes konfigurálása. További információ és hibaelhárítás : Kimenő SMTP-csatlakozási problémák elhárítása az Azure-ban.

Privát végpont

Ahhoz, hogy privát végpontokat engedélyezhessen az App Service-környezetben üzemeltetett alkalmazásokhoz, először engedélyeznie kell ezt a funkciót az App Service-környezet szintjén.

Az Azure Portalon keresztül aktiválhatja. Az App Service Environment konfigurációs paneljén kapcsolja be a beállítástAllow new private endpoints. Másik lehetőségként a következő parancssori felület engedélyezheti:

az appservice ase update --name myasename --allow-new-private-endpoint-connections true

További információ a privát végpontról és a webalkalmazásról: Azure Web App Private Endpoint

DNS

Az alábbi szakaszok az App Service-környezetbe bejövő és kimenő DNS-szempontokat és konfigurációt ismertetik. A példák az Azure Public Cloud tartományi utótagját appserviceenvironment.net használják. Ha más felhőket használ, például az Azure Governmentt, a megfelelő tartomány utótagját kell használnia. Az App Service Environment-tartományok esetében a rendszer a DNS-korlátok miatt 40 karakterből álló csonkolja a webhelynevet. Ha rendelkezik egy ponttal, a pont neve 19 karakterből áll.

DNS-konfiguráció az App Service-környezethez

Ha az App Service-környezet külső VIRTUÁLIS IP-címmel készült, az alkalmazások automatikusan nyilvános DNS-be kerülnek. Ha az App Service-környezet belső VIP-vel készült, az App Service-környezet létrehozásakor, ha az Azure DNS privát zónáinak automatikus konfigurálását választja, akkor a DNS a virtuális hálózaton van konfigurálva. Ha úgy dönt, hogy manuálisan konfigurálja a DNS-t, saját DNS-kiszolgálót kell használnia, vagy azure DNS privát zónákat kell konfigurálnia. A bejövő cím megkereséséhez nyissa meg az App Service Environment portált, és válassza ki az IP-címeket.

Ha saját DNS-kiszolgálót szeretne használni, adja hozzá a következő rekordokat:

  1. Hozzon létre egy zónát a következőhöz <App Service Environment-name>.appserviceenvironment.net: .
  2. Hozzon létre egy A rekordot a zónában, amely * az App Service-környezet által használt bejövő IP-címre mutat.
  3. Hozzon létre egy A rekordot abban a zónában, amely az App Service-környezet által használt bejövő IP-címre mutat @ értékre.
  4. Hozzon létre egy zónát a nevesített scmfájlban<App Service Environment-name>.appserviceenvironment.net.
  5. Hozzon létre egy A rekordot a scm zónában, amely *-ra mutat az App Service-környezet privát végpontja által használt IP-címre.

A DNS konfigurálása az Azure DNS privát zónáiban:

  1. Hozzon létre egy Azure DNS privát zónát .<App Service Environment-name>.appserviceenvironment.net
  2. Hozzon létre egy A rekordot a zónában, amely * a bejövő IP-címre mutat.
  3. Hozzon létre egy A rekordot abban a zónában, amely a @-ra mutat a bejövő IP-címre.
  4. Hozzon létre egy A rekordot abban a zónában, amely a *.scm-et a bejövő IP-címre pontokat adja.

Az alkalmazás létrehozásakor megadott alapértelmezett tartományon kívül egyéni tartományt is hozzáadhat az alkalmazáshoz. Egyéni tartománynevet anélkül állíthat be, hogy az alkalmazásokat érvényesíteni kéne. Ha egyéni tartományokat használ, győződjön meg arról, hogy konfigurálva vannak a DNS-rekordok. Az előző útmutatást követve konfigurálhatja a DNS-zónákat és -rekordokat egy egyéni tartománynévhez (cserélje le az alapértelmezett tartománynevet az egyéni tartománynévre). Az egyéni tartománynév alkalmazáskérésekhez működik, de nem működik a scm webhelyen. A scm webhely csak az appname.scm> webhelyen <érhető el.<asename.appserviceenvironment.net>.

DNS-konfiguráció FTP-hozzáféréshez

A belső terheléselosztó (ILB) App Service Environment v3-hoz való FTP-hozzáféréshez meg kell győződnie arról, hogy a DNS konfigurálva van. Konfiguráljon egy Privát Azure DNS-zónát vagy azzal egyenértékű egyéni DNS-t a következő beállításokkal:

  1. Hozzon létre egy Azure DNS privát zónát .ftp.appserviceenvironment.net
  2. Hozzon létre egy A rekordot a zónában, amely a bejövő IP-címre mutat <App Service Environment-name> .

A DNS beállítása mellett az App Service Environment konfigurációjában és az alkalmazás szintjén is engedélyeznie kell.

DNS-konfiguráció az App Service-környezetből

Az App Service-környezetben lévő alkalmazások a virtuális hálózat által konfigurált DNS-t használják. Ha azt szeretné, hogy egyes alkalmazások egy másik DNS-kiszolgálót használjanak, manuálisan is beállíthatja alkalmazásonként, az alkalmazásbeállítások és WEBSITE_DNS_SERVERWEBSITE_DNS_ALT_SERVERa . WEBSITE_DNS_ALT_SERVER konfigurálja a másodlagos DNS-kiszolgálót. A másodlagos DNS-kiszolgálót csak akkor használja a rendszer, ha nincs válasz az elsődleges DNS-kiszolgálótól.

További erőforrások