Insights sur les comptes de service des nœuds GKE

Cette page décrit les insights Network Analyzer pour les insights sur les comptes de service de nœud Google Kubernetes Engine (GKE). Pour en savoir plus sur tous les types d'insights, consultez la section Groupes et types d'insights.

Pour afficher ces insights dans gcloud CLI ou l'API Recommender, utilisez le type d'insight suivant :

  • google.networkanalyzer.container.serviceAccountInsight

Vous devez disposer des autorisations suivantes :

  • recommender.networkAnalyzerGkeServiceAccountInsights.list
  • recommender.networkAnalyzerGkeServiceAccountInsights.get

Pour en savoir plus sur l'utilisation de l'API Recommender pour les insights de Network Analyzer, consultez la section Utiliser la CLI et l'API Recommender.

Le compte de service de nœud GKE est désactivé

Cet insight indique qu'un ou plusieurs pools du cluster utilisent un compte de service de nœud GKE désactivé, ce qui peut entraîner un échec du démarrage et de l'enregistrement de tous les nœuds du cluster créés lorsque le compte de service est désactivé.

Cet insight inclut les informations suivantes:

  • Compte de service : type de compte spécial généralement utilisé par une application ou une charge de travail de calcul, telle qu'une instance Compute Engine, plutôt que par une personne. Il est identifié par son adresse e-mail, qui est propre au compte. Ces informations sont disponible dans l'API Recommender.
  • Cluster GKE:nom du cluster GKE.
  • Pools de nœuds:liste des pools de nœuds utilisant le compte de service désactivé

Pour en savoir plus, consultez les pages Activer le compte de service par défaut de Compute Engine et Désactiver un compte de service.

Recommandations

Activez le compte de service du nœud. Si des nœuds non enregistrés se trouvent dans les pools de nœuds concernés, ils redémarrent et s'enregistrent correctement auprès du cluster. Le redémarrage de tous les nœuds peut prendre un certain temps. Pour une résolution rapide, nous vous recommandons redimensionner le pool de nœuds zéro nœud et revenir à X nœuds, soit créer un pool de nœuds qui utilise même compte de service de nœud.

Le pool de nœuds GKE utilise le compte de service Compute Engine par défaut

Un pool de nœuds de votre cluster GKE utilise le compte de service par défaut Compute Engine comme compte de service de nœud. Ce compte nécessite des que celles requises pour exécuter votre cluster Google Kubernetes Engine.

Cet insight inclut les informations suivantes:

  • Cluster GKE : nom du cluster GKE
  • Pools de nœuds : liste des pools de nœuds utilisant le compte de service par défaut.

Pour en savoir plus, consultez Utilisez le principe du moindre privilège pour les comptes de service.

Recommandations

Au lieu du compte de service Compute Engine par défaut, créez et utilisez un compte de service moins privilégié pour vos nœuds.

Les niveaux d'accès du pool de nœuds GKE sont mal configurés

Un pool de nœuds de votre cluster GKE comporte des champs d'accès spécifiés manuellement, mais les champs spécifiés ne sont pas suffisants pour enregistrer un nœud.

Si vos charges de travail utilisent des identifiants par défaut d'application (ADC), les champs d'application d'accès constituent l'ancienne méthode permettant d'accorder des autorisations à vos nœuds et aux charges de travail exécutées sur vos nœuds. Pour les nœuds GKE, utilisez toujours au moins les champs d'application ou ils ne pourront pas s'inscrire.

Cet insight inclut les informations suivantes:

  • Cluster GKE:nom du cluster GKE.
  • Pools de nœuds : liste des pools de nœuds dont les champs d'application de l'accès sont mal configurés.

Pour en savoir plus, consultez Niveaux d'accès dans GKE

Recommandations

Remplacez le pool de nœuds par un autre avec des champs d'application suffisants. Pour créer un un pool de nœuds disposant des niveaux d'accès suffisants, effectuez l'une des opérations suivantes:

  • Créez le pool de nœuds sans spécifier de niveaux d'accès. Dans Google Cloud CLI, n'incluez pas l'option --scopes lorsque vous appelez gcloud container node-pools create.

    Pour autoriser les charges de travail s'exécutant sur vos nœuds, utilisez Autorisations Identity and Access Management (IAM) ou Kubernetes contrôle des accès basé sur les rôles (RBAC). Il permet d'accorder l'accès à des comptes de service IAM spécifiques des comptes de service Kubernetes. Pour en savoir plus, consultez la section Configurer un compte de service personnalisé pour les charges de travail.

  • Dans la liste des niveaux d'accès spécifiés manuellement dans le nouveau pool de nœuds, ajoutez les champs d'application suivants.

    • https://www.googleapis.com/auth/devstorage.read_only
    • https://www.googleapis.com/auth/service.management.readonly
    • https://www.googleapis.com/auth/servicecontrol
    • https://www.googleapis.com/auth/trace.append
    • https://www.googleapis.com/auth/logging.write
    • https://www.googleapis.com/auth/monitoring.write