Procédures détaillées pour configurer une topologie à deux niveaux ou un maillage de services léger
Exigences logicielles
| Distribution Kubernetes | Version Kubernetes | Interfaces réseau de conteneur (CNI) | Version CPX | Version CIC | Version de NetScaler Console | Version de l’agent NetScaler |
|---|---|---|---|---|---|---|
| Open source | v1.16.3 | Flannel | 13.0–41.28 | 1.5.25 | 13.0–47.22 | 13.0–47.22 |
Avant de commencer
Vous pouvez afficher le graphique de service à l’aide des scénarios suivants :
-
NetScaler Console et cluster Kubernetes sur le même réseau (par exemple, NetScaler Console et cluster Kubernetes hébergés sur Citrix Hypervisor).
-
NetScaler Console et cluster Kubernetes sur un réseau différent. Dans ce scénario, vous devez configurer un agent sur site et enregistrer l’agent sur le réseau où le cluster Kubernetes est hébergé.
Pour utiliser le graphique de service dans NetScaler Console, assurez-vous d’avoir :
-
Un cluster Kubernetes avec NetScaler CPX comme proxy. Pour plus d’informations, consultez NetScaler Ingress Controller.
-
Configuré des routes statiques sur NetScaler Console pour permettre la communication entre NetScaler Console et NetScaler CPX.
-
Téléchargé les fichiers de déploiement d’exemple depuis le référentiel GitHub.
-
Ajouté les paramètres requis dans le fichier YAML CPX pour assurer l’enregistrement réussi du CPX auprès de NetScaler Console.
-
Ajouté le cluster Kubernetes dans NetScaler Console.
-
Déployé une application de microservice d’exemple.
-
Déployé NetScaler CPX et enregistré le CPX auprès de NetScaler Console.
-
Activé Sélection automatique des serveurs virtuels pour licencier les serveurs virtuels.
-
Modifié les Paramètres de transaction Web sur Tous pour que l’agent NetScaler obtienne les transactions HTTP.
-
Mis à jour le fichier Istream.conf et modifié le paramètre TCP sur Tous pour que l’agent NetScaler obtienne les métriques TCP.
Exigences logicielles
| Distribution Kubernetes | Version Kubernetes | Interfaces réseau de conteneur (CNI) | Version CPX | Version CIC | Version de NetScaler Console | Version de l’agent NetScaler |
|---|---|---|---|---|---|---|
| Open source | v1.16.3 | Flannel | 13.0–41.28 | 1.5.25 | 13.0–47.22 | 13.0–47.22 |
Avant de commencer
Vous pouvez afficher le graphique de service à l’aide des scénarios suivants :
-
NetScaler Console et cluster Kubernetes sur le même réseau (par exemple, NetScaler Console et cluster Kubernetes hébergés sur Citrix Hypervisor).
-
NetScaler Console et cluster Kubernetes sur un réseau différent. Dans ce scénario, vous devez configurer un agent sur site et enregistrer l’agent sur le réseau où le cluster Kubernetes est hébergé.
Pour utiliser le graphique de service dans NetScaler Console, assurez-vous d’avoir :
-
Un cluster Kubernetes avec NetScaler CPX comme proxy. Pour plus d’informations, consultez NetScaler Ingress Controller.
-
Configuré des routes statiques sur NetScaler Console pour permettre la communication entre NetScaler Console et NetScaler CPX.
-
Téléchargé les fichiers de déploiement d’exemple depuis le référentiel GitHub.
-
Ajouté les paramètres requis dans le fichier YAML CPX pour assurer l’enregistrement réussi du CPX auprès de NetScaler Console.
-
Ajouté le cluster Kubernetes dans NetScaler Console.
-
Déployé une application de microservice d’exemple.
-
Déployé NetScaler CPX et enregistré le CPX auprès de NetScaler Console.
-
Activé Sélection automatique des serveurs virtuels pour licencier les serveurs virtuels.
-
Modifié les Paramètres de transaction Web sur Tous pour que l’agent NetScaler obtienne les transactions HTTP.
-
Mis à jour le fichier Istream.conf et modifié le paramètre TCP sur Tous pour que l’agent NetScaler obtienne les métriques TCP.
Configurer des routes statiques dans NetScaler Console
À l’intérieur du cluster Kubernetes, tous les pods conteneurisés utilisent un réseau de superposition. L’établissement de la communication à l’aide de ces adresses IP privées directement n’est pas possible. Pour permettre la communication de NetScaler Console vers le cluster Kubernetes, vous devez configurer le routage statique dans NetScaler Console.
Remarque
Si vous utilisez un agent sur site, assurez-vous de configurer des routes statiques sur l’agent. À l’aide d’un client SSH, connectez-vous à l’agent NetScaler et configurez les routes statiques.
Considérez que vous avez les adresses IP suivantes pour votre cluster Kubernetes :
-
Maître Kubernetes – 101.xx.xx.112
-
Nœud de travail Kubernetes 1 – 101.xx.xx.111
-
Nœud de travail Kubernetes 2 – 101.xx.xx.110
Sur le maître Kubernetes, exécutez la commande suivante pour identifier le réseau de pods afin d’effectuer le routage statique :
kubectl get nodes -o jsonpath="{range .items[*]}{'podNetwork: '}{.spec.podCIDR}{'\t'}{'gateway: '}{.status.addresses[0].address}{'\n'}{end}"
Voici un exemple de sortie après l’exécution de la commande :

-
À l’aide d’un client SSH, connectez-vous à NetScaler Console.
-
Configurez le routage statique à l’aide de la commande
route add -net <plage d'adresses IP publiques> <adresse IP Kubernetes>.Par exemple :
route add -net 192.168.0.0/24 101.xx.xx.112route add -net 192.168.1.0/24 101.xx.xx.111route add -net 192.168.2.0/24 101.xx.xx.110 -
Vérifiez la configuration à l’aide de
netstat -rn.
-
Ajoutez ces commandes de route dans le fichier
/mpsconfig/svm.conf.-
Dans NetScaler Console, accédez au fichier svm.conf à l’aide de la commande suivante :
vim /mpsconfig/svm.conf -
Ajoutez les routes statiques dans le fichier svm.conf.
Par exemple,
route add -net 192.168.0.0/24 101.xx.xx.112.
-
Télécharger les fichiers de déploiement d’exemple depuis GitHub
-
Utilisez la commande git clone
https://github.com/citrix/citrix-k8s-ingress-controller.gitpour cloner le référentiel GitHub sur le nœud maître. -
Pour accéder aux fichiers YAML :
cd citrix-k8s-ingress-controller/example/servicegraph-demo/
Ajouter des paramètres dans le fichier YAML CPX
Remarque
Si vous utilisez CPX 58.x ou une version ultérieure, vous devez utiliser le mot de passe non-nsroot lors de l’enregistrement auprès de l’agent. Pour des raisons de sécurité, les versions 61.x ou ultérieures de l’agent NetScaler nécessitent un changement de mot de passe obligatoire. Si votre agent NetScaler est mis à niveau vers la version 61.x ou une version plus récente, vous devez vous assurer d’utiliser la version CPX 58.x ou ultérieure.
Vous devez inclure les paramètres suivants dans le fichier cpx.yaml pour assurer l’enregistrement du CPX auprès de NetScaler Console :
- name: "NS_MGMT_SERVER"
value: "xx.xx.xx.xx"
- name: "NS_MGMT_FINGER_PRINT"
value: "xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx"
- name: "NS_HTTP_PORT"
value: "9080"
- name: "NS_HTTPS_PORT"
value: 9443"
- name: "NS_MGMT_USER"
value: "nsroot"
- name: "NS_MGMT_PASS"
value: <your password>
- name: "LOGSTREAM_COLLECTOR_IP"
value: "xx.xx.xx.xx"
<!--NeedCopy-->
-
NS_MGMT_SERVER – Indique l’adresse IP de NetScaler Console.
Remarque
Si un agent est utilisé, cela indique l’adresse IP de l’agent.
-
NS_MGMT_FINGER_PRINT – Indique l’authentification pour CPX dans NetScaler Console. Pour obtenir l’empreinte numérique :
-
Dans NetScaler Console, accédez à Paramètres > Administration.
-
Sous Configurations système, cliquez sur Afficher l’empreinte ADM.

Remarque :
Si vous avez configuré un agent sur site, accédez à Infrastructure > Instances > Agents, sélectionnez l’agent, puis cliquez sur Afficher l’empreinte numérique.

-
-
NS_HTTP_PORT – Indique le port HTTP pour la communication.
-
NS_HTTPS_PORT – Indique le port HTTPS pour la communication.
-
NS_MGMT_USER - Indique le nom d’utilisateur.
-
NS_MGMT_PASS - Indique le mot de passe. Spécifiez un mot de passe de votre choix.
-
LOGSTREAM_COLLECTOR_IP – Indique l’adresse IP de l’agent NetScaler, où le protocole Logstream doit être activé pour transférer les données de journal de CPX vers NetScaler Console.
Ajouter une instance VPX ou SDX ou MPX ou BLX dans NetScaler Console
Pour obtenir les analyses d’instance NetScaler de niveau 1 dans le graphique de service, vous devez ajouter l’instance VPX/SDX/MPX/BLX dans NetScaler Console et activer Web Insight.
-
Accédez à Infrastructure > Instances > NetScaler.
-
Cliquez sur l’option Ajouter pour ajouter l’instance. Pour plus d’informations, consultez Ajouter des instances dans NetScaler Console.
-
Après avoir ajouté l’instance, sélectionnez le serveur virtuel et activez Web Insight. Pour plus d’informations, consultez Gérer les licences et activer les analyses sur les serveurs virtuels.
Ajouter un cluster Kubernetes dans NetScaler Console
Pour ajouter le cluster Kubernetes :
-
Connectez-vous à NetScaler Console avec les informations d’identification de l’administrateur.
-
Accédez à Orchestration > Kubernetes > Cluster. La page Clusters s’affiche.
-
Cliquez sur Ajouter.
-
Dans la page Ajouter un cluster, spécifiez les paramètres suivants :
-
Nom - Spécifiez un nom de votre choix.
-
URL du serveur API - Vous pouvez obtenir les détails de l’URL du serveur API à partir du nœud maître Kubernetes.
-
Sur le nœud maître Kubernetes, exécutez la commande
kubectl cluster-info.
-
Saisissez l’URL qui s’affiche pour « Kubernetes master is running at. »
-
-
Jeton d’authentification - Spécifiez le jeton d’authentification. Le jeton d’authentification est requis pour valider l’accès à la communication entre le cluster Kubernetes et NetScaler Console. Pour générer un jeton d’authentification :
Sur le nœud maître Kubernetes :
-
Utilisez le fichier YAML suivant pour créer un compte de service :
apiVersion: v1 kind: ServiceAccount metadata: name: <name> namespace: <namespace> <!--NeedCopy--> -
Exécutez
kubectl create -f <yaml file>.Le compte de service est créé.
-
Exécutez
kubectl create clusterrolebinding <name> --clusterrole=cluster-admin --serviceaccount=<namespace>:<name>pour lier le rôle de cluster au compte de service.Le compte de service a maintenant un accès à l’échelle du cluster.
Un jeton est automatiquement généré lors de la création du compte de service.
-
Exécutez
kubectl describe sa <name>pour afficher le jeton. -
Pour obtenir la chaîne secrète, exécutez
kubectl describe secret <token-name>.
-
-
Sélectionnez l’agent dans la liste.
Remarque
Si vous utilisez un agent sur site, assurez-vous de sélectionner le même agent que celui que vous avez ajouté dans le fichier YAML CPX.
-
Cliquez sur Créer.

-
Déployer une application de microservice d’exemple
Sur le nœud maître :
-
Exécutez
kubectl create -f namespace.yamlpour créer un espace de noms. -
Déployez les microservices
hotdrink, l’entrée et les secrets à l’aide des commandes suivantes :kubectl create -f team_hotdrink.yaml -n sg-demokubectl create -f hotdrink-secret.yaml -n sg-demo
Déployer CPX et enregistrer CPX dans NetScaler Console
-
Exécutez
kubectl create -f rbac.yamlpour déployer le rôle de cluster et la liaison de cluster. -
Exécutez
kubectl create -f cpx.yaml -n sg-demopour déployer CPX.
Après le déploiement, l’enregistrement du CPX est effectué automatiquement.
Activer la sélection automatique des serveurs virtuels pour la licence
Remarque
Assurez-vous de disposer de licences de serveur virtuel suffisantes. Pour plus d’informations, consultez Licences.
Après avoir ajouté le cluster Kubernetes dans NetScaler Console, vous devez vous assurer de sélectionner automatiquement les serveurs virtuels pour la licence. Les serveurs virtuels doivent être sous licence pour afficher les données dans le graphique de service. Pour sélectionner automatiquement les serveurs virtuels :
-
Accédez à Paramètres > Configuration des licences et des analyses.
-
Sous Résumé des licences de serveurs virtuels, activez Sélection automatique des serveurs virtuels et Sélection automatique des serveurs virtuels non adressables.

Activer les paramètres de transaction Web et de transaction TCP
Après avoir ajouté le cluster Kubernetes et activé la sélection automatique des serveurs virtuels, modifiez les Paramètres de transaction Web et les Paramètres de transaction TCP sur Tous.
-
Accédez à Paramètres > Paramètres d’analyse.
La page Paramètres d’analyse s’affiche.
-
Cliquez sur Activer les fonctionnalités pour l’analyse.
-
Sous Paramètres de transaction Web, sélectionnez Tous.
-
Sous Paramètres de transaction TCP, sélectionnez Tous.

-
Cliquez sur OK.
Envoyer du trafic aux microservices
Ensuite, vous devez envoyer du trafic aux microservices pour que le graphique de service soit renseigné dans NetScaler Console.
-
Exécutez
kubectl get svc -n sg-demopour exposer CPX via NodePort.
-
Modifiez le fichier etc/host et créez une entrée IP de domaine pour
hotdrink.beverages.com.Vous pouvez maintenant accéder au microservice à l’aide de
https://hotdrink.beverages.com.
Dans cet article
- Exigences logicielles
- Avant de commencer
- Exigences logicielles
- Avant de commencer
- Configurer des routes statiques dans NetScaler Console
- Télécharger les fichiers de déploiement d’exemple depuis GitHub
- Ajouter des paramètres dans le fichier YAML CPX
- Ajouter une instance VPX ou SDX ou MPX ou BLX dans NetScaler Console
- Ajouter un cluster Kubernetes dans NetScaler Console
- Déployer une application de microservice d’exemple
- Déployer CPX et enregistrer CPX dans NetScaler Console
- Activer la sélection automatique des serveurs virtuels pour la licence
- Activer les paramètres de transaction Web et de transaction TCP
- Envoyer du trafic aux microservices