Azure Container Networking Interface (CNI) – Átfedéses hálózatkezelés
Az Azure CNI Overlay használatával a fürtcsomópontok egy Azure-beli virtuális hálózat (VNet) alhálózatán lesznek üzembe helyezve. A podok egy privát CIDR-ből származó IP-címek, logikailag eltérnek a csomópontokat üzemeltető virtuális hálózattól. A fürt pod- és csomópontforgalma átfedési hálózatot használ. A hálózati címfordítás (NAT) a csomópont IP-címét használja a fürtön kívüli erőforrások eléréséhez. Ez a megoldás jelentős mennyiségű virtuális hálózati IP-címet takarít meg, és lehetővé teszi a fürt nagy méretűre való skálázását. További előnye, hogy a privát CIDR-t újra felhasználhatja a különböző AKS-fürtökben, ami kibővíti az Azure Kubernetes Service (AKS) tárolóalapú alkalmazásai számára rendelkezésre álló IP-területet.
Átfedéses hálózatkezelés áttekintése
Az átfedéses hálózatkezelésben csak a Kubernetes-fürtcsomópontok vannak hozzárendelve IP-címekhez az alhálózatokból. A podok a fürt létrehozásakor megadott privát CIDR-ből fogadnak IP-címeket. Minden csomóponthoz ugyanabból /24
a CIDR-ből kifaragott címtér van hozzárendelve. A fürtök méretezésekor létrehozott további csomópontok automatikusan kapnak /24
címtereket ugyanabból a CIDR-ből. Az Azure CNI ip-címeket rendel a podokhoz erről a /24
területről.
Külön útválasztási tartomány jön létre a pod privát CIDR-területének Azure Networking stackjében, amely átfedési hálózatot hoz létre a podok közötti közvetlen kommunikációhoz. Nincs szükség egyéni útvonalak kiépítésére a fürt alhálózatán, és nem kell beágyazási módszert használni a podok közötti forgalom bújtatásához, amely a podok közötti kapcsolati teljesítményt nyújtja a virtuális hálózaton lévő virtuális gépekhez hasonló podok között. A podokon futó számítási feladatok nem is tudják, hogy a hálózati címek kezelése folyamatban van.
A fürtön kívüli végpontokkal( például a helyszíni és a társhálózattal rendelkező virtuális hálózatokkal) folytatott kommunikáció a csomópont IP-címének NAT-on keresztüli használatával történik. Az Azure CNI lefordítja a forgalom forrás IP-címét (a pod átfedési IP-címét) a virtuális gép elsődleges IP-címére, amely lehetővé teszi, hogy az Azure Hálózatkezelési verem a forgalmat a célhoz irányozza. A fürtn kívüli végpontok nem tudnak közvetlenül csatlakozni egy podhoz. A pod alkalmazását Kubernetes Load Balancer-szolgáltatásként kell közzétennie, hogy elérhető legyen a virtuális hálózaton.
A standard termékváltozatú Load Balancer vagy a felügyelt NAT-átjáró használatával kimenő (kimenő) kapcsolatot biztosíthat az internethez overlay podokhoz. A kimenő forgalmat úgy is szabályozhatja, hogy a fürt alhálózatán a felhasználó által megadott útvonalakkal egy tűzfalra irányítja.
Konfigurálhatja a fürthöz való bejövő kapcsolatot egy bejövőforgalom-vezérlővel, például Nginx vagy HTTP-alkalmazás útválasztásával. A bejövő kapcsolatok nem konfigurálhatók Azure-alkalmazás Gateway használatával. További részletekért tekintse meg az Azure CNI-átfedés korlátozásait.
A kubenet és az Azure CNI átfedése közötti különbségek
Az alábbi táblázat részletes összehasonlítást nyújt a kubenet és az Azure CNI Overlay között:
Terület | Azure CNI Overlay | kubenet |
---|---|---|
Fürtméretezés | 5000 csomópont és 250 pod/csomópont | 400 csomópont és 250 pod/csomópont |
Hálózati konfiguráció | Egyszerű – nincs szükség további konfigurációkra a podok hálózatkezeléséhez | Összetett – útválasztási táblákat és UDR-eket igényel a fürt alhálózatán a podok hálózatkezeléséhez |
Pod-kapcsolat teljesítménye | Teljesítmény egy virtuális hálózatban lévő virtuális gépekkel egyenértékben | Az extra ugrás kisebb késést eredményez |
Kubernetes hálózati házirendek | Azure Hálózati szabályzatok, Calico, Cilium | Calico |
Támogatott operációsrendszer-platformok | Linux és Windows Server 2022, 2019 | Csak Linux |
IP-cím tervezése
Fürtcsomópontok
Az AKS-fürt beállításakor győződjön meg arról, hogy a virtuális hálózat alhálózatai elegendő helyet foglalnak a jövőbeli skálázáshoz. Az egyes csomópontkészleteket hozzárendelheti egy dedikált alhálózathoz.
Egy /24
alhálózat legfeljebb 251 csomópontot képes elférni, mivel az első három IP-cím felügyeleti feladatokhoz van fenntartva.
Podok
Az átfedési megoldás minden csomóponthoz hozzárendel egy /24
címteret a fürt létrehozásakor megadott magánhálózati CIDR-ből a podokhoz. A /24
méret rögzített, és nem növelhető vagy csökkenthető. Egy csomóponton legfeljebb 250 pod futtatható.
A podok IP-címtartományának tervezésekor vegye figyelembe a következő tényezőket:
- Győződjön meg arról, hogy a magánhálózati CIDR elég nagy ahhoz, hogy címtereket biztosítson
/24
az új csomópontokhoz a fürt jövőbeli bővítésének támogatásához. - Ugyanazt a pod CIDR-helyet több független AKS-fürtön is használhatja ugyanazon a virtuális hálózaton.
- A pod CIDR-területe nem lehet átfedésben a fürt alhálózati tartományával.
- A pod CIDR-területe nem fedheti át a közvetlenül csatlakoztatott hálózatokat (például virtuális hálózatok közötti társviszony-létesítést, ExpressRoute-t vagy VPN-t). Ha a külső forgalom forrás IP-címei a podCIDR tartományban vannak, a fürttel való kommunikációhoz az SNAT-en keresztül egy nem átfedésben lévő IP-címre kell fordítást igényelnie.
A Kubernetes Service címtartománya
A CIDR szolgáltatáscím mérete a létrehozni kívánt fürtszolgáltatások számától függ. Kisebbnek kell lennie, mint /12
. Ez a tartomány nem lehet átfedésben a pod CIDR-tartományával, a fürt alhálózati tartományával és a társhálózatokban és a helyszíni hálózatokban használt IP-tartománnyal.
A Kubernetes DNS-szolgáltatás IP-címe
Ez az IP-cím a fürtszolgáltatás felderítése által használt Kubernetes-szolgáltatás címtartományán belül található. Ne használja az első IP-címet a címtartományban, mivel ezt a címet használja a kubernetes.default.svc.cluster.local
címhez.
Hálózati biztonsági csoportok
Az Azure CNI Overlay-t tartalmazó pod-pod-forgalom nincs beágyazva, és az alhálózati hálózati biztonsági csoport szabályait alkalmazza a rendszer. Ha az alhálózati NSG megtagadási szabályokat tartalmaz, amelyek hatással lennének a pod CIDR-forgalmára, győződjön meg arról, hogy a megfelelő fürtfunkció biztosítása érdekében a következő szabályok vannak érvényben (az AKS-kimenő forgalomra vonatkozó összes követelmény mellett):
- Forgalom a csomópont CIDR-ből a csomóponti CIDR-be az összes porton és protokollon
- Forgalom a csomópont CIDR-ből a pod CIDR-be az összes porton és protokollon (a szolgáltatásforgalom útválasztásához szükséges)
- A pod CIDR-ről a pod CIDR-ére irányuló forgalom minden porton és protokollon (a podról podra és podra irányuló szolgáltatásforgalomhoz szükséges, beleértve a DNS-t is)
A podról a pod CIDR-blokkján kívüli bármely helyre érkező forgalom az SNAT-t használja a forrás IP-címének azon csomópont IP-címére való beállításához, ahol a pod fut.
Ha korlátozni szeretné a fürt számítási feladatai közötti forgalmat, javasoljuk, hogy használjon hálózati házirendeket.
Podok maximális száma csomópontonként
A podok csomópontonkénti maximális számát a fürt létrehozásakor vagy új csomópontkészlet hozzáadásakor konfigurálhatja. Az Azure CNI-átfedés alapértelmezett és maximális értéke 250,, a minimális érték pedig 10. A csomópontkészlet létrehozásakor konfigurált csomópontonkénti podok maximális száma csak az adott csomópontkészlet csomópontjaira vonatkozik.
Használandó hálózati modell kiválasztása
Az Azure CNI két IP-címzési lehetőséget kínál a podokhoz: a hagyományos konfiguráció, amely virtuális hálózati IP-címeket rendel a podokhoz és az átfedéses hálózatkezeléshez. Az AKS-fürthöz a rugalmasság és a speciális konfigurációs igények közötti egyensúly a választás. Az alábbi szempontok segítenek felvázolni, hogy az egyes hálózati modellek mikor lehetnek a legmegfelelőbbek.
Átfedéses hálózatkezelés használata a következő esetekben:
- Nagy számú podra szeretne méretezni, de korlátozott IP-címterülettel rendelkezik a virtuális hálózaton.
- A pod kommunikációjának nagy része a fürtön belül van.
- Nincs szükség speciális AKS-funkciókra, például virtuális csomópontokra.
Használja a hagyományos virtuális hálózat lehetőséget a következő esetekben:
- Rendelkezik elérhető IP-címtérrel.
- A podok közötti kommunikáció legnagyobb része a fürtön kívüli erőforrások felé történik.
- A fürtön kívüli erőforrásoknak közvetlenül kell elérniük a podokat.
- Speciális AKS-funkciókra, például virtuális csomópontokra van szüksége.
Korlátozások az Azure CNI-átfedéssel
Az Azure CNI Overlay a következő korlátozásokkal rendelkezik:
- Az Application Gateway nem használható bejövőforgalom-vezérlőként (AGIC).
- A virtuálisgép-rendelkezésre állási csoportok (VMAS) nem támogatottak.
- A csomópontkészletekben nem használhat DCsv2 sorozatú virtuális gépeket. A bizalmas számítástechnikai követelmények teljesítéséhez fontolja meg inkább a DCasv5 vagy DCadsv5 sorozatú bizalmas virtuális gépek használatát.
- Ha saját alhálózatot használ a fürt üzembe helyezéséhez, a virtuális hálózatot tartalmazó alhálózat, virtuális hálózat és erőforráscsoport nevének legalább 63 karakter hosszúságúnak kell lennie. Ezek a nevek címkékként lesznek használva az AKS feldolgozó csomópontjaiban, és a Kubernetes címkeszintaxisára vonatkozó szabályok vonatkoznak nevére.
Azure Kubernetes Service