Configuration de l’observabilité du réseau Azure Kubernetes Service (AKS) : Prometheus et Grafana gérés par Azure
L’observabilité du réseau AKS est utilisée pour collecter les données de trafic réseau de votre cluster AKS. L’observabilité du réseau active une plateforme centralisée qui analyse l’intégrité des applications et du réseau. Prometheus collecte les métriques d’observabilité du réseau AKS et Grafana permet de les visualiser. Les plans de données Cilium et non Cilium sont pris en charge. Dans cet article, découvrez comment activer le module complémentaire d’observabilité du réseau et utiliser Prometheus et Grafana gérés par Azure pour visualiser les métriques scrapées.
Important
L’observabilité du réseau dans AKS est actuellement disponible en préversion. Pour connaître les conditions juridiques qui s’appliquent aux fonctionnalités Azure en version bêta, en préversion ou plus généralement non encore en disponibilité générale, consultez l’Avenant aux conditions d’utilisation des préversions de Microsoft Azure.
Si vous souhaitez obtenir plus d’informations sur l’observabilité du réseau AKS, consultez Qu’est-ce que l’observabilité du réseau Azure Kubernetes Service (AKS) ?.
Prérequis
- Compte Azure avec un abonnement actif. Créez un compte gratuitement.
Utilisez l’environnement Bash dans Azure Cloud Shell. Pour plus d’informations, consultez Démarrage rapide pour Bash dans Azure Cloud Shell.
Si vous préférez exécuter les commandes de référence de l’interface de ligne de commande localement, installez l’interface Azure CLI. Si vous exécutez sur Windows ou macOS, envisagez d’exécuter Azure CLI dans un conteneur Docker. Pour plus d’informations, consultez Guide pratique pour exécuter Azure CLI dans un conteneur Docker.
Si vous utilisez une installation locale, connectez-vous à Azure CLI à l’aide de la commande az login. Pour finir le processus d’authentification, suivez les étapes affichées dans votre terminal. Pour connaître les autres options de connexion, consultez Se connecter avec Azure CLI.
Lorsque vous y êtes invité, installez l’extension Azure CLI lors de la première utilisation. Pour plus d’informations sur les extensions, consultez Utiliser des extensions avec Azure CLI.
Exécutez az version pour rechercher la version et les bibliothèques dépendantes installées. Pour effectuer une mise à niveau vers la dernière version, exécutez az upgrade.
- La version minimale d’Azure CLI requise pour les étapes de cet article est la version 2.44.0. Exécutez
az --version
pour trouver la version. Si vous devez installer ou mettre à niveau, voir Installer Azure CLI.
Installer l’extension Azure CLI aks-preview
Important
Les fonctionnalités d’évaluation AKS sont disponibles en libre-service et font l’objet d’un abonnement. Les préversions sont fournies « en l’état » et « en fonction des disponibilités », et sont exclues des contrats de niveau de service et de la garantie limitée. Les préversions AKS sont, dans la mesure du possible, partiellement couvertes par le service clientèle. Telles quelles, ces fonctionnalités ne sont pas destinées à une utilisation en production. Pour plus d’informations, consultez les articles de support suivants :
# Install the aks-preview extension
az extension add --name aks-preview
# Update the extension to make sure you have the latest version installed
az extension update --name aks-preview
Inscrire l’indicateur de fonctionnalité NetworkObservabilityPreview
az feature register --namespace "Microsoft.ContainerService" --name "NetworkObservabilityPreview"
Utilisez az feature show pour vérifier l’état d’inscription du marqueur de fonctionnalité :
az feature show --namespace "Microsoft.ContainerService" --name "NetworkObservabilityPreview"
Attendez que la fonctionnalité indique Inscrit avant de poursuivre l’article.
{
"id": "/subscriptions/23250d6d-28f0-41dd-9776-61fc80805b6e/providers/Microsoft.Features/providers/Microsoft.ContainerService/features/NetworkObservabilityPreview",
"name": "Microsoft.ContainerService/NetworkObservabilityPreview",
"properties": {
"state": "Registering"
},
"type": "Microsoft.Features/providers/features"
}
Une fois la fonctionnalité inscrite, actualisez l’inscription du fournisseur de ressources Microsoft.ContainerService à l’aide de az provider register :
az provider register -n Microsoft.ContainerService
Créer un groupe de ressources
Un groupe de ressources est un conteneur logique dans lequel les ressources Azure sont déployées et gérées. Créez un groupe de ressources avec la commande az group create. L’exemple suivant crée un groupe de ressources nommé myResourceGroup à l’emplacement eastus :
az group create \
--name myResourceGroup \
--location eastus
Remarque
Pour Kubernetes version 1.29 ou supérieure, l'observabilité du réseau est activée avec le profil de métriques AMA et l'indicateur AFEC (NetworkObservabilityPreview) jusqu'à ce qu'elle atteigne la disponibilité générale.
À partir de Kubernetes version 1.29, la balise --enable-network-observability n'est plus requise lors de la création ou de la mise à jour d'un cluster Azure Kubernetes Service (AKS).
Pour les clusters AKS exécutant Kubernetes version 1.28 ou antérieure, l'activation de l'observabilité du réseau nécessite la balise --enable-network-observability lors de la création ou de la mise à jour du cluster.
Créer un cluster AKS
Créez un cluster AKS avec la commande az aks create. L’exemple suivant crée un cluster AKS nommé myAKSCluster dans le groupe de ressources myResourceGroup :
Les clusters non Cilium prennent en charge l’activation de l’observabilité du réseau sur un cluster existant ou pendant la création d’un cluster.
Utilisez la commande az aks create dans l’exemple suivant pour créer un cluster AKS non Cilium avec une observabilité du réseau.
Nouveau cluster
az aks create \
--name myAKSCluster \
--resource-group myResourceGroup \
--location eastus \
--generate-ssh-keys \
--network-plugin azure \
--network-plugin-mode overlay \
--pod-cidr 192.168.0.0/16 \
--enable-network-observability
Cluster existant
Utilisez la commande az aks update pour activer l’observabilité du réseau d’un cluster existant.
az aks update \
--resource-group myResourceGroup \
--name myAKSCluster \
--enable-network-observability
Prometheus et Grafana gérés par Azure
Utilisez l’exemple suivant pour installer et activer Prometheus et Grafana pour votre cluster AKS.
Créer une ressource Azure Monitor
az resource create \
--resource-group myResourceGroup \
--namespace microsoft.monitor \
--resource-type accounts \
--name myAzureMonitor \
--location eastus \
--properties '{}'
Créer une instance Grafana
Utilisez la commande az grafana create pour créer un instance Grafana. Le nom de l’instance Grafana doit être unique. Remplacez myGrafana par un nom unique pour votre instance Grafana.
az grafana create \
--name myGrafana \
--resource-group myResourceGroup
Placer les ID de ressource Azure Monitor et Grafana dans des variables
Utilisez la commande az grafana show pour placer l’ID de ressource Grafana dans une variable. Utilisez la commande az resource show pour placer l’ID de ressource Azure Monitor dans une variable. Remplacez myGrafana par le nom de votre instance Grafana.
grafanaId=$(az grafana show \
--name myGrafana \
--resource-group myResourceGroup \
--query id \
--output tsv)
azuremonitorId=$(az resource show \
--resource-group myResourceGroup \
--name myAzureMonitor \
--resource-type "Microsoft.Monitor/accounts" \
--query id \
--output tsv)
Lier Azure Monitor et Grafana à un cluster AKS
Utilisez la commande az aks update pour lier des ressources Azure Monitor et Grafana à votre cluster AKS.
az aks update \
--name myAKSCluster \
--resource-group myResourceGroup \
--enable-azure-monitor-metrics \
--azure-monitor-workspace-resource-id $azuremonitorId \
--grafana-resource-id $grafanaId
Obtenir les informations d’identification du cluster
az aks get-credentials --name myAKSCluster --resource-group myResourceGroup
Visualiser à l’aide de Grafana
Remarque
La section suivante nécessite les déploiements de Prometheus et de Grafana gérés par Azure.
Utilisez l’exemple suivant pour vérifier que les pods Azure Monitor sont en cours d’exécution.
kubectl get po -owide -n kube-system | grep ama-
ama-metrics-5bc6c6d948-zkgc9 2/2 Running 0 (21h ago) 26h ama-metrics-ksm-556d86b5dc-2ndkv 1/1 Running 0 (26h ago) 26h ama-metrics-node-lbwcj 2/2 Running 0 (21h ago) 26h ama-metrics-node-rzkzn 2/2 Running 0 (21h ago) 26h ama-metrics-win-node-gqnkw 2/2 Running 0 (26h ago) 26h ama-metrics-win-node-tkrm8 2/2 Running 0 (26h ago) 26h
Sélectionnez tableau de bord dans le menu de navigation de gauche, ouvrez le tableau de bord Kubernetes / Mise en réseau sous le dossier Prometheus managé.
Vérifiez si les métriques dans Kubernetes/ Networking tableau de bord Grafana sont visibles. Si les métriques ne sont pas affichées, modifiez l’intervalle de temps pour les 15 dernières minutes dans la case supérieure droite.
Nettoyer les ressources
Si vous ne souhaitez pas continuer à utiliser cette application, supprimez le cluster AKS et les autres ressources créées dans cet article avec l’exemple suivant :
az group delete \
--name myResourceGroup
Étapes suivantes
Dans cet tutoriel, vous avez appris à installer et à activer l’observabilité du réseau AKS de votre cluster AKS.
Si vous souhaitez obtenir plus d’informations sur l’observabilité du réseau AKS, consultez Qu’est-ce que l’observabilité du réseau Azure Kubernetes Service (AKS) ?.
Pour créer un cluster AKS disposant de l’observabilité du réseau et de BYO Prometheus et Grafana, consultez l’article Configurer l’observabilité du réseau pour Azure Kubernetes Service (AKS) – BYO Prometheus et Grafana.