Lorsqu'il est intégré à Tanzu Kubernetes Grid, NSX ALB peut fournir une adresse IP virtuelle de point de terminaison aux clusters et effectuer l'équilibrage de charge sur les nœuds du plan de contrôle du cluster. Cette fonctionnalité vous permet également de personnaliser le port du serveur d'API et le réseau d'adresses IP virtuelles des points de terminaison du cluster.
Le tableau suivant fournit une comparaison des fonctionnalités prises en charge sur NSX ALB et Kube-Vip :
NSX ALB | Kube-Vip | |
---|---|---|
Adresse IP virtuelle du point de terminaison de cluster pour IPAM | Fourni par NSX ALB |
Géré manuellement par le client |
Équilibrage de charge pour les nœuds du plan de contrôle | La charge du trafic sera équilibrée vers tous les nœuds du plan de contrôle |
Le trafic sera uniquement acheminé vers le nœud de plan de contrôle principal |
Port du serveur API | Tout port (le port par défaut est 6443) |
Tout port (le port par défaut est 6443) |
Pour configurer NSX ALB en tant que fournisseur d'adresses IP virtuelles de point de terminaison du cluster dans un cluster de gestion :
Créez un fichier YAML de configuration de cluster de gestion et ajoutez le champ suivant dans le fichier :
AVI_CONTROL_PLANE_HA_PROVIDER: true
Si vous souhaitez utiliser une adresse IP statique pour l'adresse IP virtuelle du point de terminaison, ajoutez le champ suivant dans le fichier :
VSPHERE_CONTROL_PLANE_ENDPOINT: <IP-ADDRESS>
Assurez-vous que l’adresse IP virtuelle est présente dans le pool d’adresses IP statiques spécifié dans votre réseau VIP.
Si vous souhaitez spécifier un port pour le serveur API, ajoutez le champ suivant dans le fichier :
AVI_CONTROL_PLANE_HA_PROVIDER: true
CLUSTER_API_SERVER_PORT: <PORT-NUMBER>
RemarqueLe cluster de gestion et ses clusters de charge de travail utiliseront ce port pour se connecter au serveur d’API.
tanzu management-cluster create
.NSX ALB est désormais configuré comme fournisseur d'adresses IP virtuelles du point de terminaison pour le cluster de gestion.
Pour configurer NSX ALB en tant que fournisseur d'adresses IP virtuelles du point de terminaison du cluster dans un cluster de charge de travail :
créez un fichier YAML de configuration de cluster de charge de travail et ajoutez le champ suivant :
AVI_CONTROL_PLANE_HA_PROVIDER: true
Si vous souhaitez utiliser une adresse IP statique pour l'adresse IP virtuelle du point de terminaison, ajoutez le champ suivant dans le fichier :
AVI_CONTROL_PLANE_HA_PROVIDER: true
VSPHERE_CONTROL_PLANE_ENDPOINT: <IP-ADDRESS>
Assurez-vous que l’adresse IP virtuelle est présente dans le pool d’adresses IP statiques spécifié dans votre réseau VIP.
Déployez le cluster de charge de travail au moyen de la commande tanzu cluster create
.
NSX ALB est désormais configuré comme fournisseur d'adresses IP virtuelles du point de terminaison pour le cluster de charge de travail.
Si vous souhaitez utiliser cette fonctionnalité sur NSX ALB Essentials Edition, assurez-vous que le réseau que vous utilisez ne comporte aucune configuration de pare-feu ou de stratégie réseau. Si vous avez configuré des pare-feu ou des stratégies réseau sur le réseau, déployez NSX ALB Enterprise Edition avec la fonctionnalité de passerelle automatique pour utiliser cette fonctionnalité.
Lorsque vous utilisez NSX ALB pour fournir une adresse IP virtuelle de point de terminaison de cluster, vous pouvez personnaliser le réseau d'adresses IP virtuelles pour votre point de terminaison de cluster et les adresses IP externes des services de charge de travail (équilibrage de charge et entrée). Vous pouvez les séparer en différents réseaux d'adresses IP virtuelles pour améliorer la sécurité et répondre à d'autres exigences de topologie réseau.
Le diagramme suivant décrit la topologie réseau lorsque des réseaux d'adresses IP virtuelles distincts sont configurés pour le cluster de gestion et les clusters de charge de travail :
Pour configurer des réseaux VIP distincts pour le cluster de gestion et les clusters de charge de travail :
Créez un fichier YAML de configuration de cluster de gestion et ajoutez les champs suivants dans le fichier :
AVI_CONTROL_PLANE_HA_PROVIDER: true
# Network used to place workload clusters' services external IPs (load balancer & ingress services)
AVI_DATA_NETWORK:
AVI_DATA_NETWORK_CIDR:
# Network used to place workload clusters' endpoint VIPs
AVI_CONTROL_PLANE_NETWORK:
AVI_CONTROL_PLANE_NETWORK_CIDR:
# Network used to place management clusters' services external IPs (load balancer & ingress services)
AVI_MANAGEMENT_CLUSTER_VIP_NETWORK_NAME:
AVI_MANAGEMENT_CLUSTER_VIP_NETWORK_CIDR:
# Network used to place management clusters' endpoint VIPs
AVI_MANAGEMENT_CLUSTER_CONTROL_PLANE_VIP_NETWORK_NAME:
AVI_MANAGEMENT_CLUSTER_CONTROL_PLANE_VIP_NETWORK_CIDR:
Pour plus d'informations sur la création d'un fichier de configuration de cluster de gestion, reportez-vous à la section Créer un fichier de configuration de cluster de gestion.
Créez le cluster de gestion au moyen de la commande tanzu management-cluster create
.
L'adresse IP virtuelle du point de terminaison du cluster et l'adresse IP externe du service d'équilibrage de charge sont désormais placées dans des réseaux différents.
Le diagramme suivant décrit la topologie réseau lorsque des réseaux d'adresses IP virtuelles distincts sont configurés pour différents clusters de charge de travail.
Pour configurer des réseaux d'adresses IP virtuelles distincts pour différents clusters de charge de travail :
Créez un objet CR AKODeploymentConfig
comme indiqué dans l'exemple suivant :
apiVersion: networking.tkg.tanzu.vmware.com/v1alpha1
kind: AKODeploymentConfig
metadata:
name: install-ako-for-dev-cluster
spec:
adminCredentialRef:
name: avi-controller-credentials
namespace: tkg-system-networking
certificateAuthorityRef:
name: avi-controller-ca
namespace: tkg-system-networking
controller: 1.1.1.1
cloudName: Default-Cloud
serviceEngineGroup: Default-Group
clusterSelector: # match workload clusters with dev-cluster: "true" label
matchLabels:
dev-cluster: "true"
controlPlaneNetwork: # clusters' endpoint VIP come from this VIP network
cidr: 10.10.0.0/16
name: avi-dev-cp-network
dataNetwork: # clusters' services external IP come from this VIP network
cidr: 20.20.0.0/16
name: avi-dev-dp-network
Appliquez les modifications sur le cluster de gestion :
kubectl --context=MGMT-CLUSTER-CONTEXT apply -f <FILE-NAME>
Dans le fichier YAML de configuration du cluster de charge de travail, ajoutez les champs requis, comme indiqué dans l'exemple suivant :
AVI_CONTROL_PLANE_HA_PROVIDER: true
AVI_LABELS: '{"dev-cluster": "true"}'
Créez le cluster de charge de travail au moyen de la commande tanzu cluster create
.
L'adresse IP virtuelle du point de terminaison des clusters et l'adresse IP externe du service d'équilibrage de charge sont désormais placées dans des réseaux différents.