Az Azure CNI hálózatkezelése az Azure Kubernetes Service-ben (AKS) – áttekintés
Az AKS-fürtök alapértelmezés szerint kubenetet használnak, és létrehoznak egy virtuális hálózatot és alhálózatot. A Kubenet használatával a csomópontok ip-címet kapnak egy virtuális hálózati alhálózatról. A hálózati címfordítás (NAT) ezután konfigurálva lesz a csomópontokon, és a podok "rejtett" IP-címet kapnak a csomópont IP-címe mögött. Ez a módszer csökkenti a podok használatához szükséges ip-címek számát a hálózati térben.
Az Azure Container Networking Interface (CNI) használatával minden pod egy IP-címet kap az alhálózatról, és közvetlenül elérhető. Az AKS-fürttel azonos virtuális hálózaton futó rendszerek a pod felől érkező bármilyen forgalom forráscímeként a pod IP-címét látják. Az AKS-fürt virtuális hálózatán kívüli rendszerek a csomópont IP-címét látják a podról érkező forgalom forráscímeként. Ezeknek az IP-címeknek egyedinek kell lenniük a hálózati térben, és előre meg kell tervezni. Minden csomópont rendelkezik egy konfigurációs paraméterrel a támogatott podok maximális számához. A csomópontonkénti IP-címek egyenértékű száma ezután előre lefoglalva lesz az adott csomópont számára. Ez a megközelítés több tervezést igényel, és gyakran az IP-címek kimerüléséhez vagy a fürtök nagyobb alhálózatban való újraépítéséhez vezet az alkalmazás igényeinek növekedésével.
Feljegyzés
Ez a cikk csak a hagyományos Azure CNI-t mutatja be. Az Azure CNI Overlay, a dinamikus IP-kiosztáshoz használható Azure CNI virtuális hálózat és az Azure CNI virtuális hálózat – Statikus blokkok lefoglalása (előzetes verzió) esetében. Kérjük, tekintse meg inkább a dokumentációjukat.
Előfeltételek
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.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.Network/virtualNetworks/subnets/read
Microsoft.Authorization/roleAssignments/write
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.
Üzembehelyezési paraméterek
AKS-fürt létrehozásakor az alábbi paraméterek konfigurálhatók az Azure CNI hálózatkezeléséhez:
Virtuális hálózat: Az a virtuális hálózat, amelyben telepíteni szeretné a Kubernetes-fürtöt. Ha új virtuális hálózatot szeretne létrehozni a fürthöz, válassza az Új létrehozása lehetőséget, és kövesse a Virtuális hálózat létrehozása szakasz lépéseit. Ha ki szeretne választani egy meglévő virtuális hálózatot, győződjön meg arról, hogy az ugyanabban a helyen és Azure-előfizetésben van, mint a Kubernetes-fürt. Az Azure-beli virtuális hálózatok korlátaival és kvótáival kapcsolatos információkért tekintse meg az Azure-előfizetések és -szolgáltatások korlátait, kvótáit és korlátozásait.
Alhálózat: A virtuális hálózat azon alhálózata, ahol telepíteni szeretné a fürtöt. Ha új alhálózatot szeretne létrehozni a fürt virtuális hálózatában, válassza az Új létrehozása lehetőséget, és kövesse az alhálózat létrehozása szakasz lépéseit . Hibrid kapcsolat esetén a címtartománynak nem szabad átfedésben lennie a környezet többi virtuális hálózatával.
Azure Hálózati beépülő modul: Az Azure hálózati beépülő modul használata esetén a belső LoadBalancer szolgáltatás a "externalTrafficPolicy=Local" használatával nem érhető el olyan virtuális gépekről, amelyek IP-címmel rendelkeznek a clusterCIDR-ben, amely nem tartozik az AKS-fürthöz.
Kubernetes-szolgáltatás címtartománya: Ez a paraméter azoknak a virtuális IP-címeknek a készlete, amelyeket a Kubernetes hozzárendel a fürt belső szolgáltatásaihoz . Ez a tartomány nem frissíthető a fürt létrehozása után. Bármilyen olyan magáncímtartományt használhat, amely megfelel az alábbi követelményeknek:
- Nem lehet a fürt virtuális hálózati IP-címtartományában
- Nem lehet átfedésben más olyan virtuális hálózatokkal, amelyekkel a fürt virtuális hálózati társhálózatai
- Nem lehetnek átfedésben a helyszíni IP-címekkel
- Nem lehet a tartományon
169.254.0.0/16
belül,172.30.0.0/16
vagy172.31.0.0/16
192.0.2.0/24
Bár technikailag lehetséges egy szolgáltatáscímtartomány megadása ugyanazon a virtuális hálózaton belül, mint a fürt, ez nem ajánlott. Kiszámíthatatlan viselkedés akkor fordulhat elő, ha átfedésben lévő IP-tartományokat használ. További információkért tekintse meg a cikk GYIK szakaszát. További információ a Kubernetes-szolgáltatásokról: Szolgáltatások a Kubernetes dokumentációjában.
Kubernetes DNS-szolgáltatás IP-címe: A fürt DNS-szolgáltatásának IP-címe. A címnek a Kubernetes szolgáltatási címtartományába kell tartoznia. Ne használja az első IP-címet a címtartományban. Az alhálózattartomány első címe a kubernetes.default.svc.cluster.local címhez használatos.
Gyakori kérdések
Üzembe helyezhetek virtuális gépeket a fürt alhálózatán?
Igen. A dinamikus IP-kiosztáshoz használt Azure CNI esetében azonban a virtuális gépek nem helyezhetők üzembe a pod alhálózatán.
Milyen forrás IP-címet látnak a külső rendszerek az Azure CNI-kompatibilis podból származó forgalomhoz?
Az AKS-fürttel azonos virtuális hálózaton futó rendszerek a pod felől érkező bármilyen forgalom forráscímeként a pod IP-címét látják. Az AKS-fürt virtuális hálózatán kívüli rendszerek a csomópont IP-címét látják a podról érkező forgalom forráscímeként.
A dinamikus IP-kiosztáshoz használt Azure CNI esetében azonban nem számít, hogy a kapcsolat ugyanazon a virtuális hálózaton belül van vagy virtuális hálózatok közötti, a pod IP-címe mindig a podról érkező forgalom forráscíme. Ennek az az oka, hogy a dinamikus IP-foglaláshoz készült Azure CNI implementálja a Microsoft Azure Container Networking infrastruktúrát, amely a végpontok közötti élményt nyújtja. Ezért megszünteti a hagyományos Azure CNI által még mindig használt használatot
ip-masq-agent
.Konfigurálhatok podonkénti hálózati házirendeket?
Igen, a Kubernetes hálózati szabályzata elérhető az AKS-ben. Első lépésként tekintse meg a podok közötti adatforgalom biztonságossá tételét az AKS hálózati szabályzatainak használatával.
Konfigurálható a csomópontokon üzembe helyezhető podok maximális száma?
Igen, amikor üzembe helyez egy fürtöt az Azure CLI-vel vagy egy Resource Manager-sablonnal. Lásd: Csomópontonkénti podok maximális száma.
Egy meglévő fürt csomópontonkénti podjainak maximális száma nem módosítható.
Hogyan konfigurálja az AKS-fürt létrehozása során létrehozott alhálózat további tulajdonságait? Például szolgáltatásvégpontok.
Az AKS-fürt létrehozása során létrehozott virtuális hálózat és alhálózatok tulajdonságainak teljes listája konfigurálható az Azure Portal szabványos virtuális hálózati konfigurációs lapján.
Használhatok másik alhálózatot a fürt virtuális hálózatán belül a Kubernetes szolgáltatás címtartományához?
Ez nem ajánlott, de ez a konfiguráció lehetséges. A szolgáltatáscímtartomány virtuális IP-címek (VIP-k) készlete, amelyeket a Kubernetes hozzárendel a fürt belső szolgáltatásaihoz. Az Azure Networking nem rendelkezik a Kubernetes-fürt szolgáltatás IP-tartományával. A fürt szolgáltatáscímtartományának láthatóságának hiánya problémákhoz vezethet. Később létrehozhat egy új alhálózatot a fürt virtuális hálózatában, amely átfedésben van a szolgáltatás címtartományával. Ilyen átfedés esetén a Kubernetes olyan IP-címet rendelhet a szolgáltatáshoz, amelyet az alhálózat egy másik erőforrása már használ, ami kiszámíthatatlan viselkedést vagy hibákat okoz. Ha biztosítja, hogy a fürt virtuális hálózatán kívüli címtartományt használjon, elkerülheti ezt az átfedési kockázatot.
Következő lépés
További információ az AKS hálózatkezeléséről az alábbi cikkekben:
Azure Kubernetes Service