Installation sur Google Kubernetes Engine
Installer l'Analyzer sur Google Kubernetes Engine
Prérequis
- Avoir un compte GCP avec les permissions pour créer et administrer des clusters Kubernetes.
- Un projet GCP avec l'API Kubernetes active.
- Avoir une machine avec
kubectl,gcloudethelminstallés.
Installer les outils nécessaires
Sur la machine ou VM que vous utiliserez pour administrer le cluster :
- Installez
kubectl, suivez la documentation officielle Kubernetes. - Installez
gcloud, suivez la documentation GCP. - Installez
helm, suivez la documentation officielle Helm.
Télécharger les charts Helm
Vous pouvez télécharger les charts helm avec :
wget https://api.latence.ca/software/k8s-analyzer.zip
Créer un cluster
- Une fois l'API Kubernetes activée et que vous avez les permissions nécessaires pour créer et administrer un cluster, nous allons en créer un.
- Sur la page de votre projet, cliquez sur Kubernetes Engine.
- Une fois dans l'onglet Clusters, cliquez sur Create et sélectionnez le cluster Standard.
- Dans la section Cluster basics, nommez votre Analyzer.
- Cliquez sur default pool et définissez le nombre de nœuds à 1, cochez la case Enable cluster autoscaler.
- Plus bas sur la page, définissez le Minimum number of nodes à 1 et le Maximum number of nodes à 2.
- Cliquez sur l'onglet Nodes à gauche et changez le type d'image de Container-Optimized OS with containerd vers Ubuntu with containerd.
- Dans la section Machine configuration, définissez le type de machine pour répondre aux exigences d'hébergement de l'Analyzer comme décrit dans docs.latence.ca.
- Définissez la taille du disque de démarrage à 20 Go comme requis pour que l'Analyzer fonctionne correctement.
- Si votre application peut gérer un environnement moins stable, sélectionnez Enable nodes on spot VMs, puisque c'est un environnement de démo/test, nous pouvons cocher la case. Cela réduira également le coût du cluster.
- Dans l'onglet Automation à gauche, sélectionnez Enable vertical Pod autoscaling.
- Finalement, vous pouvez cliquer sur Create et attendre que votre cluster soit configuré.
Installer l'Analyzer
Vous pouvez vous connecter à distance à votre cluster en utilisant cette commande dans votre terminal :
gcloud container clusters get-credentials <cluster-name> --zone <cluster-zone> --project <project-name>
- Vous pouvez voir les composants en cours d'exécution de votre cluster en entrant :
kubectl get all
- Nous devrons modifier un paramètre dans notre fichier
values.yaml:
1) La Licence Latencetech.
- Définissez votre licence.
- Une fois la licence définie, nous pouvons installer l'Analyzer en exécutant cette commande :
helm install analyzer k8s-analyzer/
- Attendez 60 secondes pour que tous les services et pods soient déployés.
- Vous pouvez vérifier l'état du déploiement en exécutant :
kubectl get all
- Une fois terminé, vous pouvez obtenir l'adresse IP externe où votre Analyzer a été déployé en exécutant cette commande :
kubectl get svc
Si vous avez activé le Load Balancer depuis le fichier values.yaml, vous obtiendrez 2 adresses externes :
- une pour Grafana et Influxdb
- une pour Kafka qui devra être utilisée dans la configuration du qos-agent
API
Si l'API ne fonctionne pas, supprimez le configmap et relancez
kubectl delete cm org-config
helm uninstall analyzer k8s-analyzer/
helm install analyzer k8s-analyzer/
Pour obtenir votre clé API, vous pouvez consulter les logs du conteneur latencetech_api avec :
kubectl logs <pod ID>
Installer l'Agent sur Google Kubernetes Engine
Prérequis
- Avoir un compte GCP avec les permissions pour créer et administrer des clusters Kubernetes.
- Un projet GCP avec l'API Kubernetes active.
- Avoir une machine avec
kubectl,gcloudethelminstallés.
Installer les outils nécessaires
Sur la machine ou VM que vous utiliserez pour administrer le cluster :
- Installez
kubectl, suivez la documentation officielle Kubernetes. - Installez
gcloud, suivez la documentation GCP. - Installez
helm, suivez la documentation officielle Helm.
Télécharger les charts Helm
Vous pouvez télécharger les charts helm avec :
wget https://api.latence.ca/software/k8s-agent.zip
Créer un cluster
- Une fois l'API Kubernetes activée et que vous avez les permissions nécessaires pour créer et administrer un cluster, nous allons en créer un.
- Sur la page de votre projet, cliquez sur Kubernetes Engine.
- Une fois dans l'onglet Clusters, cliquez sur Create et sélectionnez le cluster Standard.
- Dans la section Cluster basics, nommez votre Analyzer.
- Cliquez sur default pool et définissez le nombre de nœuds à 1, cochez la case Enable cluster autoscaler.
- Plus bas sur la page, définissez le Minimum number of nodes à 1 et le Maximum number of nodes à 3.
- Cliquez sur l'onglet Nodes à gauche et changez le type d'image de Container-Optimized OS with containerd vers Ubuntu with containerd.
- Dans la section Machine configuration, définissez le type de machine pour répondre aux exigences d'hébergement de l'Analyzer comme décrit dans docs.latence.ca.
- Définissez la taille du disque de démarrage à 10 Go comme requis pour que l'Analyzer fonctionne correctement.
- Si votre application peut gérer un environnement moins stable, sélectionnez Enable nodes on spot VMs, puisque c'est un environnement de démo/test, nous pouvons cocher la case. Cela réduira également le coût du cluster.
- Dans l'onglet Automation à gauche, sélectionnez Enable vertical Pod autoscaling.
- Finalement, vous pouvez cliquer sur Create et attendre que votre cluster soit configuré.
Installer l'Agent
Vous pouvez vous connecter à distance à votre cluster en utilisant cette commande dans votre terminal :
gcloud container clusters get-credentials <cluster-name> --zone <cluster-zone> --project <project-name>
- Vous pouvez voir les composants en cours d'exécution de votre cluster en entrant :
kubectl get all
Nous devrons modifier quatre paramètres dans notre fichier values.yaml :
1) La Licence Latencetech.
2) L'IP du Reflector.
3) L'IP de l'Analyzer.
4) L'ID de l'Agent.
5) L'ID du Customer (un entier).
- Définissez votre licence.
- Définissez les paramètres suivants.
# Agent Environment Variables
agent:
LTI_agent_id: "TO-BE-SET"
LTI_customer_id: "TO-BE-SET"
LTI_reflector: "TO-BE-SET"
ANALYZER_IP: "TO-BE-SET"
- Vous pouvez modifier les autres paramètres appartenant au qos-agent dans la section qui suit.
- Une fois tous les paramètres définis, nous pouvons installer l'agent en exécutant cette commande :
helm install agent k8s-agent/
- Vous pouvez vérifier l'état du déploiement en exécutant :
kubectl get all
Installer un Reflector sur Google Kubernetes Engine
Prérequis
- Avoir un compte GCP avec les permissions pour créer et administrer des clusters Kubernetes.
- Un projet GCP avec l'API Kubernetes active.
- Avoir une machine avec
kubectl,gcloudethelminstallés.
Installer les outils nécessaires
Sur la machine ou VM que vous utiliserez pour administrer le cluster :
- Installez
kubectl, suivez la documentation officielle Kubernetes. - Installez
gcloud, suivez la documentation GCP. - Installez
helm, suivez la documentation officielle Helm.
Télécharger les charts Helm
Vous pouvez télécharger les charts helm avec :
wget https://api.latence.ca/software/k8s-reflector.zip
Créer un cluster
- Une fois l'API Kubernetes activée et que vous avez les permissions nécessaires pour créer et administrer un cluster, nous allons en créer un.
- Sur la page de votre projet, cliquez sur Kubernetes Engine.
- Une fois dans l'onglet Clusters, cliquez sur Create et sélectionnez le cluster Standard.
- Dans la section Cluster basics, nommez votre Analyzer.
- Cliquez sur default pool et définissez le nombre de nœuds à 1, cochez la case Enable cluster autoscaler.
- Plus bas sur la page, définissez le Minimum number of nodes à 1 et le Maximum number of nodes à 3.
- Cliquez sur l'onglet Nodes à gauche et changez le type d'image de Container-Optimized OS with containerd vers Ubuntu with containerd.
- Dans la section Machine configuration, définissez le type de machine pour répondre aux exigences d'hébergement de l'Analyzer comme décrit dans docs.latence.ca.
- Définissez la taille du disque de démarrage à 10 Go comme requis pour que l'Analyzer fonctionne correctement.
- Si votre application peut gérer un environnement moins stable, sélectionnez Enable nodes on spot VMs, puisque c'est un environnement de démo/test, nous pouvons cocher la case. Cela réduira également le coût du cluster.
- Dans l'onglet Automation à gauche, sélectionnez Enable vertical Pod autoscaling.
- Finalement, vous pouvez cliquer sur Create et attendre que votre cluster soit configuré.
Configurer le Cluster
Vous pouvez vous connecter à distance à votre cluster en utilisant cette commande dans votre terminal :
gcloud container clusters get-credentials <cluster-name> --zone <cluster-zone> --project <project-name>
- Vous pouvez voir les composants en cours d'exécution de votre cluster en entrant :
kubectl get all
Nous devons maintenant créer une IP statique pour notre reflector afin que nos agents puissent communiquer avec lui. Nous avons 2 Load Balancers en cours d'exécution et nous aurons besoin qu'ils aient la même IP externe.
- Dans les paramètres de notre compte GCP, allez dans la section VPC network > IP addresses.
- Cliquez sur Reserve an external IP address.
- Choisissez un nom, définissez une description et NE L'ATTACHEZ PAS à des instances. Cliquez sur Reserve.
- Cela nous donnera alors une adresse IP que nous pourrons définir dans le fichier
values.yamlcomme Static IP.
Installer le Reflector
Nous devrons modifier trois paramètres dans notre fichier values.yaml :
1) La Licence Latencetech.
2) L'ID du Reflector.
3) L'IP statique de notre reflector
- Définissez votre licence.
- Définissez les paramètres suivants, le common ID est 1 et utilisez l'adresse IP réservée ci-dessus comme IP statique.
- Une fois tous les paramètres définis, nous pouvons installer le reflector en exécutant cette commande :
helm install reflector k8s-reflector/
- Vous pouvez vérifier l'état du déploiement en exécutant :
kubectl get all