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.
Ez a cikk részletes leírásokat és követelményeket tartalmaz az Application Gateway for Containers összetevőire vonatkozóan. Ismerteti, hogyan fogadja el az Application Gateway for Containers a bejövő kéréseket, és hogyan irányítja őket egy háttérbeli célhoz. A tárolókhoz készült Application Gateway általános áttekintését az Application Gateway for Containers ismertetése tartalmazza.
Alapösszetevők
- Az Application Gateway for Containers-erőforrás egy azure-beli szülőerőforrás, amely üzembe helyezi a vezérlősíkot.
- A vezérlősík az ügyfél szándéka alapján vezényli a proxykonfigurációt.
- Az Application Gateway for Containers két gyermekerőforrással rendelkezik: társításokkal és előtérekkel.
- A gyermekerőforrások kizárólag a konténeres Application Gateway for Containers szülőerőforrásaihoz tartoznak, és nem oszthatók meg más Application Gateway for Containers erőforrásokkal.
Application Gateway for Containers előtérbeli
- Az Application Gateway for Containers előtérbeli erőforrása az Application Gateway for Containers szülőerőforrásának Azure-gyermekerőforrása.
- A konténerekhez készült Application Gateway frontend határozza meg, hogy az ügyfélforgalom milyen belépési pontot használ egy adott Application Gateway for Containers esetében.
- Egy frontend nem társítható egynél több Application Gateway for Containers eszközhöz.
- CNAME rekordot az egyes front-endek által biztosított egyedi teljes tartománynevekkel (FQDN) hozhat létre.
- A privát IP-címek jelenleg nem támogatottak.
- Egyetlen Konténer Alkalmazás-átjáró több frontendet is támogat.
Alkalmazás átjáró a konténerekhez társítások
- Az Application Gateway for Containers társított erőforrása az Azure Application Gateway for Containers szülőerőforrás gyermekerőforrása.
- Az Application Gateway for Containers társítás meghatározza egy virtuális hálózat kapcsolódási pontját. A társítás egy társítási erőforrás és egy delegált Azure-alhálózat közötti 1:1 leképezést jelenti.
- Az Application Gateway for Containers úgy lett tervezve, hogy többféle társítást is lehetővé tegyen.
- Jelenleg a társítások száma legfeljebb 1 lehet.
- Társítás létrehozásakor a mögöttes adatsík ki van építve, és egy alhálózathoz csatlakozik a meghatározott virtuális hálózat alhálózatán belül.
- Minden társításnak feltételeznie kell, hogy legalább 256 cím érhető el az alhálózatban a kiépítéskor.
- Legalább /24 alhálózati maszk minden telepítéshez (feltéve, hogy az alhálózaton korábban nincsenek erőforrások kiépítve).
- Ha több Olyan Application Gatewayt szeretne üzembe helyezni a tárolókhoz, amelyek azonos alhálózattal osztoznak, számítsa ki a szükséges címeket az n×256 értékével, ahol n egyenlő a Tárolókhoz készült Application Gateway-erőforrások számával. Ez feltételezi, hogy mindegyik egy társításból áll.
- A tárolókhoz készült Application Gateway for Containers összes társító erőforrásának ugyanabban a régióban kell lennie, mint az Application Gateway for Containers szülőerőforrásának.
- Legalább /24 alhálózati maszk minden telepítéshez (feltéve, hogy az alhálózaton korábban nincsenek erőforrások kiépítve).
Alkalmazás átjáró konténerhez ALB Controller
- A Tárolókhoz készült Application Gateway ALB-vezérlő egy Kubernetes telepítés, amely az Application Gateway for Containers konfigurálását és üzembe helyezését vezényli azáltal, hogy figyeli a Kubernetes egyéni erőforrásait és erőforrás-konfigurációit, például az Ingress, az Átjáró és az ApplicationLoadBalancer elemeket. Arm és Application Gateway for Containers konfigurációs API-kat is használ a konfiguráció propagálásához az Application Gateway for Containers Azure üzembe helyezéséhez.
- Helm használatával helyezd üzembe vagy telepítsd az ALB-vezérlőt.
- Az ALB-vezérlő két működő podból áll.
- Az alb-controller pod vezényli az ügyfél szándékát az Application Gateway for Containers terheléselosztási konfigurációjában.
- Az alb-controller-bootstrap pod kezeli a CRD-ket.
Az Application Gateway for Containers biztonsági szabályzata
- Az Application Gateway for Containers biztonsági szabályzata az ALB-vezérlő által használandó biztonsági konfigurációkat (például WAF) határozza meg.
- Egyetlen Application Gateway for Containers-erőforrás több biztonsági szabályzatra is hivatkozhat.
- Jelenleg az egyetlen biztonsági szabályzattípus a
wafwebalkalmazási tűzfal képességeire vonatkozik. - A
wafbiztonsági szabályzat a biztonsági szabályzat erőforrása és egy webalkalmazási tűzfalszabályzat közötti egy-az-egyhez megfeleltetés.- Egy definiált Application Gateway for Containers-erőforráshoz tetszőleges számú biztonsági szabályzatban csak egy webalkalmazási tűzfalszabályzatra hivatkozhat.
Application Gateway for Containers AKS felügyelt bővítmény
Az Application Gateway for Containers-hez készült AKS bővítmény biztosítja az AKS által felügyelt üzembe helyezési élményt az ALB-vezérlő számára, így nincs szükség a helm chart manuális üzembe helyezésére.
A felügyelt bővítmény használatának előnyei a helm alapján történő üzembe helyezéssel szemben:
- Felügyelt frissítések: Nincs szükség a Helm-diagramok manuális frissítésére; frissítéseket az AKS felügyeli.
-
Automatizált identitáskezelés: A bővítmény automatikusan létrehozza és konfigurálja a felügyelt identitást (
applicationloadbalancer-<cluster-name>) a szükséges engedélyekkel. -
Egyszerűsített alhálózat-konfiguráció: A megfelelő delegálással automatikusan kiépül egy dedikált alhálózat (
aks-appgateway). - Csökkentett konfigurációs összetettség: Nincs szükség az összevont hitelesítő adatok vagy szerepkör-hozzárendelések manuális beállítására.
- Az AKS automatikus támogatása: Az AKS Automatikus fürtök használatakor bővítménytelepítésre van szükség.
Az Azure/általános fogalmak
Magánhálózati IP-cím
- A privát IP-címek nincsenek explicit módon definiálva Azure Resource Manager-erőforrásként. A magánhálózati IP-címek egy adott virtuális hálózat alhálózatán belüli adott gazdagépcímre utalnak.
Alhálózat delegálása
- A Microsoft.ServiceNetworking/trafficControllers az Application Gateway for Containers által elfogadott névtér, amelyet delegálhat egy virtuális hálózat alhálózatára.
- A delegáláskor nem hoz létre Application Gateway for Containers erőforrásokat, és nincs kizárólagos hozzárendelés az Application Gateway for Containers társítási erőforrásához.
- Tetszőleges számú alhálózat rendelkezhet olyan alhálózat-delegálással, amely megegyezik vagy eltér a tárolókhoz készült Application Gateway-hez. A definiálás után nem építhet ki más erőforrásokat az alhálózatba, kivéve, ha a szolgáltatás implementációja kifejezetten meghatározza.
Felhasználó által hozzárendelt felügyelt identitás
- Az Azure-erőforrások felügyelt identitásai nem igénylik a hitelesítő adatok kódban való kezelését.
- A tárolókhoz készült Application Gateway módosításához minden Azure Load Balancer-vezérlőhöz szükség van egy felhasználó által hozzárendelt felügyelt identitásra.
- Az AppGw for Containers Configuration Manager egy beépített RBAC-szerepkör, amely lehetővé teszi az ALB-vezérlő számára az Application Gateway for Containers erőforrás elérését és konfigurálását.
Megjegyzés:
Az AppGw for Containers Configuration Manager szerepkör olyan adatműveleti engedélyekkel rendelkezik, amelyekkel a tulajdonosi és közreműködői szerepkörök nem rendelkeznek. Fontos, hogy megfelelő engedélyeket delegáljon annak érdekében, hogy az ALB-vezérlő ne módosítsa az Application Gateway for Containers szolgáltatást.
Hogyan fogadja az Application Gateway a konténerekhez érkezett kéréseket
Minden Application Gateway for Containers előtér egy generált, teljes tartománynevet biztosít, amelyet az Azure kezel. Használhatja a teljes tartománynevet (FQDN) változtatás nélkül, vagy maszkolhatja egy CNAME rekorddal.
Mielőtt egy ügyfél kérést küld az Application Gateway for Containersnek, az ügyfél felold egy CNAME-t, amely az előtérbeli teljes tartománynévre mutat, vagy az ügyfél közvetlenül egy DNS-kiszolgáló használatával oldja fel az Application Gateway for Containers által biztosított teljes tartománynevet.
A DNS-feloldó lefordítja a DNS-rekordot egy IP-címre.
Amikor az ügyfél kezdeményezi a kérést, a megadott DNS-név állomásfejlécként lesz átadva a megadott előtéren lévő Application Gateway for Containersnek.
Az útválasztási szabályok halmaza kiértékeli, hogyan kell kezdeményezni az adott gazdagépnévre vonatkozó kérést egy meghatározott háttérbeli cél felé.
Hogyan irányítja a kérést az Application Gateway for Containers?
HTTP/2 kérelmek
Az Application Gateway for Containers http/2 és HTTP/1.1 protokollt is támogat az ügyfél és az előtér közötti kommunikációhoz. A HTTP/2 beállítás mindig engedélyezve van, és nem módosítható. Ha az ügyfelek inkább a HTTP/1.1-et használják a tárolókhoz készült Application Gateway előtérbeli kommunikációjára, folytathatják a tárgyalásokat ennek megfelelően.
A tárolókhoz készült Application Gateway és a háttérbeli cél közötti kommunikáció mindig HTTP/1.1-en keresztül történik, kivéve a HTTP/2-t használó gRPC-t.
A kérelem módosítása
Az Application Gateway for Containers három további fejlécet szúr be az összes kérésbe, mielőtt kéréseket kezdeményez egy háttérbeli célhoz:
- x-forwarded-for
- x-forwarded-proto
- x-request-id
Az x-forwarded-for az eredeti kérelmező ügyfél IP-címe. Ha a kérelem proxyn keresztül érkezik, a fejléc értéke hozzáfűzi a kapott címet, vesszővel tagolt. Például: 1.2.3.4,5.6.7.8; ahol az 1.2.3.4 az ügyfél IP-címe a proxynak az Application Gateway for Containers előtt, az 5.6.7.8 pedig a tárolókhoz készült Application Gateway felé irányuló forgalmat továbbító proxy címe.
Az x-forwarded-proto az Application Gateway for Containers által az ügyféltől kapott protokollt adja vissza. Az érték http vagy https.
Az x-request-id egy egyedi guid, amelyet az Application Gateway for Containers minden ügyfélkéréshez létrehoz, és a továbbított kérésben a háttérbeli célnak jelenik meg. A guid 32 alfanumerikus karakterből áll, kötőjelekkel elválasztva (például: aaaa000-bb11-2222-33cc-444444dddddddd). Ezzel a guidtal korrelálhat egy kérést, amelyet az Application Gateway for Containers fogad és kezdeményez egy háttérbeli célhoz a hozzáférési naplókban meghatározott módon.
Kérelem időtúllépései
A Application Gateway for Containers a következő időtúllépéseket érvényesíti az ügyfél, az Application Gateway for Containers és a háttérrendszer közötti kérelmek elindítása és fenntartása során.
| Időkorlát | Időtartam | Leírás |
|---|---|---|
| Kérelem időtúllépése | 60 másodperc | A tárolókhoz készült Application Gateway várakozási ideje a háttérbeli célválaszra. |
| HTTP-időtúllépés tétlenség miatt | 5 perc | A HTTP-kapcsolat bezárása előtti tétlen időkorlát. |
| Stream inaktivitás időtúllépése | 5 perc | Inaktív időtúllépés egy egyedi stream bezárása előtt, amelyet egy HTTP-kapcsolat hordoz. |
| Felsőbb rétegbeli csatlakozás időtúllépése | 5 másodperc | A háttérbeli célhoz való csatlakozás létrehozásának ideje. |
Megjegyzés:
A kérés időkorlátja szigorúan kikényszeríti a kérés befejezését a meghatározott időtartamon belül, függetlenül attól, hogy az adatok aktívan streamelnek-e, vagy a kérés tétlen. Ha például nagy fájlletöltéseket szolgál ki, és a méret vagy a lassú átvitel miatt az átvitel várhatóan 60 másodpercnél hosszabb időt vesz igénybe, fontolja meg a kérés időtúllépési értékének növelését vagy 0 értékre állítását.
Connectivity
A tárolókhoz készült Application Gateway sikeres működéséhez az alábbi csatlakozási követelmények szükségesek.
ALB-vezérlő kimenő csatlakozási lehetősége
| Végpont | Port | Alkalmazás célja |
|---|---|---|
| management.azure.com | 443-as TCP | Azure ARM API |
| login.microsoftonline.com | 443-as TCP | Entra AD-hitelesítés |
| *.oic.prod-aks.azure.com | 443-as TCP | AKS OIDC-kiállító (Számítási feladat identitása) |
| *.alb.azure.com | 443-as TCP | Konfigurációs végpont |
| mcr.microsoft.com | 443-as TCP | Konténerképek Helm telepítéshez |
| DNS-feloldás | UDP 53 | Az AKS alapértelmezett telepítésében az ALB-vezérlő lekérdezi a coreDNS/kube-dns-t a fürtben |
ALB-vezérlő bejövő kapcsolata
Megjegyzés:
Ezek a bejövő portok a ClusterIP szolgáltatáson keresztül érhetők el, és nem jelennek meg közvetlenül az interneten. Ezek ki vannak téve, hogy segítsenek a hibakeresésben / diagnosztikában, és szükség esetén hálózati szabályzattal blokkolhatók.
| Port | Név | Alkalmazás célja |
|---|---|---|
| TCP 8000 | háttérrendszer állapota | Háttér-egészség végpont (/backendHealth) |
| TCP 8001 | metrikák | Prometheus metrics endpoint (/metrics) |
Előtérbeli kapcsolat
A tárolókhoz készült Application Gateway minden frontendje a következő formátumú: *.fzXX.alb.azure.com, ahol XX 0-99 közötti numerikus számjegyek. Az előtér csak a 443-at és a 80-at figyelheti.