Scaler les charges de travail avec état

Ce document explique comment mettre à l'échelle des charges de travail avec état existantes exécutées dans un cluster Kubernetes Google Distributed Cloud (GDC) sous air gap. Vous devez mettre à l'échelle les pods exécutés dans vos charges de travail avec état à mesure que les exigences de vos charges de travail de conteneur évoluent.

Ce document s'adresse aux développeurs du groupe d'opérateurs d'applications chargés de gérer les charges de travail d'application pour leur organisation. Pour en savoir plus, consultez Audiences pour la documentation GDC sous air gap.

Avant de commencer

Pour effectuer les tâches décrites dans ce document, vous devez demander les autorisations nécessaires et préparer votre environnement.

Demander des rôles IAM

Vous devez disposer de rôles spécifiques pour obtenir les autorisations nécessaires afin de mettre à l'échelle des charges de travail avec état. Les rôles dont vous avez besoin dépendent du fait que vous travaillez dans un cluster partagé au niveau de l'organisation ou dans un cluster standard au niveau du projet. Pour en savoir plus, consultez Configurations de cluster Kubernetes.

Rôles de cluster partagé

Pour créer, supprimer, modifier ou afficher des charges de travail dans un cluster partagé, demandez à votre administrateur IAM de projet de vous accorder le rôle Administrateur d'espace de noms (namespace-admin). Ce rôle est lié à l'espace de noms de votre projet.

Rôles de cluster standard

Pour créer, supprimer, modifier ou afficher des charges de travail dans un cluster standard, demandez à votre administrateur IAM de projet de vous accorder le rôle Développeur de cluster (cluster-developer). Ce rôle est lié à l'espace de noms de votre projet.

Préparer votre environnement

Pour exécuter des commandes sur un cluster Kubernetes à l'aide de l'API, assurez-vous de disposer des ressources suivantes :

  • Recherchez le nom du cluster Kubernetes ou demandez à un membre du groupe d'administrateurs de plate-forme quel est le nom du cluster.

  • Connectez-vous et générez le fichier kubeconfig pour le cluster Kubernetes.

  • Utilisez le chemin d'accès kubeconfig du cluster Kubernetes pour remplacer KUBERNETES_CLUSTER_KUBECONFIG dans ces instructions.

Mettre à l'échelle une ressource StatefulSet

Utilisez la fonctionnalité de scaling de Kubernetes pour mettre à l'échelle de manière appropriée le nombre de pods exécutés dans votre ressource StatefulSet.

Mettre à l'échelle manuellement les pods d'une ressource StatefulSet

Pour mettre à l'échelle manuellement votre ressource StatefulSet, exécutez la commande suivante :

kubectl --kubeconfig KUBERNETES__CLUSTER_KUBECONFIG -n NAMESPACE \
    scale statefulset STATEFULSET_NAME \
    --replicas NUMBER_OF_REPLICAS

Remplacez les éléments suivants :

  • KUBERNETES_CLUSTER_KUBECONFIG : le fichier kubeconfig pour le cluster.

  • NAMESPACE : l'espace de noms. Pour les clusters partagés, il doit s'agir d'un espace de noms de projet. Pour les clusters standards, il peut s'agir de n'importe quel espace de noms.

  • STATEFULSET_NAME: le nom de l'objet StatefulSet dans lequel effectuer le scaling.

  • NUMBER_OF_REPLICAS: le nombre d'objets Pod répliqués dans l'objet StatefulSet.

Mettre à l'échelle les pods en effectuant une mise à jour sur place

Pour mettre à l'échelle les pods d'une ressource StatefulSet directement dans le fichier manifeste, exécutez la commande suivante :

kubectl --kubeconfig KUBERNETES__CLUSTER_KUBECONFIG -n NAMESPACE \
    patch statefulsets STATEFULSET_NAME \
    -p '{"spec":{"replicas":NUMBER_OF_REPLICAS}}'

Remplacez les éléments suivants :

  • KUBERNETES__CLUSTER_KUBECONFIG : le fichier kubeconfig pour le cluster.

  • NAMESPACE : l'espace de noms. Pour les clusters partagés, il doit s'agir d'un espace de noms de projet. Pour les clusters standards, il peut s'agir de n'importe quel espace de noms.

  • STATEFULSET_NAME: le nom de l'objet StatefulSet dans lequel effectuer le scaling.

  • NUMBER_OF_REPLICAS: le nombre d'objets Pod répliqués dans l'objet StatefulSet.

Étape suivante