Agrégateur de licences NetScaler CPX

Actuellement, les NetScaler CPX obtiennent des licences du serveur NetScaler ADM. Dans un environnement Kubernetes, les NetScaler CPX peuvent apparaître ou disparaître dynamiquement. Si un NetScaler CPX tombe en panne de manière inattendue, le serveur NetScaler ADM met quelques minutes à récupérer la licence. Le serveur NetScaler ADM doit être capable de récupérer ces licences immédiatement dès que les NetScaler CPX tombent en panne afin que la même licence puisse être allouée à un autre NetScaler CPX à venir. De plus, si le serveur NetScaler ADM est inaccessible pour une raison quelconque, vous ne pouvez pas attribuer de licence aux nouveaux NetScaler CPX dans le cluster.

L’agrégateur de licences NetScaler CPX est un service Kubernetes fourni par NetScaler. Ce service agit comme un fournisseur local pour l’octroi de licences NetScaler CPX au sein d’un cluster Kubernetes. Le service d’agrégateur de licences NetScaler CPX déployé dans un cluster Kubernetes peut agir comme un intermédiaire entre les NetScaler CPX et le serveur de licences ADM et assurer le suivi des NetScaler CPX et des licences allouées. Avec le service d’agrégateur de licences NetScaler CPX, le serveur NetScaler ADM peut récupérer les licences immédiatement dès que les NetScaler CPX tombent en panne.

Dans un cluster Kubernetes, le service d’agrégateur de licences NetScaler CPX prend en charge les déploiements NetScaler CPX en tant que sidecar et autonomes.

Remarque :

L’octroi de licences à l’aide de l’agrégateur de licences NetScaler CPX nécessite NetScaler CPX 13.1-30.x ou une version ultérieure. L’agrégateur de licences NetScaler CPX ne prend pas en charge l’octroi de licences aux versions antérieures de NetScaler CPX.

Principaux avantages de l’agrégateur de licences NetScaler CPX

Voici les principaux avantages de l’utilisation de l’agrégateur de licences NetScaler CPX :

  • Évolutivité : Un serveur de licences NetScaler ADM ne peut prendre en charge que jusqu’à 10 000 déploiements NetScaler CPX. Avec l’introduction du service d’agrégateur de licences NetScaler CPX, chaque cluster Kubernetes peut agir comme un client unique pour le serveur de licences NetScaler ADM. Ainsi, vous pouvez mettre à l’échelle de nombreux NetScaler CPX avec un seul serveur de licences NetScaler ADM.

  • Optimisation des ressources : Le service d’agrégateur de licences NetScaler CPX prend également en charge la capacité de licence à l’échelle du cluster et peut également extraire des licences du serveur NetScaler ADM en fonction des besoins. L’agrégateur de licences NetScaler CPX peut renvoyer les licences au serveur NetScaler ADM. L’agrégateur de licences NetScaler CPX peut gérer la terminaison non gracieuse des NetScaler CPX et récupérer les licences de ces NetScaler CPX après la période d’attente configurée.

Topologie de déploiement

Le diagramme suivant montre un déploiement de l’agrégateur de licences NetScaler CPX au sein d’un cluster Kubernetes.

Déploiement de l'agrégateur de licences NetScaler CPX

Dans ce diagramme :

  • CPX signifie NetScaler CPX
  • CPX License Aggregator signifie NetScaler CPX License Aggregator

Dans cet exemple de déploiement, un service NetScaler CPX License Aggregator est déployé au sein du cluster Kubernetes, avec les NetScaler CPX et l’agent NetScaler ADM. Le service NetScaler CPX License Aggregator agit comme un intermédiaire entre les NetScaler CPX et l’agent NetScaler ADM, surveille tous les NetScaler CPX au sein du cluster et gère leurs licences.

Déployer NetScaler CPX License Aggregator à l’aide de graphiques Helm

Prérequis

Les prérequis suivants s’appliquent :

  • Vous avez besoin de Kubernetes version 1.16 ou ultérieure.

  • Vous avez besoin de Helm version 3.x ou ultérieure.

  • Vous devez obtenir l’adresse IP du serveur de licences qui possède la licence pour NetScaler CPX.

  • Vous devez fournir un mot de passe pour la base de données Redis dans NetScaler CPX License Aggregator. Vous pouvez fournir le mot de passe de la base de données à l’aide du secret Kubernetes et la commande suivante peut être utilisée pour créer le secret :

     kubectl create secret generic dbsecret --from-literal=password=<custom-password>
    

Déploiement à l’aide de graphiques Helm

Suivez les étapes suivantes pour déployer NetScaler CPX License Aggregator à l’aide de graphiques Helm, en fonction du type de licence NetScaler CPX. Pour plus d’informations sur les différents types de licences NetScaler CPX, consultez Licences NetScaler CPX.

Installation du graphique Helm

Ajoutez le référentiel de graphiques Helm NetScaler CPX License Aggregator à l’aide de la commande suivante :

    helm repo add Citrix https://citrix.github.io/citrix-helm-charts/

Installation de NetScaler CPX License Aggregator pour gérer les licences de bande passante en pool

Utilisez l’une des commandes suivantes en fonction du type de licence en pool NetScaler CPX que vous possédez. Dans ces commandes, my-release est utilisé comme nom de version.

Remarque :

Par défaut, le graphique Helm installe les rôles RBAC et les liaisons de rôles recommandés.

Pour la licence de bande passante Platinum :

    helm install my-release citrix/cpx-license-aggregator --set licenseServer.address=<License-Server-IP-or-FQDN>,redis.secretName=<Kubernetes-Secret-for-DB-password>,licenseAggregator.username=<unique-ID-for-CLA>,licenseInfo.instanceQuantum=<QUANTUM>,licenseInfo.instanceLowWatermark=<LOW WATERMARK>,licenseInfo.bandwidthPlatinumQuantum=<QUANTUM-in-Mbps>,licenseInfo.bandwidthPlatinumLowWatermark=<LOW WATERMARK-in-Mbps>

Pour l’édition de bande passante Enterprise :

    helm install my-release citrix/cpx-license-aggregator --set licenseServer.address=<License-Server-IP-or-FQDN>,redis.secretName=<Kubernetes-Secret-for-DB-password>,licenseAggregator.username=<unique-ID-for-CLA>,licenseInfo.instanceQuantum=<QUANTUM>,licenseInfo.instanceLowWatermark=<LOW WATERMARK>,licenseInfo.bandwidthEnterpriseQuantum=<QUANTUM-in-Mbps>,licenseInfo.bandwidthEnterpriseLowWatermark=<LOW WATERMARK-in-Mbps>

Pour l’édition de bande passante Standard :

    helm install my-release citrix/cpx-license-aggregator --set licenseServer.address=<License-Server-IP-or-FQDN>,redis.secretName=<Kubernetes-Secret-for-DB-password>,licenseAggregator.username=<unique-ID-for-CLA>,licenseInfo.instanceQuantum=<QUANTUM>,licenseInfo.instanceLowWatermark=<LOW WATERMARK>,licenseInfo.bandwidthStandardQuantum=<QUANTUM-in-Mbps>,licenseInfo.bandwidthStandardLowWatermark=<LOW WATERMARK-in-Mbps>

Ces commandes déploient l’agrégateur de licences NetScaler CPX sur le cluster Kubernetes avec la configuration par défaut. Vous pouvez configurer les paramètres au moment de l’installation. Pour plus d’informations, consultez la section Configuration de l’agrégateur de licences NetScaler CPX dans le référentiel GitHub du graphique Helm qui répertorie les paramètres obligatoires et facultatifs que vous pouvez configurer pendant l’installation.

Installation de l’agrégateur de licences NetScaler CPX pour gérer les licences vCPU

Utilisez l’une des commandes suivantes en fonction du type de licence vCPU NetScaler CPX dont vous disposez. Dans ces commandes, my-release est utilisé comme nom de version.

Remarque : Par défaut, le graphique Helm installe les rôles RBAC et les liaisons de rôles recommandés.

Pour l’édition vCPU Platinum :

    helm install my-release citrix/cpx-license-aggregator --set licenseServer.address=<License-Server-IP-or-FQDN>,redis.secretName=<Kubernetes-Secret-for-DB-password>,licenseAggregator.username=<unique-ID-for-CLA>,licenseInfo.vcpuPlatinumQuantum=<QUANTUM>,licenseInfo.vcpuPlatinumLowWatermark=<LOW WATERMARK>

Pour l’édition vCPU Enterprise :

    helm install my-release citrix/cpx-license-aggregator --set licenseServer.address=<License-Server-IP-or-FQDN>,redis.secretName=<Kubernetes-Secret-for-DB-password>,licenseAggregator.username=<unique-ID-for-CLA>,licenseInfo.vcpuEnterpriseQuantum=<QUANTUM>,licenseInfo.vcpuEnterpriseLowWatermark=<LOW WATERMARK>

Pour l’édition vCPU Standard :

    helm install my-release citrix/cpx-license-aggregator --set licenseServer.address=<License-Server-IP-or-FQDN>,redis.secretName=<Kubernetes-Secret-for-DB-password>,licenseAggregator.username=<unique-ID-for-CLA>,licenseInfo.vcpuStandardQuantum=<QUANTUM>,licenseInfo.vcpuStandardLowWatermark=<LOW WATERMARK>

Installation de l’agrégateur de licences NetScaler CPX pour gérer plusieurs licences

Si vous avez besoin de l’agrégateur de licences NetScaler CPX pour gérer plusieurs types de licences, les arguments pertinents de ces licences doivent être spécifiés dans la commande Helm.

Par exemple :

Pour déployer NetScaler CPX License Aggregator pour les licences pooled platinum bandwidth edition et vCPU platinum edition :

      helm install demo citrix/cpx-license-aggregator --set licenseServer.address=<License-Server-IP-or-FQDN>,redis.secretName=<Kubernetes-Secret-for-DB-password>,licenseAggregator.username=<unique-ID-for-CLA>,licenseInfo.instanceQuantum=<QUANTUM>,licenseInfo.instanceLowWatermark=<LOW WATERMARK>,licenseInfo.bandwidthPlatinumQuantum=<QUANTUM-in-Mbps>,licenseInfo.bandwidthPlatinumLowWatermark=<LOW WATERMARK-in-Mbps>,licenseInfo.vcpuPlatinumQuantum=<QUANTUM>,licenseInfo.vcpuPlatinumLowWatermark=LOW WATERMARK>

Configuration de NetScaler CPX pour obtenir une licence de NetScaler CPX License Aggregator

Lorsque vous utilisez NetScaler CPX License Aggregator pour la gestion des licences NetScaler CPX, la variable d’environnement CLA doit être fournie dans le fichier YAML de déploiement de NetScaler CPX.

Le ipaddress ou domainname permettant d’accéder à NetScaler CPX License Aggregator doit être fourni dans cette variable d’environnement comme suit :

      env:
      - name: "CLA"
        value: "192.0.2.2"

Ou

      env:
      - name: "CLA"
        value: "local-cla.org"

Vous devez également fournir les variables d’environnement suivantes dans le fichier YAML de NetScaler CPX.

  • POD_NAME : Spécifie le nom du pod. Le nom du pod est exposé à NetScaler CPX en tant que variable d’environnement.
  • POD_NAMESPACE : Spécifie l’espace de noms du pod. L’espace de noms du pod est exposé à NetScaler CPX en tant que variable d’environnement.
  • Bandwidth : Spécifie la bande passante en Mbps à allouer à NetScaler CPX.
  • Edition : Spécifie l’édition de la licence. Les valeurs prises en charge incluent Standard, Platinum et Enterprise.
  • CPX_CORES : Spécifie le nombre de cœurs que vous souhaitez exécuter pour NetScaler CPX.

Pour plus d’informations sur les différentes options de licence NetScaler CPX, consultez Licences NetScaler CPX.

Ce qui suit présente un exemple de configuration avec ces variables d’environnement :

      - name: POD_NAME
        valueFrom:
          fieldRef:
            apiVersion: v1
            fieldPath: metadata.name
      - name: POD_NAMESPACE
        valueFrom:
          fieldRef:
            apiVersion: v1
            fieldPath: metadata.namespace
      - name: “BANDWIDTH”
        value: 1000
      - name: “CPX_CORES”
        value: 1
      - name: “EDITION”
        value: PLATINUM

Vous devez également ajouter l’étiquette suivante au fichier YAML de NetScaler CPX :

     labels:
       adc: citrix®

Pour un exemple de déploiement de NetScaler CPX License Aggregator, consultez NetScaler CPX License Aggregator : Exemple de déploiement.

Agrégateur de licences NetScaler CPX