Az Azure Kubernetes Service (AKS) CNI hálózatkezelésének áttekintése
A Kubernetes a Container Networking Interface (CNI) beépülő modulokkal kezeli a Kubernetes-fürtök hálózatkezelését. A CNI-k felelősek az IP-címek podokhoz való hozzárendeléséért, a podok közötti hálózati útválasztásért, a Kubernetes Service útválasztásáért stb.
Az AKS több CNI beépülő modult biztosít, amelyek a hálózati követelményektől függően használhatók a fürtökben.
Hálózati modellek az AKS-ben
A CNI beépülő modul kiválasztása az AKS-fürthöz nagyban függ attól, hogy melyik hálózati modell felel meg a legjobban az igényeinek. Minden modellnek megvannak a maga előnyei és hátrányai, amelyeket érdemes figyelembe vennie az AKS-fürt tervezésekor.
Az AKS két fő hálózati modellt használ: az átfedéses hálózatot és az egysíkú hálózatot.
Mindkét hálózati modell több támogatott CNI beépülő modul-beállítással rendelkezik. A modellek közötti fő különbségek a pod IP-címeinek hozzárendelése és a fürtből való forgalom elhagyása.
Átfedő hálózatok
Az átfedéses hálózatkezelés a Kubernetesben leggyakrabban használt hálózati modell. Átfedő hálózatokban a podok ip-címet kapnak egy privát, logikailag elkülönülő CIDR-címtől az Azure VNet alhálózattól, ahol az AKS-csomópontok üzembe vannak helyezve. Ez egyszerűbb és gyakran jobb méretezhetőséget tesz lehetővé, mint a lapos hálózati modell.
Átfedéses hálózatokban a podok közvetlenül kommunikálhatnak egymással. A fürtöt elhagyó forgalom a forráshálózati cím lefordítva (SNAT'd) a csomópont IP-címére, a bejövő pod IP-forgalmat pedig valamilyen szolgáltatáson, például terheléselosztón keresztül irányítja át. Ez azt jelenti, hogy a pod IP-címe "rejtett" a csomópont IP-címe mögött. Ez a módszer csökkenti a fürtökhöz szükséges virtuális hálózatok IP-címeinek számát.
Az Azure Kubernetes Service a következő CNI beépülő modulokat biztosítja az átfedéses hálózatkezeléshez:
- Az Azure CNI Overlay, a legtöbb forgatókönyvhöz ajánlott CNI beépülő modul.
- kubenet, az örökölt átfedő modell CNI.
Lapos hálózatok
Az átfedéses hálózatokkal ellentétben az AKS-ben egy síkhálózati modell ip-címeket rendel a podokhoz ugyanazon Azure-beli virtuális hálózatból származó podokhoz, mint az AKS-csomópontok. Ez azt jelenti, hogy a fürtöket elhagyó forgalom nem SNAT-alapú, és a pod IP-címe közvetlenül a célnak van kitéve. Ez hasznos lehet bizonyos helyzetekben, például amikor pod IP-címeket kell elérhetővé tennie külső szolgáltatások számára.
Az Azure Kubernetes Service két CNI beépülő modult biztosít a lapos hálózatkezeléshez. Ez a cikk nem részletezi az egyes beépülő modulokra vonatkozó beállításokat. További információkért tekintse meg a csatolt dokumentációt:
- Az Azure CNI Pod Subnet, az ajánlott CNI beépülő modul lapos hálózatkezelési forgatókönyvekhez.
- Az Azure CNI node subnet, egy régi, lapos hálózati modell, a CNI általában csak akkor javasolja a használatát, ha felügyelt virtuális hálózatra van szüksége a fürthöz.
CNI kiválasztása
A CNI kiválasztásakor több tényezőt is figyelembe kell venni. Minden hálózati modellnek megvannak a maga előnyei és hátrányai, és a fürt számára a legjobb választás az Adott követelményektől függ.
Hálózati modell kiválasztása
Az AKS két fő hálózati modellje az átfedéses és a lapos hálózatok.
Átfedő hálózatok:
- A virtuális hálózat IP-címterének megőrzése a podok logikailag különálló CIDR-tartományainak használatával.
- Maximális fürtméret-támogatás.
- Egyszerű IP-címkezelés.
Lapos hálózatok:
- A podok teljes virtuális hálózati kapcsolatot kapnak, és közvetlenül elérhetők a csatlakoztatott hálózatokról származó privát IP-címükön keresztül.
- Nagy, nem töredezett virtuális hálózat IP-címteret igényel.
Használati eset összehasonlítása
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 | Esetkiemelések használata |
---|---|---|
Azure CNI Overlay | Átfedő réteg | - A legjobb a VNET 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ózatok hatékony IP-használatának vagy nagy fürtméret-támogatáshoz (előzetes verzió) |
Kubenet (örökölt) | Átfedő réteg | - Rangsorolja az IP-cím megőrzését - Korlátozott skálázás - Manuális útvonalkezelés |
Azure CNI-csomópont alhálózata (örökölt) | 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 |
Szolgáltatások összehasonlítása
Érdemes lehet az egyes CNI beépülő modulok funkcióit is összehasonlítani. Az alábbi táblázat az egyes CNI beépülő modulok által támogatott funkciók magas szintű összehasonlítását tartalmazza:
Szolgáltatás | Azure CNI Overlay | Azure CNI pod-alhálózat | Azure CNI-csomópont alhálózata (örökölt) | Kubenet |
---|---|---|---|---|
Fürt üzembe helyezése meglévő vagy új virtuális hálózaton | Támogatott | Támogatott | Támogatott | Támogatott – manuális UDR-ek |
Pod-VM kapcsolat ugyanazon vagy társhálózaton lévő virtuális géppel | Pod kezdeményezve | Mindkét módszer | Mindkét módszer | Pod kezdeményezve |
Helyszíni hozzáférés VPN-en/Express Route-on keresztül | Pod kezdeményezve | Mindkét módszer | Mindkét módszer | Pod kezdeményezve |
Hozzáférés a szolgáltatásvégpontokhoz | Támogatott | Támogatott | Támogatott | Támogatott |
Szolgáltatások elérhetővéítása terheléselosztóval | Támogatott | Támogatott | Támogatott | Támogatott |
Szolgáltatások közzététele az App Gateway használatával | Jelenleg nem támogatott | Támogatott | Támogatott | Támogatott |
Szolgáltatások letiltása bejövőforgalom-vezérlővel | Támogatott | Támogatott | Támogatott | Támogatott |
Windows-csomópontkészletek | Támogatott | Támogatott | Támogatott | Nem támogatott |
Alapértelmezett Azure DNS és privát zónák | Támogatott | Támogatott | Támogatott | Támogatott |
Virtuális hálózatok alhálózatának megosztása több fürt között | Támogatott | Támogatott | Támogatott | Nem támogatott |
Támogatási hatókör a hálózati modellek között
A használt CNI-től függően a fürt virtuális hálózati erőforrásai az alábbi módok egyikével telepíthetők:
- Az Azure-platform automatikusan létrehozhatja és konfigurálhatja a virtuális hálózati erőforrásokat egy AKS-fürt létrehozásakor. például az Azure CNI Overlayben, az Azure CNI Node alhálózatában és a Kubenetben.
- Az AKS-fürt létrehozásakor manuálisan hozhatja létre és konfigurálhatja a virtuális hálózati erőforrásokat, és csatolhatja őket ezekhez az erőforrásokhoz.
Bár az olyan képességek, mint a szolgáltatásvégpontok vagy az UDR-ek támogatottak, az AKS támogatási szabályzatai határozzák meg, hogy milyen módosításokat hajthat végre. Példa:
- Ha manuálisan hozza létre a virtuális hálózati erőforrásokat egy AKS-fürthöz, akkor a rendszer támogatja a saját UDR-ek vagy szolgáltatásvégpontok konfigurálásakor.
- Ha az Azure-platform automatikusan létrehozza az AKS-fürt virtuális hálózati erőforrásait, nem módosíthatja manuálisan az AKS által felügyelt erőforrásokat a saját UDR-ek vagy szolgáltatásvégpontok konfigurálásához.
Előfeltételek
Az AKS hálózati konfigurációjának tervezésekor több követelményt és szempontot is figyelembe kell venni:
- Az AKS-fürt virtuális hálózatának engedélyeznie kell a kimenő internetkapcsolatot.
- Az AKS-fürtök nem használhatják
169.254.0.0/16
172.30.0.0/16
172.31.0.0/16
192.0.2.0/24
a Kubernetes szolgáltatás címtartományát, podcímtartományát vagy fürt virtuális hálózati címtartományát. - BYO virtuális hálózatok esetén az AKS-fürt által használt fürtidentitásnak legalább hálózati közreműködői engedélyekkel kell rendelkeznie a virtuális hálózaton belüli alhálózaton. Ha a beépített hálózati közreműködői szerepkör használata helyett egyéni szerepkört szeretne definiálni, a következő engedélyekre van szükség:
Microsoft.Network/virtualNetworks/subnets/join/action
Microsoft.Authorization/roleAssignments/write
Microsoft.Network/virtualNetworks/subnets/read
(csak akkor szükséges, ha saját alhálózatokat és CIDR-eket határoz meg)
- Az AKS-csomópontkészlethez rendelt alhálózat nem lehet delegált alhálózat.
- Az AKS nem alkalmazza a hálózati biztonsági csoportokat (NSG-ket) az alhálózatára, és nem módosítja az alhálózathoz társított NSG-k egyikét sem. Ha saját alhálózatot ad meg, és hozzáadja az alhálózathoz társított NSG-ket, győződjön meg arról, hogy az NSG-k biztonsági szabályai engedélyezik a forgalmat a csomópont CIDR-tartományán belül. További információ: Hálózati biztonsági csoportok.
Következő lépések
Azure Kubernetes Service