Aujourd’hui nous allons parler d’Azure Monitor. Comme son nom l’indique, cette solution, que nous pouvons utiliser avec AKS comme avec d’autres briques Azure, permet de collecter et présenter :
- Des informations systèmes : mémoire, CPU (par exemple) pour mes nodes et conteneurs.
- Les logs de mon cluster et de mes conteneurs.
Voyons d’abord comment activer Azure Monitor à la création de mon cluster AKS :
Dans l’onglet Supervision, je dois “activer la supervision de conteneurs” et me créer un espace de travail Log Analytics :
Suite au déploiement de mon AKS, dans le menu Informations je peux retrouver mes métriques :
Prenons maintenant le cas ou vous n’avez pas activé cette fonctionnalité :
Dans le menu Informations vous verrez ceci :
Ce qui est pratique, c’est qu’il suffit de cliquer sur Activer pour déployer la fonctionnalité sur votre AKS.
Coté CLI, pour activer Azure Monitor à la création du cluster, il faudra préciser : enable-addons monitoring à votre commande :
az aks create --resource-group rg_aks_monitor_cli --name myAKSCluster --enable-addons monitoring
Pour ajouter le monitoring à un AKS existant, utilisez az aks enable-addons comme ci-dessous :
az aks create --resource-group rg_aks_monitor_cli --name myAKSClusterWithoutMonitor
az aks enable-addons -a monitoring -n MyAKSClusterWithoutMonitor -g rg_aks_monitor_cli
Pour vérifier qu’un Azure Monitor est bien configuré et actif pour votre AKS, utilisez cette commande :
kubectl get deploy --all-namespaces
Et contrôlez la présence de omsagent-rs :
Décrivons maintenant ce qu’Azure Monitor est capable de nous fournir comme information ! Nous devons regarder les 3 éléments du menu Supervision :
Informations
Dans Informations (Insights) vous trouverez plusieurs onglets :
Cluster
Il vous présentera les graphiques suivants pour votre AKS :
- % d’utilisation CPU
- % d’utilisation mémoire
- Nombre de nœuds actifs
- Nombre de pods actifs
Noeuds / Contrôleurs / Conteneurs
Dans ces onglets je trouverai un tableau contenant des informations systèmes de mon cluster mais sur un niveau de détail différent dans chaque onglet. La vision noeud restera assez générale tandis que Containers aura un niveau plutôt processus :
Métriques
Dans le menu Métriques, actuellement en préversion, nous avons la possibilité de générer nous mêmes nos graphiques. On peux :
- Afficher des métriques sur un seul graphique ou dans des zones différentes.
- Les représenter de façon adapté (courbe, point, histogramme).
- Une fois configuré les attacher au dashboard pour avoir un œil sur l’état de santé de mon cluster dès l’arrivé sur le portail Azure.
Journaux
Enfin dans l’onglet Journaux, grâce à Log Analytics, j’ai une interface de recherche de logs dans laquelle j’ai la possibilité de taper une requête au format LINQ pour extraire les données souhaitée et faire une recherche sur le contenu.
Bonne découverte de cet outil 🙂
Thomas