Procédures détaillées pour configurer la topologie à double niveau ou service mesh lite
Configuration logicielle requise
Distribution Kubernetes | Version Kubernetes | Interfaces réseau de conteneurs (CNI) | Version CPX | Version CIC | Version de NetScaler ADM | Version de l’agent NetScaler ADM |
---|---|---|---|---|---|---|
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 ADM et Kubernetes clusters sur le même réseau (par exemple, NetScaler ADM et Kubernetes cluster hébergé sur Citrix Hypervisor).
-
NetScaler ADM et Kubernetes se mettent en cluster sur un autre réseau. 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 graphe de service dans NetScaler ADM, assurez-vous de disposer des éléments suivants :
-
Cluster Kubernetes avec NetScaler CPX comme proxy. Pour plus d’informations, consultez NetScaler IngressController.
-
Routes statiques configurées sur NetScaler ADM pour permettre la communication entre NetScaler ADM et NetScaler CPX
-
J’ai téléchargé les exemples de fichiers de déploiement depuis le référentiel GitHub .
-
Ajout des paramètres requis dans le fichier YAML CPX pour garantir un enregistrement CPX réussi auprès de NetScaler ADM.
-
Ajout d’un cluster Kubernetes dans NetScaler ADM .
-
Déploiement d’un exemple d’application de microservice.
-
Activation de la sélection automatique des serveurs virtuels pour attribuer une licence aux serveurs virtuels.
-
Les paramètres des transactions Web ont été remplacés par Tous pour que l’agent NetScaler ADM puisse obtenir des transactions HTTP.
-
Mise à jour du fichier iStream.conf et modification du paramètre TCP en All pour l’agent NetScaler ADM afin d’obtenir des métriques TCP.
Configuration logicielle requise
Distribution Kubernetes | Version Kubernetes | Interfaces réseau de conteneurs (CNI) | Version CPX | Version CIC | Version de NetScaler ADM | Version de l’agent NetScaler ADM |
---|---|---|---|---|---|---|
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 ADM et Kubernetes clusters sur le même réseau (par exemple, NetScaler ADM et Kubernetes cluster hébergé sur Citrix Hypervisor).
-
NetScaler ADM et Kubernetes se mettent en cluster sur un autre réseau. 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 graphe de service dans NetScaler ADM, assurez-vous de disposer des éléments suivants :
-
Cluster Kubernetes avec NetScaler CPX comme proxy. Pour plus d’informations, consultez NetScaler IngressController.
-
Routes statiques configurées sur NetScaler ADM pour permettre la communication entre NetScaler ADM et NetScaler CPX
-
J’ai téléchargé les exemples de fichiers de déploiement depuis le référentiel GitHub .
-
Ajout des paramètres requis dans le fichier YAML CPX pour garantir un enregistrement CPX réussi auprès de NetScaler ADM.
-
Ajout d’un cluster Kubernetes dans NetScaler ADM .
-
Déploiement d’un exemple d’application de microservice.
-
Activation de la sélection automatique des serveurs virtuels pour attribuer une licence aux serveurs virtuels.
-
Les paramètres des transactions Web ont été remplacés par Tous pour que l’agent NetScaler ADM puisse obtenir des transactions HTTP.
-
Mise à jour du fichier iStream.conf et modification du paramètre TCP en All pour l’agent NetScaler ADM afin d’obtenir des métriques TCP.
Configurer des routes statiques dans NetScaler ADM
À l’intérieur du cluster Kubernetes, tous les pods conteneurisés utilisent un réseau de superposition. Il n’est pas possible d’établir la communication en utilisant directement ces adresses IP privées. Pour activer la communication entre NetScaler ADM et le cluster Kubernetes, vous devez configurer le routage statique dans NetScaler ADM.
Remarque
Si vous utilisez un agent sur site, assurez-vous de configurer des itinéraires statiques sur l’agent. À l’aide d’un client SSH, connectez-vous à l’agent NetScaler ADM et configurez les routes statiques.
Considérez que vous disposez des adresses IP suivantes pour votre cluster Kubernetes :
-
Kubernetes master – 101.xx.xx.112
-
Kubernetes worker 1 – 101.xx.xx.111
-
Kubernetes worker 2 – 101.xx.xx.110
Sur le maître Kubernetes, exécutez la commande suivante pour identifier le réseau de pod pour 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 ADM
-
Configurez le routage statique à l’aide de la commande
route add -net <public IP address range> <Kubernetes IP address>
Par exemple :
route add -net 192.168.0.0/24 101.xx.xx.112
route add -net 192.168.1.0/24 101.xx.xx.111
route add -net 192.168.2.0/24 101.xx.xx.110
-
Vérifiez la configuration à l’aide de
netstat -rn
-
Ajoutez ces commandes de routage dans
/mpsconfig/svm.conf
le fichier.-
Dans NetScaler ADM, 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échargez les exemples de fichiers de déploiement depuis GitHub
-
Utilisez la commande git clone
https://github.com/citrix/citrix-k8s-ingress-controller.git
pour cloner le dépôt git hub dans le nœud principal. -
Pour accéder aux YAML :
cd citrix-k8s-ingress-controller/example/servicegraph-demo/
Ajouter des paramètres dans le fichier CPX YAML
Remarque
Si vous utilisez CPX 58.x ou version ultérieure, vous devez utiliser le mot de passe non-nsroot lors de l’enregistrement auprès de l’agent ADM. Pour garantir la sécurité, l’agent NetScaler ADM 61.x ou les versions ultérieures nécessitent un changement de mot de passe obligatoire. Si votre agent NetScaler ADM est mis à niveau vers la version 61.x ou la dernière version, vous devez vous assurer d’utiliser CPX 58.x ou version ultérieure.
Vous devez inclure les paramètres suivants dans le fichier cpx.yaml
pour garantir l’enregistrement du CPX auprès de NetScaler ADM :
- 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 ADM
Remarque
Si l’agent ADM est utilisé, cela indique l’adresse IP de l’agent sur site.
-
NS_MGMT_FINGER_PRINT — Indique l’authentification pour CPX dans NetScaler ADM. Pour obtenir l’empreinte digitale :
-
Dans NetScaler ADM, accédez à Paramètres > Administration
-
Sous Configurations système, cliquez sur Afficher l’empreinte digitale 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 digitale.
-
-
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. Indiquez le mot de passe de votre choix
-
LOGSTREAM_COLLECTOR_IP — Indique l’adresse IP de l’agent NetScaler ADM, où le protocole Logstream doit être activé pour transférer les données du journal de CPX vers ADM
Ajouter une instance VPX ou SDX ou MPX ou BLX dans NetScaler ADM
Pour obtenir les analyses des instances ADC de niveau 1 dans Service Graph, vous devez ajouter l’instance VPX/SDX/MPX/BLX dans NetScaler ADM et activer Web Insight.
-
Accédez à Infrastructure > Instances > NetScaler
-
Cliquez sur l’option Ajouter pour ajouter l’instance. Pour plus d’informations, voir Ajouter des instances dans NetScalerADM
-
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 l’analyse sur les serveurs virtuels
Ajouter un cluster Kubernetes dans NetScaler ADM
Pour ajouter le cluster Kubernetes :
-
Connectez-vous à NetScaler ADM à l’aide des 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 - Indiquez un nom de votre choix.
-
URL du serveur API : vous pouvez obtenir les détails de l’URL du serveur d’API à partir du nœud Kubernetes Master.
-
Sur le nœud maître Kubernetes, exécutez la commande
kubectl cluster-info
. -
Entrez l’URL qui s’affiche pour « Kubernetes master is runningat ».
-
-
Jeton d’authentification : spécifiez le jeton d’authentification. Le jeton d’authentification est requis pour valider l’accès aux communications entre le cluster Kubernetes et NetScaler ADM. Pour générer un jeton d’authentification :
Sur le nœud maître Kubernetes :
-
Utilisez le 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 dispose désormais d’un accès à l’échelle du cluster.
Un jeton est automatiquement généré lors de la création du compte de service.
-
Courez
kubectl describe sa <name>
pour voir 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, veillez à sélectionner le même agent que vous avez ajouté dans le YAML CPX.
-
Cliquez sur Créer.
-
Déployer un exemple d’application microservice
Sur le nœud maître :
-
Exécuter
kubectl create -f namespace.yaml
pour créer un espace de noms. -
Déployez
hotdrink
des microservices, des entrées et des secrets à l’aide des commandes suivantes :kubectl create -f team_hotdrink.yaml -n sg-demo
kubectl create -f hotdrink-secret.yaml -n sg-demo
Déployer CPX et enregistrer CPX dans ADM
-
Exécutez
kubectl create -f rbac.yaml
pour déployer le rôle de cluster et la liaison au cluster. -
kubectl create -f cpx.yaml -n sg-demo
Exécuter pour déployer CPX.
Après le déploiement, l’enregistrement CPX est automatiquement effectué.
Activer la sélection automatique des serveurs virtuels pour les licences
Remarque
Assurez-vous d’avoir suffisamment de licences de serveur virtuel. Pour plus d’informations, voir Licences
Après avoir ajouté un cluster Kubernetes dans NetScaler ADM, vous devez vous assurer de sélectionner automatiquement les serveurs virtuels pour les licences. Les serveurs virtuels doivent être sous licence pour afficher les données dans Service Graph. Pour sélectionner automatiquement des serveurs virtuels :
-
Accédez à Paramètres > Configuration des licences et des analyses.
-
Sous Récapitulatif des licences du serveur virtuel, activez la sélection automatique des serveurs virtuelset la sélection automatique des serveurs virtuels non adressables.
Activer les paramètres Transaction Web et TCP
Après avoir ajouté le cluster Kubernetes et activé les serveurs virtuels de sélection automatique, modifiez les paramètres de transaction Web et Paramètres de transactions 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 Analytics.
-
Sous Paramètres de transaction Web, sélectionnez Tout.
-
Sous Paramètres des transactions TCP, sélectionnez Tout.
-
Cliquez sur OK.
Envoyer du trafic vers les microservices
Ensuite, vous devez envoyer du trafic vers des microservices pour que le graphe de service soit renseigné dans NetScaler ADM.
-
Exécutez
kubectl get svc -n sg-demo
pour exposer CPX via NodePort. -
Modifiez le fichier /etc/host et créez une entrée IP de domaine pour
hotdrink.beverages.com
Vous pouvez désormais accéder au microservice en utilisant
https://hotdrink.beverages.com
Dans cet article
- Configuration logicielle requise
- Avant de commencer
- Configuration logicielle requise
- Avant de commencer
- Configurer des routes statiques dans NetScaler ADM
- Téléchargez les exemples de fichiers de déploiement depuis GitHub
- Ajouter des paramètres dans le fichier CPX YAML
- Ajouter une instance VPX ou SDX ou MPX ou BLX dans NetScaler ADM
- Ajouter un cluster Kubernetes dans NetScaler ADM
- Déployer un exemple d’application microservice
- Déployer CPX et enregistrer CPX dans ADM
- Activer la sélection automatique des serveurs virtuels pour les licences
- Activer les paramètres Transaction Web et TCP
- Envoyer du trafic vers les microservices