Utiliser des nœuds à locataire unique Compute Engine dans GKE


Cette page explique comment utiliser les nœuds à locataire unique Compute Engine dans Google Kubernetes Engine (GKE).

Les nœuds à locataire unique sont des serveurs physiques dédiés qui exécutent les VM d'un projet spécifique. Vous pouvez utiliser des nœuds à locataire unique pour séparer physiquement vos VM des VM d'autres projets, ou pour regrouper vos VM sur le même matériel hôte.

Avant de commencer

Avant de commencer, effectuez les tâches suivantes :

  • Assurez-vous d'avoir activé l'API Google Kubernetes Engine.
  • Activer l'API Google Kubernetes Engine
  • Assurez-vous d'avoir installé le SDK Cloud.
  • Configurez les paramètres de l'outil de ligne de commande gcloud par défaut pour votre projet en utilisant l'une des méthodes suivantes:
    • Utilisez gcloud init si vous souhaitez suivre les étapes de définition des paramètres par défaut du projet.
    • Utilisez gcloud config pour définir individuellement l'ID, la zone et la région de votre projet.

    gcloud init

    1. Exécutez gcloud init et suivez les instructions :

      gcloud init

      Si vous utilisez SSH sur un serveur distant, utilisez l'option --console-only pour empêcher la commande d'ouvrir un navigateur :

      gcloud init --console-only
    2. Suivez les instructions pour autoriser l'outil gcloud à utiliser votre compte Google Cloud.
    3. Créez ou sélectionnez une configuration.
    4. Choisissez un projet Google Cloud.
    5. Choisissez une zone Compute Engine par défaut.
    6. Choisissez une région Compute Engine par défaut.

    gcloud config

    1. Définissez votre ID de projet par défaut :
      gcloud config set project PROJECT_ID
    2. Définissez votre région Compute Engine par défaut (par exemple, us-central1):
      gcloud config set compute/region COMPUTE_REGION
    3. Définissez votre zone Compute Engine par défaut (par exemple, us-central1-c):
      gcloud config set compute/zone COMPUTE_ZONE
    4. Mettez à jour gcloud vers la dernière version :
      gcloud components update

    En définissant des emplacements par défaut, vous pouvez éviter les erreurs dans l'outil gcloud, telles que les suivantes: One of [--zone, --region] must be supplied: Please specify location.

Demander des quotas supplémentaires

Les nœuds à locataire unique sont volumineux (par exemple, 96 processeurs virtuels et 624 Go de mémoire), et les quotas par défaut du projet sont trop faibles pour les gérer.

Vous devez demander une augmentation de quota pour les processeurs de l'API Compute Engine sur la page Quotas pour créer des nœuds à locataire unique. Pour en savoir plus sur les demandes d'augmentation, consultez la section Quotas.

Le nombre de processeurs dont vous avez besoin dépend des éléments suivants :

  • Votre utilisation actuelle du quota de processeurs.
  • La taille du groupe de nœuds.
  • Le modèle de nœud.

Examinez le nombre de cœurs de votre type de nœud à locataire unique et demandez une limite de processeur équivalente à au moins cette quantité, de préférence avec une marge de 10 processeurs supplémentaires.

Créer un modèle de nœud à locataire unique

Un modèle de nœud à locataire unique est une ressource régionale qui définit et applique des propriétés à chaque nœud lors de la création d'un groupe de nœuds. Pour plus d'informations, consultez la section Types de nœuds.

Console

  1. Accédez à la page Nœuds à locataire unique dans Cloud Console.

    Accéder à la page Nœuds à locataire unique

  2. Cliquez sur Créer un modèle de nœud.

  3. Spécifiez un Nom et une Région pour votre modèle de nœud.

  4. Sélectionnez un Type de nœud.

  5. Ajoutez éventuellement un ou plusieurs libellés d'affinité de nœuds.

  6. Cliquez sur Créer pour créer le modèle de nœud.

gcloud

Exécutez la commande gcloud compute sole-tenancy node-templates create pour créer un modèle de nœud :

gcloud compute sole-tenancy node-templates create TEMPLATE_NAME \
    --node-type=NODE_TYPE \
    --node-affinity-labels=AFFINITY_LABELS \
    --region=COMPUTE_REGION

Remplacez l'élément suivant :

  • TEMPLATE_NAME : nom du nouveau modèle de nœud.
  • NODE_TYPE : type de nœud pour les nœuds à locataire unique créés à partir de ce modèle. Exécutez la commande gcloud compute sole-tenancy node-types list pour obtenir la liste des types de nœuds disponibles dans chaque zone.
  • AFFINITY_LABELS : clés et valeurs, [KEY=VALUE,...] pour les libellés d'affinité. Les libellés d'affinité vous permettent de regrouper logiquement des nœuds et des groupes de nœuds. Ensuite, lorsque vous provisionnez des VM, vous pouvez spécifier des libellés d'affinité sur les VM pour les planifier sur un ensemble spécifique de nœuds ou de groupes de nœuds. Pour en savoir plus, consultez la section Affinité et anti-affinité de nœuds.
  • COMPUTE_REGION : région dans laquelle créer le modèle de nœud. Vous pouvez utiliser ce modèle pour créer des groupes de nœuds dans n'importe quelle zone de cette région.

Le résultat ressemble à ce qui suit :

Created [https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/nodeTemplates/template-name].

Créer un groupe de nœuds à locataire unique

Un groupe de nœuds est un ensemble de nœuds à locataire unique dans une zone spécifique à partir du même modèle de nœud à locataire unique. Pour les clusters et les pools de nœuds régionaux disponibles dans plusieurs zones, vous devez créer un groupe de nœuds portant le même nom dans chaque zone.

Console

Pour créer un groupe de nœuds à locataire unique, procédez comme suit :

  1. Accédez à la page Nœuds à locataire unique dans Cloud Console.

    Accéder à la page Nœuds à locataire unique

  2. Cliquez sur Créer un groupe de nœuds.

  3. Spécifiez un Nom pour votre modèle de nœud.

  4. Sélectionnez la même Région que celle dans laquelle vous avez créé votre modèle de nœud, puis sélectionnez une Zone dans cette Région.

  5. Sélectionnez votre Modèle de nœud.

  6. Vous pouvez également activer le Mode autoscaling.

  7. Spécifiez le Nombre de nœuds souhaité pour le groupe.

  8. Modifiez éventuellement la Stratégie de maintenance.

  9. Cliquez sur Créer pour créer le groupe de nœuds.

gcloud

Créez un groupe de nœuds à partir du modèle :

gcloud compute sole-tenancy node-groups create GROUP_NAME \
    --zone COMPUTE_ZONE \
    --node-template TEMPLATE_NAME --target-size TARGET_SIZE

Remplacez l'élément suivant :

  • GROUP_NAME : nom que vous souhaitez pour votre nouveau groupe de nœuds.
  • COMPUTE_ZONE : zone où se trouve le groupe de nœuds. Cette zone doit appartenir à la même région que le modèle de nœud que vous utilisez.
  • TEMPLATE_NAME : nom du modèle de nœud que vous utilisez.
  • TARGET_SIZE : nombre de nœuds à créer dans le groupe.

Le résultat ressemble à ce qui suit :

Created [https://www.googleapis.com/compute/projects/my-project/zones/us-central1-a/nodeGroups/group-name].

Créer un pool de nœuds à locataire unique GKE

Maintenant que vous avez créé un groupe de nœuds à locataire unique dans Compute Engine, vous pouvez créer un pool de nœuds à locataire unique.

Si vous disposez déjà d'un cluster GKE, vous pouvez y ajouter un pool de nœuds à locataire unique. Si ce n'est pas le cas, créez un cluster avec gcloud container clusters create.

Si vous utilisez un cluster régional ou si votre pool de nœuds est disponible dans plusieurs zones, vous devez créer un groupe de nœuds portant le même nom dans chacune de ces zones. Si vous ne pouvez pas réutiliser le nom dans chaque zone, créez des pools de nœuds distincts pour chaque zone.

  1. Créez un pool de nœuds avec un groupe de nœuds spécifié :

    Pour les pools de nœuds zonaux :

    gcloud container node-pools create NODE_POOL_NAME \
        --node-group GROUP_NAME --cluster CLUSTER_NAME \
        --zone COMPUTE_ZONE --machine-type=MACHINE_TYPE \
        --node-locations=COMPUTE_ZONE,COMPUTE_ZONE1
    

    Pour les pools de nœuds régionaux :

    gcloud container node-pools create NODE_POOL_NAME \
        --node-group GROUP_NAME --cluster CLUSTER_NAME \
        --region COMPUTE_REGION --machine-type=MACHINE_TYPE \
        --node-locations=COMPUTE_ZONE,COMPUTE_ZONE1
    

    Remplacez l'élément suivant :

    • NODE_POOL_NAME : nom du nouveau pool de nœuds.
    • GROUP_NAME : nom du groupe de nœuds à locataire unique existant que vous souhaitez utiliser.
    • CLUSTER_NAME : nom du cluster dans lequel vous créez le pool de nœuds.
    • COMPUTE_REGION : la même région que votre cluster.
    • MACHINE_TYPE : le type de machine du pool de nœuds.
    • COMPUTE_ZONE, COMPUTE_ZONE1,[...] : zones des groupes de nœuds à locataire unique.
  2. Vérifiez que le pool de nœuds est créé :

    kubectl get nodes
    

Une liste de nœuds présentant l'état Ready doit s'afficher dans le pool de nœuds que vous venez de créer. Vous pouvez également afficher les nœuds à locataire unique sur la page Nœuds à locataire unique.

Nettoyer

Pour supprimer les ressources créées dans les exemples précédents, procédez comme suit :

  1. Supprimez le pool de nœuds à locataire unique :

    gcloud container node-pools delete NODE_POOL_NAME
    
  2. Supprimez le groupe de nœuds à locataire unique :

    gcloud compute sole-tenancy node-groups delete GROUP_NAME \
        --zone COMPUTE_ZONE
    
  3. Supprimez le modèle de nœud à locataire unique :

    gcloud compute sole-tenancy node-templates delete TEMPLATE_NAME \
        --region COMPUTE_REGION
    

Étape suivante