Megosztás a következőn keresztül:


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.

Két csomópontot ábrázoló diagram, amelyek mindegyike három podgal rendelkezik, amelyek mindegyike átfedéses hálózaton fut. A fürtön kívüli végpontokra történő podforgalom NAT-on keresztül van irányítva.

Az Azure Kubernetes Service a következő CNI beépülő modulokat biztosítja az átfedéses hálózatkezeléshez:

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.

Két csomópontot ábrázoló diagram, amelyek mindegyike három podból áll, amelyek mindegyike egy lapos hálózati modellben fut.

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/16172.30.0.0/16172.31.0.0/16192.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