Agregador de licencias NetScaler CPX

Actualmente, los de NetScaler CPX obtienen licencias del servidor NetScaler ADM. En un entorno de Kubernetes, los de NetScaler CPX pueden subir o bajar dinámicamente. Si un NetScaler CPX deja de funcionar inesperadamente, el servidor NetScaler ADM tarda unos minutos en reclamar la licencia. El servidor NetScaler ADM debe poder recuperar dichas licencias inmediatamente cuando los de NetScaler CPX dejen de funcionar, de modo que se pueda asignar la misma licencia a otro NetScaler CPX próximo. Además, si no se puede acceder al servidor NetScaler ADM por algún motivo, no puede obtener licencias de los nuevos de NetScaler CPX en el clúster.

El agregador de licencias de NetScaler CPX es un servicio de Kubernetes proporcionado por NetScaler. Este servicio actúa como proveedor local de licencias de NetScaler CPX dentro de un clúster de Kubernetes. El servicio NetScaler CPX License Aggregator implementado en un clúster de Kubernetes puede actuar como intermediario entre los de NetScaler CPX y el servidor de licencias de ADM y realizar un seguimiento de los de NetScaler CPX y las licencias asignadas. Con el servicio NetScaler CPX License Aggregator, el servidor NetScaler ADM puede reclamar licencias inmediatamente cuando NetScaler CPX deja de funcionar.

En un clúster de Kubernetes, el servicio NetScaler CPX License Aggregator admite NetScaler CPX como sidecar e implementaciones independientes.

Nota:

Para obtener licencias mediante el agregador de licencias de NetScaler CPX se requiere NetScaler CPX 13.1-30.x o una versión posterior. NetScaler CPX License Aggregator no admite la licencia de las versiones anteriores de NetScaler CPX.

Beneficios clave de NetScaler CPX License Aggregator

Los siguientes son los principales beneficios de usar NetScaler CPX License Aggregator:

  • Escalabilidad: un servidor de licencias NetScaler ADM solo puede admitir hasta 10 000 implementaciones de NetScaler CPX. Con la introducción del servicio NetScaler CPX License Aggregator, cada clúster de Kubernetes puede actuar como un único cliente para el servidor de licencias de NetScaler ADM. Por lo tanto, puede escalar muchos de NetScaler CPX con un único servidor de licencias NetScaler ADM.

  • Optimización de recursos: el servicio NetScaler CPX License Aggregator también admite la capacidad de licencias de todo el clúster y también puede extraer licencias del servidor NetScaler ADM según sea necesario. NetScaler CPX License Aggregator puede devolver las licencias al servidor NetScaler ADM. NetScaler CPX License Aggregator puede gestionar la terminación no correcta de los de NetScaler CPX y reclamar licencias de dichos de NetScaler CPX después del período de espera configurado.

Topología de implementación

El siguiente diagrama muestra una implementación de NetScaler CPX License Aggregator dentro de un clúster de Kubernetes.

Implementación de NetScaler CPX License Aggregator

En este diagrama:

  • CPX significa NetScaler CPX
  • CPX License Aggregator significa el agregador de licencias NetScaler CPX

En esta implementación de ejemplo, se implementa un servicio NetScaler CPX License Aggregator dentro del clúster de Kubernetes junto con los de NetScaler CPX y el agente NetScaler ADM. El servicio NetScaler CPX License Aggregator actúa como intermediario entre los de NetScaler CPX y el agente NetScaler ADM y supervisa todos los de NetScaler CPX dentro del clúster y administra las licencias para ellos.

Implementar NetScaler CPX License Aggregator mediante gráficos Helm

Requisitos previos

Se aplican los siguientes requisitos previos:

  • Necesitas la versión 1.16 y posteriores de Kubernetes.

  • Necesitas la versión 3.x o posterior de Helm.

  • Debe obtener la dirección IP del servidor de licencias que tiene la licencia para NetScaler CPX.

  • Debe proporcionar una contraseña para la base de datos Redis en NetScaler CPX License Aggregator. Puedes proporcionar la contraseña de la base de datos con el secreto de Kubernetes y puedes usar el siguiente comando para crear el secreto:

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

Implementación mediante Helm Charts

Siga los siguientes pasos para implementar el agregador de licencias NetScaler CPX mediante los gráficos de Helm según el tipo de licencia de NetScaler CPX. Para obtener más información sobre los diferentes tipos de licencias de NetScaler CPX, consulte Licencias de NetScaler CPX.

Instalación del gráfico Helm

Agregue el repositorio de gráficos Helm de NetScaler CPX License Aggregator con el siguiente comando:

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

Instalación del agregador de licencias de NetScaler CPX para administrar las licencias agrupadas en ancho de banda

Utilice uno de los siguientes comandos según el tipo de licencia agrupada de NetScaler CPX que tenga. En estos comandos, my-release se usa como nombre de la versión.

Nota:

De forma predeterminada, Helm Charts instala los roles y enlaces de roles de RBAC recomendados.

Para la licencia Platinum Bandwidth:

    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>

Para edición de ancho de banda empresarial:

    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>

Para edición de ancho de banda estándar:

    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>

Estos comandos implementan el agregador de licencias de NetScaler CPX en el clúster de Kubernetes con la configuración predeterminada. Puede configurar los parámetros en el momento de la instalación. Para obtener más información, consulte la sección de configuración del agregador de licencias de NetScaler CPX en el repositorio de GitHub de Helm Chart, que enumera los parámetros obligatorios y opcionales que puede configurar durante la instalación.

Instalación del agregador de licencias de NetScaler CPX para administrar las licencias de vCPU

Utilice uno de los siguientes comandos según el tipo de licencia de vCPU de NetScaler CPX que tenga. En estos comandos, my-release se usa como nombre de la versión.

Nota: De forma predeterminada, el gráfico Helm instala las funciones de RBAC recomendadas y los enlaces de funciones.

Para la edición vCPU de platino:

    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>

Para la edición de vCPU empresarial:

    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>

Para la edición vCPU estándar:

    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>

Instalación del agregador de licencias de NetScaler CPX para administrar varias licencias

Si necesita el agregador de licencias de NetScaler CPX para administrar varios tipos de licencias, los argumentos relevantes de esas licencias deben especificarse en el comando Helm.

Por ejemplo:

Para implementar el agregador de licencias pooled platinum bandwidth edition y vCPU platinum edition licencias de NetScaler CPX:

      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>

Configuración de NetScaler CPX para obtener una licencia de NetScaler CPX License Aggregator

Cuando se usa NetScaler CPX License Aggregator para obtener licencias de NetScaler CPX, la variable de entorno CLA debe proporcionarse en el YAML de implementación de NetScaler CPX.

La ipaddress o el domainname mediante el que se puede acceder al Agregador de licencias NetScaler CPX se debe proporcionar en esta variable de entorno de la siguiente manera:

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

O bien:

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

También debe proporcionar las siguientes variables de entorno en el NetScaler CPX YAML.

  • POD_NAME: Especifica el nombre del pod. El nombre del pod se expone a NetScaler CPX como una variable de entorno.
  • POD_NAMESPACE: Especifica el espacio de nombres del pod. El espacio de nombres del pod se expone a NetScaler CPX como una variable de entorno.
  • Bandwidth: Especifica el ancho de banda en Mbps para asignarlo a NetScaler CPX.
  • Edition: Especifica la edición de la licencia. Los valores admitidos incluyen Standard, Platinum y Enterprise.
  • CPX_CORES: Especifica la cantidad de núcleos que quiere ejecutar para NetScaler CPX.

Para obtener más información sobre las diferentes opciones de licencia de NetScaler CPX, consulte Licencias de NetScaler CPX.

A continuación, se muestra una configuración de ejemplo con estas variables de entorno:

      - 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

También debe agregar la siguiente etiqueta al NetScaler CPX YAML:

     labels:
       adc: citrix

Para ver un ejemplo de implementación de NetScaler CPX License Aggregator, consulte NetScaler CPX License Aggregator: Sample deployment.

Agregador de licencias NetScaler CPX