Delen via


Netwerkconcepten voor toepassingen in Azure Kubernetes Service (AKS)

In een containergebaseerde microservicesbenadering voor toepassingsontwikkeling werken toepassingsonderdelen samen om hun taken te verwerken. Kubernetes biedt verschillende resources die deze samenwerking mogelijk maken:

  • U kunt intern of extern verbinding maken met toepassingen en deze beschikbaar maken.
  • U kunt maximaal beschikbare toepassingen bouwen door uw toepassingen te verdelen.
  • U kunt de stroom van netwerkverkeer naar of tussen pods en knooppunten beperken om de beveiliging te verbeteren.
  • U kunt inkomend verkeer configureren voor SSL/TLS-beëindiging of routering van meerdere onderdelen voor uw complexere toepassingen.

In dit artikel worden de belangrijkste concepten geïntroduceerd die netwerken bieden voor uw toepassingen in AKS:

Basisbeginselen van Kubernetes-netwerken

Kubernetes maakt gebruik van een virtuele netwerklaag voor het beheren van toegang binnen en tussen uw toepassingen of hun onderdelen:

  • Kubernetes-knooppunten en virtueel netwerk: Kubernetes-knooppunten zijn verbonden met een virtueel netwerk. Met deze instelling kunnen pods (basiseenheden van implementatie in Kubernetes) zowel binnenkomende als uitgaande connectiviteit hebben.

  • Kube-proxyonderdeel: kube-proxy wordt uitgevoerd op elk knooppunt en is verantwoordelijk voor het leveren van de benodigde netwerkfuncties.

Met betrekking tot specifieke Kubernetes-functies:

  • Load balancer: U kunt een load balancer gebruiken om netwerkverkeer gelijkmatig over verschillende resources te verdelen.
  • Ingangscontrollers: deze faciliteren laag 7-routering, wat essentieel is voor het omleiden van toepassingsverkeer.
  • Uitgaand verkeer beheren: Met Kubernetes kunt u uitgaand verkeer van clusterknooppunten beheren en beheren.
  • Netwerkbeleid: Met deze beleidsregels kunt u beveiligingsmaatregelen en filters voor netwerkverkeer in pods inschakelen.

In de context van het Azure-platform:

  • Azure stroomlijnt virtuele netwerken voor AKS-clusters (Azure Kubernetes Service).
  • Als u een Kubernetes-load balancer maakt in Azure, wordt tegelijkertijd de bijbehorende Azure Load Balancer-resource ingesteld.
  • Wanneer u netwerkpoorten opent voor pods, configureert Azure automatisch de benodigde regels voor netwerkbeveiligingsgroepen.
  • Azure kan ook externe DNS-configuraties beheren voor HTTP-toepassingsroutering, omdat er nieuwe toegangsbeheerroutes tot stand worden gebracht.

Virtuele netwerken van Azure

In AKS kunt u een cluster implementeren dat gebruikmaakt van een van de volgende netwerkmodellen:

  • Overlay-netwerkmodel: Overlay-netwerken is het meest voorkomende netwerkmodel dat wordt gebruikt in Kubernetes. Pods krijgen een IP-adres van een privé,logisch gescheiden CIDR van het subnet van het virtuele Azure-netwerk waarin AKS-knooppunten worden geïmplementeerd. Dit model maakt eenvoudigere, verbeterde schaalbaarheid mogelijk in vergelijking met het platte netwerkmodel.
  • Plat netwerkmodel: Een plat netwerkmodel in AKS wijst IP-adressen toe aan pods vanuit een subnet van hetzelfde virtuele Azure-netwerk als de AKS-knooppunten. Verkeer dat uw clusters verlaat, is niet SNAT' d en het IP-adres van de pod wordt rechtstreeks aan de bestemming blootgesteld. Dit model kan nuttig zijn voor scenario's zoals het blootstellen van IP-adressen van pods aan externe services.

Zie CNI-netwerken in AKS voor meer informatie over netwerkmodellen in AKS.

Uitgaand (uitgaand) verkeer beheren

AKS-clusters worden geïmplementeerd in een virtueel netwerk en hebben uitgaande afhankelijkheden van services buiten dat virtuele netwerk. Deze uitgaande afhankelijkheden zijn bijna volledig gedefinieerd met FQDN's (Fully Qualified Domain Names). AKS-clusters hebben standaard onbeperkte uitgaande (uitgaande) internettoegang, waardoor de knooppunten en services die u uitvoert, naar behoefte toegang hebben tot externe resources. Desgewenst kunt u uitgaand verkeer beperken.

Zie Uitgaand verkeer voor clusterknooppunten in AKS beheren voor meer informatie.

Netwerkbeveiligingsgroepen

Een netwerkbeveiligingsgroep filtert verkeer voor VM's zoals de AKS-knooppunten. Wanneer u Services maakt, zoals een LoadBalancer, configureert het Azure-platform automatisch de benodigde regels voor netwerkbeveiligingsgroepen.

U hoeft geen regels voor netwerkbeveiligingsgroepen handmatig te configureren om verkeer voor pods in een AKS-cluster te filteren. U kunt alle vereiste poorten definiëren en doorsturen als onderdeel van uw Kubernetes Service-manifesten en het Azure-platform de juiste regels laten maken of bijwerken.

U kunt ook netwerkbeleid gebruiken om verkeerfilterregels automatisch toe te passen op pods.

Zie Hoe netwerkbeveiligingsgroepen netwerkverkeer filteren voor meer informatie.

Netwerkbeleid

Standaard kunnen alle pods in een AKS-cluster zonder beperkingen verkeer verzenden en ontvangen. Voor een betere beveiliging definieert u regels waarmee de verkeersstroom wordt beheerd, zoals:

  • Back-endtoepassingen worden alleen blootgesteld aan vereiste front-endservices.
  • Databaseonderdelen zijn alleen toegankelijk voor de toepassingslagen die er verbinding mee maken.

Netwerkbeleid is een Kubernetes-functie die beschikbaar is in AKS waarmee u de verkeersstroom tussen pods kunt beheren. U kunt verkeer naar de pod toestaan of weigeren op basis van instellingen zoals toegewezen labels, naamruimte of verkeerspoort. Hoewel netwerkbeveiligingsgroepen beter zijn voor AKS-knooppunten, zijn netwerkbeleidsregels een meer geschikte, cloudeigen manier om de verkeersstroom voor pods te beheren. Omdat pods dynamisch worden gemaakt in een AKS-cluster, kunnen vereiste netwerkbeleidsregels automatisch worden toegepast.

Zie Verkeer tussen pods beveiligen met behulp van netwerkbeleid in Azure Kubernetes Service (AKS) voor meer informatie.

Volgende stappen

Als u aan de slag wilt met AKS-netwerken, maakt en configureert u een AKS-cluster met uw eigen IP-adresbereiken met behulp van Azure CNI-overlay of Azure CNI.

Zie Best practices voor netwerkconnectiviteit en -beveiliging in AKS voor de bijbehorende aanbevolen procedures.

Zie de volgende artikelen voor meer informatie over de belangrijkste Kubernetes- en AKS-concepten: