Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
De Azure Load Balancer werkt op laag 4 van het OSI-model (Open Systems Interconnect) dat zowel inkomende als uitgaande scenario's ondersteunt. Het distribueert binnenkomende stromen die binnenkomen bij de front-end van de load balancer naar de exemplaren van de back-endpool.
Een openbare load balancer die is geïntegreerd met AKS, heeft twee doeleinden:
- Geef uitgaande verbindingen met de clusterknooppunten in het virtuele AKS-netwerk (VNet) op door het privé-IP-adres te vertalen naar een openbaar IP-adresgedeelte van de uitgaande pool.
- Bieden toegang tot toepassingen via Kubernetes-services van het type
LoadBalancer, zodat u uw toepassingen eenvoudig kunt schalen en maximaal beschikbare services kunt maken.
In dit artikel wordt de integratie met een openbare load balancer op AKS behandeld. Zie Gebruik een interne load balancer in AKS voor integratie van interne load balancers.
Vereiste voorwaarden
- AKS ondersteunt de standard-SKU-Azure Load Balancer, die standaard wordt gebruikt wanneer u een AKS-cluster maakt. De Standard-SKU biedt u toegang tot functionaliteit zoals een grotere back-endpool, meerdere knooppuntgroepen, Beschikbaarheidszones en is standaard beveiligd. De Basic-SKU is op 30 september 2025 buiten gebruik gesteld en AKS ondersteunt deze niet meer. Als u een bestaand AKS-cluster hebt dat gebruikmaakt van de Basic SKU, raadpleegt u Upgrade van Basic Load Balancer op AKS. Zie Azure Load Balancer SKU-vergelijking voor meer informatie over Load Balancer SKU's.
- Zie LoadBalancer annotations voor een volledige lijst met ondersteunde annotaties voor Kubernetes-services van het type
LoadBalancer. - In dit artikel wordt ervan uitgegaan dat u een AKS-cluster hebt met de Standard SKU Azure Load Balancer. Als u een AKS-cluster nodig hebt, kunt u er een maken met behulp van Azure CLI, Azure PowerShell of Azure Portal.
- U moet
kubectlzijn geïnstalleerd en geconfigureerd om verbinding te maken met uw AKS-cluster. Als ukubectlwilt installeren, uw clusterreferenties wilt downloaden en de verbinding wilt controleren, zie Verbinding maken met het cluster.
Important
Als u liever uw eigen gateway, firewall of proxy gebruikt om uitgaande verbindingen te verzorgen, kunt u het maken van de uitgaande pool van de load balancer en het bijbehorende frontend-IP-adres overslaan door het uitgaande type in te stellen op UserDefinedRouting (UDR). Het outboundtype definieert de methode voor uitgaand verkeer voor een cluster en heeft standaard het type LoadBalancer.
Limitations
De volgende beperkingen gelden wanneer u AKS-clusters maakt en beheert die ondersteuning bieden voor een load balancer met de Standard-SKU :
AKS beheert de levenscyclus en bewerkingen van agentknooppunten. Het wijzigen van de IaaS-resources die zijn gekoppeld aan de agentknooppunten, wordt niet ondersteund. Een voorbeeld van een niet-ondersteunde bewerking is het aanbrengen van handmatige wijzigingen in de resourcegroep van de load balancer.
Er is ten minste één openbaar IP-adres of IP-adresvoorvoegsel vereist om uitgaand verkeer van het AKS-cluster toe te staan. Het openbare IP-adres of IP-adresvoorvoegsel is vereist om de connectiviteit tussen het besturingsvlak en agentknooppunten te behouden en om de compatibiliteit met eerdere versies van AKS te behouden. U hebt de volgende opties voor het opgeven van openbare IP-adressen of IP-voorvoegsels met een Standard SKU-load balancer:
- Geef uw eigen openbare IP-adressen op.
- Geef uw eigen openbare IP-adresvoorvoegsels op.
- Geef een getal op tot 100, zodat het AKS-cluster zoveel openbare IP-adressen van de Standard-SKU kan maken in dezelfde resourcegroep als het AKS-cluster. Deze resourcegroep heeft meestal de naam
MC_aan het begin. AKS wijst het openbare IP-adres toe aan de standard-SKU-load balancer. Standaard wordt er automatisch één openbaar IP-adres gemaakt in dezelfde resourcegroep als het AKS-cluster als er geen openbaar IP-adres, openbaar IP-voorvoegsel of aantal IP-adressen is opgegeven. U moet ook openbare adressen toestaan en voorkomen dat u Azure-beleid maakt waardoor het maken van IP-adressen wordt verboden.
Een openbaar IP-adres dat door AKS is gemaakt, kan niet opnieuw worden gebruikt als een aangepast byo-adres (Bring Your Own). U moet alle aangepaste IP-adressen maken en beheren.
U kunt de SKU van de load balancer niet wijzigen door de door AKS beheerde load balancer-resource rechtstreeks te wijzigen. Als u een bestaand AKS-cluster wilt migreren van de buiten gebruik gestelde Basic-SKU naar de standard-SKU, gebruikt u het ondersteunde AKS-upgradeproces. De migratie veroorzaakt downtime en kan niet worden teruggedraaid nadat deze is gestart.
Load balancers met de Standard-SKU ondersteunen alleen Standard-SKU-IP-adressen.
Private Link-service wordt niet ondersteund wanneer het type back-endpool van de load balancer is ingesteld op
nodeIP.
Een load balancer-service maken in AKS
Nadat u een AKS-cluster met uitgaand type LoadBalancer (standaard) hebt gemaakt, kunt u de load balancer gebruiken om services beschikbaar te maken.
Controleer of uw cluster ten minste één actieve pod met het
app: public-applabel gereed heeft. Het servicemanifest in de volgende stap selecteert pods met dit label, maar maakt geen implementatie.kubectl get pods -l app=public-appMaak een servicemanifest met de naam
public-svc.yaml, waarmee een openbare service van het typeLoadBalancerwordt gemaakt.apiVersion: v1 kind: Service metadata: name: public-svc spec: type: LoadBalancer ports: - port: 80 selector: app: public-app
Het IP-adres van de load balancer opgeven
Als u een specifiek IP-adres met de load balancer wilt gebruiken, hebt u twee opties om het IP-adres op te geven:
-
Serviceaantekeningen instellen (aanbevolen): Gebruik
service.beta.kubernetes.io/azure-pip-namedit om een bestaande openbare IP-resource op naam op te geven. Deze annotatie is de meest efficiënte optie en helpt u een mogelijke snelheidsbeperking te voorkomen. U kunt ook gebruikenservice.beta.kubernetes.io/azure-load-balancer-ipv4voor een IPv4-adres enservice.beta.kubernetes.io/azure-load-balancer-ipv6voor een IPv6-adres. Zie Een statisch openbaar IP-adres gebruiken met de AKS-load balancer voor openbare IP-resources, resourcegroepen en identiteitsvereisten. -
Voeg de eigenschap LoadBalancerIP toe aan het YAML-manifest van de load balancer: voeg de
Service.Spec.LoadBalancerIPeigenschap toe aan het YAML-manifest van de load balancer. Dit veld is afgeschaft na upstream Kubernetes en biedt geen ondersteuning voor dual-stack. Het huidige gebruik blijft hetzelfde en bestaande services werken naar verwachting zonder aanpassingen.
Het servicemanifest van de load balancer implementeren
Implementeer het openbare-servicemanifest met behulp van
kubectl applyen geef de naam van uw YAML-manifest op.kubectl apply -f public-svc.yamlDe Azure Load Balancer is geconfigureerd met een nieuw openbaar IP-adres dat de nieuwe service fronteert. Omdat de Azure Load Balancer meerdere front-end-IP-adressen kan hebben, krijgt elke nieuwe service die u implementeert een nieuw toegewezen front-end-IP-adres dat uniek toegankelijk is.
Controleer of uw service is gemaakt en dat de load balancer is geconfigureerd met behulp van de
kubectl get serviceopdracht.kubectl get service public-svcWanneer u de servicegegevens bekijkt, wordt het openbare IP-adres dat voor deze service is gemaakt op de load balancer weergegeven in de kolom EXTERNAL-IP van de uitvoer. Het kan enkele minuten duren voordat het IP-adres is gewijzigd van <in behandeling> naar een daadwerkelijk openbaar IP-adres. In de volgende voorbeelduitvoer ziet u dat de service succesvol is aangemaakt.
NAMESPACE NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE default public-svc LoadBalancer 10.0.39.110 203.0.113.187 80:32068/TCP 52sKrijg meer gedetailleerde informatie over uw service met behulp van de
kubectl describe serviceopdracht.kubectl describe service public-svcDe volgende voorbeelduitvoer is een verkorte versie van de uitvoer nadat u de uitvoer hebt uitgevoerd
kubectl describe service. LoadBalancer Ingress toont het externe IP-adres dat door uw service beschikbaar wordt gesteld. IP toont de interne adressen.Name: public-svc Namespace: default Labels: <none> Annotations: <none> Selector: app=public-app ... IP: 10.0.39.110 ... LoadBalancer Ingress: 203.0.113.187 ... TargetPort: 80/TCP NodePort: 32068/TCP ... Session Affinity: None External Traffic Policy: Cluster ...
Volgende stap
Uw openbare standaard load balancer configureren in AKS