Optimisez votre utilisation de GKE grâce à des insights et des recommandations


Avec Google Kubernetes Engine (GKE), vous pouvez recevoir des conseils normatifs pour optimiser vos clusters.

GKE surveille vos clusters et s'il existe des optimisations potentielles, des conseils sont fournis via l'outil de recommandation, un service Google Cloud qui génère des insights et des recommandations pour l'utilisation des ressources sur Google Cloud. Pour GKE, les outils de recommandation fournissent deux types d'informations :

  • Un insight explique que GKE a détecté que l'utilisation de votre cluster peut être optimisée d'une manière ou d'une autre.
  • Une recommandation explique comment optimiser l'utilisation de votre cluster.

GKE fournit ces informations dans la console Google Cloud. Vous pouvez également les trouver à l'aide de Google Cloud CLI et de l'API Recommender. GKE fournit des outils de recommandation pour les sujets suivants :

  • Abandons : atténuez l'exposition aux fonctionnalités ou API Kubernetes obsolètes.
  • Opérations et connectivité: corrigez les problèmes liés à la connectivité du plan de contrôle et des nœuds, ainsi que l'utilisation des adresses IP.
  • Optimisation des coûts : mettez en œuvre des configurations et des pratiques à coût maîtrisé. Par exemple, Identifiez les clusters GKE inactifs.
  • Agones : isolez le contrôleur Agones dans votre cluster.
  • Interruptions : assurez la continuité et la récupération des charges de travail lors de la maintenance.
  • Webhooks : garantit la stabilité du plan de contrôle lors de l'utilisation de webhooks.

Avant de commencer

Avant de commencer, effectuez les tâches suivantes :

  • Activez l'API Google Kubernetes Engine.
  • Activer l'API Google Kubernetes Engine
  • Si vous souhaitez utiliser Google Cloud CLI pour cette tâche, installez puis initialisez gcloud CLI. Si vous avez déjà installé gcloud CLI, assurez-vous de disposer de la dernière version en exécutant la commande gcloud components update.

Rôles requis

Vérifiez que vous disposez des autorisations nécessaires pour obtenir les insights et recommandations de Kubernetes, avec les rôles de base ou les rôles prédéfinis suivants :

Afficher les insights et les recommandations

Vous pouvez afficher les insights et les recommandations en utilisant Google Cloud CLI, la console Google Cloud ou l'API Recommender.

Console

  1. Accédez à la page Google Kubernetes Engine dans la console Google Cloud :

    Accéder à Google Kubernetes Engine

  2. Recherchez des insights dans la colonne Notifications pour des clusters spécifiques.

  3. Cliquez sur l'insight pour afficher plus d'informations. Dans le panneau de la barre latérale, vous pouvez afficher des détails sur cet insight, y compris toute recommandation associée.

gcloud

Un insight comporte généralement une recommandation correspondante. Les insights sont récupérés avec gcloud recommender insights et les recommandations avec gcloud recommender recommendations.

  1. Affichez la liste des insights pour les clusters d'une zone spécifique (pour les clusters zonaux) ou d'une région spécifique (pour les clusters régionaux) :

    gcloud recommender insights list \
        --insight-type=google.container.DiagnosisInsight \
        --location=LOCATION \
        --project=PROJECT_ID \
        --format=FORMAT \
        --filter="insightSubtype:SUBTYPE"
    

    Remplacez les éléments suivants :

    • PROJECT_ID : ID du projet Google Cloud dans lequel se trouvent les clusters.
    • LOCATION : région ou zone exacte du cluster. Pour les clusters zonaux, vous devez fournir la zone exacte (par exemple, us-central1-c). Pour les clusters régionaux, vous devez indiquer la région exacte (par exemple, us-central1).
    • FORMAT : définissez le format de sortie sur YAML. Cette option est facultative.
    • SUBTYPE : sous-type d'insight, par exemple DEPRECATION_K8S_1_23_CERTIFICATE. Cela limite la sortie aux insights d'un sous-type spécifié. Cette option est facultative.

    Si vous disposez déjà d'un ID d'insight, vous pouvez également afficher les détails de l'insight en exécutant la commande suivante :

    gcloud recommender insights describe INSIGHT \
        --insight-type=google.container.DiagnosisInsight \
        --location=LOCATION \
        --project=PROJECT_ID \
        --format=FORMAT
    

    Remplacez INSIGHT par la valeur de l'ID d'insight, spécifiée à la fin de l'URL du champ name de l'insight.

    Le résultat inclut des détails supplémentaires sur le comportement détecté par GKE avec votre cluster.

  2. Affichez la liste des recommandations pour les clusters d'une zone spécifique (pour les clusters zonaux) ou d'une région spécifique (pour les clusters régionaux) :

    gcloud recommender recommendations list \
        --recommender=google.container.DiagnosisRecommender \
        --location=LOCATION \
        --project=PROJECT_ID \
        --format=FORMAT \
        --filter="recommenderSubtype:SUBTYPE"
    

    Remplacez SUBTYPE par un sous-type de l'outil de recommandation (par exemple, DEPRECATION_K8S_1_23_CERTIFICATE). Cela limite la sortie aux recommandations d'un sous-type spécifié. Cette option est facultative.

    Si vous disposez déjà d'un ID de recommandation, vous pouvez également l'afficher en exécutant la commande suivante :

    gcloud recommender recommendations describe RECOMMENDATION_ID \
        --recommender=google.container.DiagnosisRecommender \
        --location=LOCATION \
        --project=PROJECT_ID \
        --format=FORMAT
    

    Remplacez RECOMMENDATION_ID par la valeur enregistrée de associatedRecommendations.recommendation dans le résultat de la commande de l'étape 1.

    Le résultat fournit des conseils sur les actions que vous devrez peut-être effectuer pour optimiser l'utilisation de GKE par votre cluster.

API

Chaque insight comporte une recommandation correspondante. Les insights sont extraits avec la Ressource REST : projects.locations.insightTypes.insights et les recommandations sont extraites avec la Ressource REST : projects.locations.recommenders.recommendations.

  1. Affichez la liste des insights pour les clusters d'une zone spécifique (pour les clusters zonaux) ou d'une région spécifique (pour les clusters régionaux) :

    GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/insightTypes/google.container.DiagnosisInsight/insights?filter=insightSubtype%20%3D%20SUBTYPE
    

    Remplacez les éléments suivants :

    • PROJECT_ID : ID du projet Google Cloud dans lequel se trouvent les clusters.
    • LOCATION : région ou zone exacte du cluster. Pour les clusters zonaux, vous devez fournir la zone exacte (par exemple, us-central1-c). Pour les clusters régionaux, vous devez indiquer la région exacte (par exemple, us-central1).
    • SUBTYPE : sous-type d'insight, par exemple DEPRECATION_K8S_1_23_CERTIFICATE. Cela limite la sortie aux insights d'un sous-type spécifié. Cette option est facultative.

    Si vous disposez déjà d'un ID d'insight, vous pouvez également afficher les détails de l'insight en envoyant la requête suivante :

    GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/insightTypes/google.container.DiagnosisInsight/insights/INSIGHT
    

    Remplacez INSIGHT par la valeur de l'ID d'insight, spécifiée à la fin de l'URL du champ name de l'insight.

    Le corps de la réponse inclut des détails sur le comportement détecté par GKE avec votre cluster.

  2. Affichez la liste des recommandations pour les clusters d'une zone spécifique (pour les clusters zonaux) ou d'une région spécifique (pour les clusters régionaux) :

    GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/recommenders/google.container.DiagnosisRecommender/recommendations?filter=recommenderSubtype%20%3D%20SUBTYPE
    

    Remplacez SUBTYPE par un sous-type de l'outil de recommandation (par exemple, DEPRECATION_K8S_1_23_CERTIFICATE). Cela limite la sortie aux recommandations d'un sous-type spécifié. Cette option est facultative.

    Si vous disposez déjà d'un ID de recommandation, vous pouvez également afficher la recommandation en effectuant la requête suivante :

    GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/recommenders/google.container.DiagnosisRecommender/recommendations/RECOMMENDATION_ID
    

    Remplacez RECOMMENDATION_ID par la valeur enregistrée de associatedRecommendations.recommendation obtenue dans le corps de la réponse de l'étape 1.

    Le corps de la réponse fournit des conseils sur les actions que vous devrez peut-être effectuer pour optimiser l'utilisation de GKE par votre cluster.

Exporter des insights et des recommandations vers BigQuery

Vous pouvez utiliser BigQuery pour exporter et analyser les insights et les recommandations pour l'ensemble de votre organisation. Pour en savoir plus, consultez la page Exporter des recommandations vers BigQuery.

Résoudre les recommandations

Si vous avez mis en œuvre une recommandation, vous pouvez la marquer comme résolue dans la console Google Cloud. Lorsque vous marquez une recommandation comme résolue, elle n'apparaît plus pour aucun utilisateur dans la console. Une fois la recommandation résolue, si GKE détecte le même comportement pour ce cluster, l'outil de recommandation affiche à nouveau la recommandation. Lorsque vous résolvez une recommandation, celle-ci reste visible avec Google Cloud CLI et l'API Recommender.

Vous pouvez souhaiter marquer une recommandation comme résolue, car, selon son fonctionnement, elle peut rester visible pendant un certain temps après la mise en œuvre de la recommandation.

Pour marquer une recommandation comme résolue, suivez les instructions de la page Afficher les insights et les recommandations dans la console Google Cloud pour ouvrir le panneau de la barre latérale, qui contient plus de détails. Dans ce panneau, cliquez sur le bouton Marquer comme résolu.

Ignorer ou restaurer des recommandations

Si vous ne souhaitez plus voir une recommandation pour un cluster dans la console Google Cloud, ignorez-la. Cela peut être le cas, par exemple, si vous avez évalué la recommandation et décidé de ne pas la mettre en œuvre.

Si vous ignorez la recommandation, elle ne s'affiche pour aucun utilisateur consultant le cluster dans la console. Une fois la recommandation ignorée, elle ne s'affiche plus, même si GKE détecte le même comportement.

Lorsque vous ignorez une recommandation, vous ne faites que la masquer pour tous les utilisateurs de la console. La recommandation reste visible avec Google Cloud CLI et l'API Recommender.

Ignorer une recommandation

Pour ignorer la recommandation, suivez les instructions de la page Afficher les insights et les recommandations dans la console Google Cloud pour ouvrir le panneau de la barre latérale, qui contient plus de détails. Dans ce panneau, cliquez sur le bouton Ignorer.

Restaurer une recommandation ignorée

Vous pouvez restaurer une recommandation ignorée en suivant les instructions de la section Restaurer une recommandation.

Étapes suivantes