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.
Az Application Gateway Ingress Controller (AGIC) egy Kubernetes-alkalmazás, amely lehetővé teszi az Azure Kubernetes Service (AKS) fürtök számára a natív Azure Application Gateway L7 terheléselosztó használatát a munkaterhelések internetes elérhetővé tételéhez. Az AGIC figyeli az általa üzemeltetett Kubernetes-fürtöt, és folyamatosan frissíti az Application Gatewayt, hogy a kiválasztott szolgáltatások elérhetők legyenek az interneten.
Az Ingress vezérlő a saját podjában fut az AKS-fürtön. Az AGIC a Kubernetes-erőforrások egy részét figyeli a módosításokhoz. Az AKS-fürt állapota Application Gateway-specifikus konfigurációra lesz alakítva, majd alkalmazva lesz az Azure Resource Manager (ARM)-re.
Ebben a cikkben megismerheti az AGIC előnyeit, az üzembe helyezési lehetőségeket (Helm és AKS bővítmény), valamint a támogatott tárolóhálózat-konfigurációkat.
Tipp
Fontolja meg az Application Gateway for Containers használatát a Kubernetes bejövő megoldásához. További információkért lásd: Rövid útmutató: Az Application Gateway telepítése konténeres ALB-vezérlőhöz.
Az Application Gateway bejövőforgalom-vezérlőjének előnyei
Az AGIC segít kiküszöbölni annak szükségességét, hogy egy másik terheléselosztót vagy nyilvános IP-címet kelljen használni az AKS-fürt előtt. Elkerüli a többszöri ugrást az adatútvonalon, mielőtt a kérések elérik az AKS-fürtöt. Az Application Gateway közvetlenül a privát IP-címükkel kommunikál a podokkal, és nem igényel NodePort- vagy KubeProxy-szolgáltatásokat. Ez a funkció jobb teljesítményt is biztosít a telepítések számára.
A Ingress Controllert csakis a Standard_v2 és a WAF_v2 SKU-k támogatják, amelyek lehetővé teszik az automatikus skálázás előnyeit. Az Application Gateway reagálhat a forgalom terhelésének növekedésére vagy csökkenésére, és ennek megfelelően méretezhető anélkül, hogy az AKS-fürtből bármilyen erőforrást használ.
Az Application Gateway használata az AGIC mellett TLS-szabályzat és Web Application Firewall (WAF) funkciók biztosításával is segít megvédeni az AKS-fürtöt.
Az AGIC a Kubernetes Ingress erőforrásán keresztül van konfigurálva, a szolgáltatások és üzembe helyezések/podok mellett. A Natív Azure Application Gateway L7 terheléselosztó használatával az AGIC a következő funkciókat biztosítja:
- URL-útválasztás
- Cookie-alapú affinitás
- TLS-visszafejtés
- Teljes útvonalú TLS
- Nyilvános, privát és hibrid webhelyek támogatása
- Integrált webalkalmazási tűzfalszolgáltatás
Figyelmeztetés
Alapértelmezés szerint az AGIC feltételezi a társított Application Gateway teljes tulajdonjogát. Az AGIC felülírja az összes meglévő Application Gateway-konfigurációt, amely nincs definiálva a Kubernetes Ingressz erőforrásokban. Az AGIC engedélyezésekor a rendszer eltávolítja vagy lecseréli az Application Gatewayen korábban konfigurált figyelőket, háttérkészleteket, szabályokat vagy egyéb beállításokat. Mielőtt engedélyezi az AGIC-t egy meglévő Application Gatewayen, biztonsági másolatot készíthet az Application Gateway konfigurációjáról úgy, hogy exportálja a sablont a Azure portálról. További információ: Az Application Gateway központi telepítésének biztonsági mentése.
Ha az AGIC-nek együtt kell működnie a meglévő Application Gateway-konfigurációkkal, olvassa el az megosztott Application Gateway-telepítés beállítását (csak Helm esetén).
A Helm üzembe helyezése és az AKS-bővítmény közötti különbség
Az AGIC-t üzembe helyezheti az AKS-fürtön a Helm vagy az AKS bővítményként való használatával. Az AGIC AKS-bővítményként való üzembe helyezésének elsődleges előnye, hogy egyszerűbb, mint a Helmen keresztüli üzembe helyezés. Új beállítás esetén üzembe helyezhet egy új Application Gatewayt és egy új AKS-fürtöt, amelyben az AGIC engedélyezve van bővítményként az Azure CLI egy sorában. A bővítmény egy teljes mértékben felügyelt szolgáltatás is, amely további előnyöket biztosít, például az automatikus frissítéseket és a nagyobb támogatást. Az AGIC (Helm és AKS bővítmény) üzembe helyezésének mindkét módját teljes mértékben támogatja a Microsoft. Emellett a bővítmény jobb integrációt tesz lehetővé az AKS-sel első osztályú bővítményként.
Bár az AGIC-bővítményt podként helyezi üzembe az AKS-fürtön, a Helm üzembe helyezési verziója és az AGIC bővítményverziója között van néhány különbség. Az alábbi lista a különbségeket emeli ki:
- A Helm üzembehelyezési értékei nem módosíthatók az AKS-bővítményen:
-
verbosityLevelalapértelmezés szerint 5 értékre van állítva -
usePrivateIpalapértelmezés szerint false (hamis) értékre van állítva; ezt a beállítást a use-private-ip annotáció használatával írhatja felül - A
sharednem támogatott a bővítményen. - A
reconcilePeriodSecondsnem támogatott a bővítményen. - A
armAuth.typenem támogatott a bővítményen.
-
- A Helmen keresztül üzembe helyezett AGIC támogatja a Tiltotttargeteket, ami azt jelenti, hogy az AGIC konfigurálhatja az Application Gatewayt kifejezetten AKS-fürtökhöz anélkül, hogy hatással lenne más meglévő háttérrendszerekre. Az AGIC-bővítmény jelenleg nem támogatja ezt a képességet.
- Mivel az AGIC-bővítmény egy felügyelt szolgáltatás, automatikusan megkapja az AGIC-bővítmény legújabb verziójának frissítéseit. Ezzel szemben, ha az AGIC-t a Helmen keresztül telepíti, manuálisan kell frissítenie az AGIC-t.
Feljegyzés
AKS-fürtönként csak egy AGIC-bővítményt helyezhet üzembe, és minden AGIC-bővítmény jelenleg csak egy Application Gatewayt célozhat meg. Azoknál az üzemelő példányoknál, amelyek fürtönként több AGIC-t vagy egy Application Gatewayt megcélzó több AGI-t igényelnek, használja a Helmen keresztül üzembe helyezett AGIC-t.
A Helm és az AGIC bővítmény sem támogatja az ExternalName szolgáltatást.
Kontejnerhálózatok és AGIC
Az Application Gateway bejövőforgalom-vezérlője az alábbi AKS-hálózati ajánlatokat támogatja:
- Kubenet
- CNI
- CNI-átfedés
Azure CNI és Azure CNI Overlay a két ajánlott lehetőség az Application Gateway Ingress Controller számára. Hálózati modell kiválasztásakor vegye figyelembe az egyes CNI beépülő modulok használati eseteit és az általa használt hálózati modell típusát:
| CNI beépülő modul | Hálózatkezelési modell | Használati esetek kiemelései |
|---|---|---|
| Azure CNI Overlay | Átfedő réteg | - A legjobb a virtuális hálózat IP-címének megőrzéséhez – Az API Server által támogatott csomópontok maximális száma + csomópontonként 250 pod - Egyszerűbb konfiguráció -Nincs közvetlen külső pod IP-hozzáférés |
| Azure CNI Pod alhálózat | Lapos | – Közvetlen külső podhozzáférés - Módok a virtuális hálózat hatékony IP-használatának és nagy fürtméretű támogatásához |
| Azure CNI-csomópont alhálózat | Lapos | – Közvetlen külső podhozzáférés - Egyszerűbb konfiguráció - Korlátozott skálázás - A virtuális hálózati IP-címek nem hatékony használata |
Amikor az Application Gateway for Containerst olyan fürtbe építi be, amelyben engedélyezve van a CNI átfedése vagy a CNI, az Application Gateway for Containers automatikusan észleli a kívánt hálózati konfigurációt. A CNI Overlay vagy a CNI megadásához nem kell módosítania a Gateway vagy az Ingress API konfigurációját.
Ha Azure CNI-átfedést használ, vegye figyelembe a következő korlátozásokat:
- AGIC-vezérlő: A CNI-átfedés kihasználásához az 1.9.1-es vagy újabb verziót kell futtatnia.
- Alhálózat mérete: Az Application Gateway alhálózatának legfeljebb /24 előtagnak kell lennie; alhálózatonként csak egy üzemelő példány támogatott.
- Alhálózat-delegálás: Az Application Gateway alhálózatának rendelkeznie kell a Microsoft.Network/applicationGateways alhálózat-delegálásával.
- Regionális virtuális hálózatok közötti társviszony-létesítés: Az Application Gateway nem helyezhető üzembe egy régióban lévő virtuális hálózaton, valamint az AKS-fürtcsomópontokon ugyanabban a régióban lévő virtuális hálózaton.
- Globális virtuális hálózati peering: Az Application Gateway nem helyezhető üzembe egy virtuális hálózaton az egyik régióban, miközben az AKS-fürt csomópontok egy másik régió virtuális hálózatában vannak.
- Az Azure CNI-átfedés az Application Gateway Ingress vezérlővel nem támogatott az Azure Government felhőben, sem a Microsoft Azure-ben, amelyet a 21Vianet üzemeltet (Azure Kínában).
Feljegyzés
Az Application Gateway bejövőforgalom-vezérlője automatikusan észleli az AKS-fürt hálózati kubenetről vagy CNI-ről CNI Overlay-re való frissítését. Ütemezze a frissítést egy karbantartási időszak alatt, mivel forgalmi fennakadások léphetnek fel. A vezérlő a klaszterfrissítés után néhány percet is igénybe vehet a CNI Overlay támogatásának észleléséhez és konfigurálásához.
Figyelmeztetés
A frissítés előtt győződjön meg arról, hogy az Application Gateway alhálózata /24-es vagy kisebb alhálózat. A CNI-ről a nagyobb alhálózattal (például /23) rendelkező CNI-átfedésre való frissítés kimaradáshoz vezet, és megköveteli, hogy az Application Gateway alhálózatát egy támogatott alhálózatmérettel hozza létre újra.
Következő lépések
- AKS-bővítmény zöldmezős üzembe helyezése: Útmutatás az AGIC-bővítmény, az AKS és az Application Gateway blank-slate-infrastruktúrán való telepítéséhez.
- AKS-bővítmény brownfieldi üzembe helyezése: Telepítse az AGIC-bővítményt egy meglévő Application Gateway-átjáróval rendelkező AKS-fürtön.
- Helm Greenfield Deployment: Az AGIC telepítése Helm segítségével, új AKS-fürt és új Application Gateway egy üres infrastruktúrán.
- Helm Brownfield Deployment: Az AGIC üzembe helyezése Helmen keresztül egy meglévő AKS-fürtön és egy alkalmazási átjárón.