Créer un équilibreur de charge MetalLB à l’aide d’Azure Arc et d’Azure CLI
S’applique à : Azure Stack HCI, version 23H2
L’objectif main d’un équilibreur de charge est de distribuer le trafic sur plusieurs nœuds dans un cluster Kubernetes. Cela peut aider à éviter les temps d’arrêt et à améliorer les performances globales des applications. AKS activé par Azure Arc prend en charge la création de instance d’équilibreur de charge MetalLB sur votre cluster Kubernetes à l’aide de l’extension Arc Networking
k8s.
Prérequis
- Un cluster Kubernetes avec au moins un nœud Linux. Vous pouvez créer un cluster Kubernetes sur Azure Stack HCI 23H2 à l’aide d’Azure CLI ou de l’Portail Azure.
- Vérifiez que vous disposez de suffisamment d’adresses IP pour l’équilibreur de charge. Vérifiez que les adresses IP réservées à l’équilibreur de charge ne sont pas en conflit avec les adresses IP des réseaux logiques de machine virtuelle Arc et des adresses IP du plan de contrôle. Pour plus d’informations sur la planification des adresses IP et la mise en réseau dans Kubernetes, consultez Configuration réseau requise pour AKS sur Azure Stack HCI 23H2.
- Ce guide pratique suppose que vous comprenez le fonctionnement de Metal LB. Pour plus d’informations, consultez la vue d’ensemble de MetalLB dans les clusters Arc Kubernetes.
Installer l’extension Azure CLI
Exécutez la commande suivante pour installer l’extension Azure CLI nécessaire :
az extension add -n k8s-runtime --upgrade
Activer l’extension Arc de l’équilibreur de charge
Configurez les variables suivantes avant de continuer :
Paramètre | Description |
---|---|
$subId |
ID d’abonnement Azure de votre cluster Kubernetes. |
$rgName |
Groupe de ressources Azure pour votre cluster Kubernetes. |
$clusterName |
Nom de votre cluster AKS Arc. |
Utilisez la az k8s-runtime load-balancer enable
commande pour installer l’extension Arc et inscrire le fournisseur de ressources pour votre cluster Kubernetes. Le --resource-uri
paramètre fait référence à l’ID resource manager de votre cluster AKS Arc.
az k8s-runtime load-balancer enable --resource-uri subscriptions/$subId/resourceGroups/$rgName/providers/Microsoft.Kubernetes/connectedClusters/$clusterName
Déployer l’équilibreur de charge MetalLB sur votre cluster Kubernetes
Vous pouvez maintenant créer un équilibreur de charge pour votre cluster Kubernetes à distance en exécutant la az k8s-runtime load-balancer create
commande . Cette commande crée une ressource personnalisée de type IPAddressPool
dans l’espace de noms kube-system
.
Configurez les variables suivantes avant de continuer :
Paramètre | Description |
---|---|
$lbName |
Nom de votre équilibreur de charge MetalLB instance. |
$advertiseMode |
Mode de votre équilibreur de charge MetalLB. Les valeurs prises en charge sont ARP , BGP ou Both . |
$ipRange |
Plage d’adresses IP pour l’équilibreur de charge MetalLB en ARP mode ou Both . |
Si le mode de publicité est BGP
ou Both
, il crée également une ressource personnalisée de type BGPAdvertisement
. Si le mode de publicité est ARP
ou Both
, il crée également une ressource personnalisée de type L2Advertisement
:
az k8s-runtime load-balancer create --load-balancer-name $lbName --resource-uri subscriptions/$subId/resourceGroups/$rgName/providers/Microsoft.Kubernetes/connectedClusters/$clusterName --addresses $ipRange --advertise-mode $advertiseMode
Créer un homologue BGP pour votre cluster Kubernetes
Créez un homologue BGP pour votre cluster Kubernetes à distance en exécutant la az k8s-runtime bgp-peer create
commande . Notez que l’homologue BGP est efficace pour tous les équilibreurs de charge qui ont ou Both
publient BGP
le mode. La création d’homologues BGP est obligatoire si vous utilisez l’équilibreur de charge MetalLB en BGP
mode ou Both
.
Configurez les variables suivantes avant de continuer :
Paramètre | Description |
---|---|
$peerName |
Nom de votre homologue BGP. |
$myASN |
Numéro AS à utiliser pour la fin locale de la session. |
$peerASN |
Numéro AS à attendre de la fin distante de la session. |
$peerIP |
Adresse à composer lors de l’établissement de la session. |
az k8s-runtime bgp-peer create --bgp-peer-name $peerName --resource-uri subscriptions/$subId/resourceGroups/$rgName/providers/Microsoft.Kubernetes/connectedClusters/$clusterName --my-asn $myASN --peer-asn $peerASN --peer-address $peerIP
Étapes suivantes
-Utiliser l’extension GitOps Flux v2 Arc pour déployer des applications sur votre cluster Kubernetes
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour