Overzicht van Azure CNI-netwerken
Kubernetes ondersteunt verschillende invoegtoepassingen, zodat u nieuwe functies kunt toevoegen en bestaand clustergedrag kunt vervangen of verbeteren. De CNI (Container Network Interface) is een specificatie waarmee ontwikkelaars invoegtoepassingen kunnen maken om containernetwerken te configureren. Kubernetes past de CNI-specificatie toe, waardoor het gebruik van CNI-invoegtoepassingen op uw clusters mogelijk is.
Azure CNI-invoegtoepassingen
De Azure CNI-invoegtoepassing maakt samenwerking mogelijk tussen containers en virtuele Azure-netwerken (VNets). Als u Azure CNI gebruikt in een Kubernetes-cluster, kunnen pods IP-adressen toewijzen vanuit een virtueel Azure-netwerk. De pod kan vervolgens op dat virtuele netwerk communiceren, net als elk ander apparaat. Het kan verbinding maken met andere pods, gekoppelde netwerken, on-premises netwerken met behulp van een VPN of ExpressRoute of met andere Azure-services met behulp van Private Link.
Afgezien van de traditionele Azure CNI-invoegtoepassing ondersteunt Azure Kubernetes Service (AKS) de volgende CNI-invoegtoepassingen:
Invoegtoepassing | Beschrijving | Gebruik |
---|---|---|
Azure CNI-overlay | Clusterknooppunten worden geïmplementeerd in een subnet van een virtueel Azure-netwerk. Pods worden toegewezen IP-adressen van een privé-CIDR (Classless Inter-Domain Routing) die logisch verschillen van het virtuele netwerk dat als host fungeert voor de knooppunten. Pod- en knooppuntverkeer binnen het cluster maken gebruik van een Overlay-netwerk. NAT gebruikt het IP-adres van het knooppunt om resources buiten het cluster te bereiken. | • U wilt schalen naar een groot aantal pods, maar de IP-adresruimte in uw virtuele netwerk is beperkt. • De meeste podcommunicatie bevindt zich in het cluster. • U hebt geen geavanceerde AKS-functies nodig, zoals virtuele knooppunten. |
Azure CNI Powered by Cilium | Combineert het Azure CNI-besturingsvlak met het gegevensvlak Cilium. Cilium dwingt netwerkbeleid af om verkeer tussen pods toe te staan of te weigeren, dus u hoeft geen afzonderlijke engine voor netwerkbeleid te gebruiken. U kunt kiezen tussen twee verschillende methoden voor het toewijzen van pod-IP's: via een overlaynetwerk of een virtueel netwerk. | • U hebt ondersteuning nodig voor grotere clusters. • U wilt snellere serviceroutering, efficiënter afdwingen van netwerkbeleid en betere waarneembaarheid van clusterverkeer. • U wilt de functionaliteiten van de traditionele Azure CNI- en Azure CNI Overlay-invoegtoepassingen gebruiken met krachtige netwerken en beveiliging. |
Azure CNI voor dynamische toewijzing van IP-adressen en verbeterde subnetondersteuning | Maakt gebruik van de functionaliteiten van de traditionele Azure CNI-invoegtoepassing en breidt deze uit om pod-IP's toe te wijzen van subnetten gescheiden van het subnet dat als host fungeert voor het AKS-cluster. IP-adressen worden dynamisch toegewezen aan clusterpods vanuit het podsubnet. Knooppunt- en podsubnetten kunnen onafhankelijk worden geschaald en podsubnetten delen in meerdere knooppuntgroepen of clusters in hetzelfde virtuele netwerk. Omdat pods een afzonderlijk subnet hebben, kunt u afzonderlijke beleidsregels voor virtuele netwerken configureren die verschillen van het knooppuntbeleid. | • U wilt de flexibiliteit om knooppunt- en podsubnetten onafhankelijk van elkaar te schalen. • U hebt ondersteuning nodig voor grotere clusters zonder dat dit ten koste gaat van de prestaties. • U wilt afzonderlijke beleidsregels voor virtuele netwerken configureren voor pods. |
Bring your own (BYO) CNI | AKS-clusters worden geïmplementeerd zonder een vooraf geïnstalleerde CNI-invoegtoepassing. Van daaruit kunt u de gewenste ondersteuning voor Azure de niet-Microsoft CNI-invoegtoepassing installeren. Zie Netwerkconcepten voor toepassingen in Azure Kubernetes Service (AKS). Houd er rekening mee dat Microsoft-ondersteuning niet kan helpen bij CNI-gerelateerde problemen in clusters die zijn geïmplementeerd met BYO CNI. | • U wilt dezelfde CNI-invoegtoepassing gebruiken in AKS die u in uw on-premises Kubernetes-omgeving gebruikt. • U wilt geavanceerde functies gebruiken die beschikbaar zijn in de ondersteunde niet-Microsoft-invoegtoepassingen. |