Déployer des charges de travail tierces sur Config Controller

Cette page explique comment déployer vos propres charges de travail sur des clusters Config Controller.

Cette page est destinée aux administrateurs et opérateurs informatiques qui gèrent le cycle de vie de l'infrastructure technologique sous-jacente, planifient la capacité, et déploient des applications et des services en production. Pour en savoir plus sur les rôles courants et les exemples de tâches que nous citons dans le contenu Google Cloud, consultez la section Rôles utilisateur et tâches courantes de GKE Enterprise.

Avant de commencer

Avant de commencer, effectuez les tâches suivantes :

  1. Configurer Config Controller
  2. Si votre cluster Config Controller utilise une version de GKE antérieure à la version 1.27, mettez à niveau votre cluster vers la version 1.27 ou une version ultérieure.

Activer le provisionnement automatique des nœuds sur des clusters standards

Vous devez activer le provisionnement automatique des nœuds pour déployer vos propres charges de travail sur les clusters Config Controller. Cela permet de séparer les charges de travail entre vos charges de travail et les charges de travail gérées par Google installées par défaut sur les clusters Config Controller.

Si vous utilisez des clusters Autopilot, vous n'avez pas besoin d'activer le provisionnement automatique des nœuds, car GKE gère automatiquement le scaling et le provisionnement des nœuds.

gcloud

Pour activer le provisionnement automatique des nœuds, exécutez la commande suivante :

gcloud container clusters update CLUSTER_NAME \
    --enable-autoprovisioning \
    --min-cpu MINIMUM_CPU \
    --min-memory MIMIMUM_MEMORY \
    --max-cpu MAXIMUM_CPU \
    --max-memory MAXIMUM_MEMORY \
    --autoprovisioning-scopes=https://www.googleapis.com/auth/logging.write,https://www.googleapis.com/auth/monitoring,https://www.googleapis.com/auth/devstorage.read_only

Remplacez les éléments suivants :

  • CLUSTER_NAME : nom de votre cluster Config Controller.
  • MINIMUM_CPU : nombre minimal de cœurs dans le cluster
  • MINIMUM_MEMORY : quantité minimale de mémoire dans le cluster, en gigaoctets
  • MAXIMUM_CPU : nombre maximal de cœurs dans le cluster
  • MAXIMUM_MEMORY : quantité maximale de mémoire dans le cluster, en gigaoctets

Console

Pour activer le provisionnement automatique des nœuds, procédez comme suit :

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

    Accéder à Google Kubernetes Engine

  2. Cliquez sur le nom du cluster.

  3. Dans la section Automatisation, cliquez sur Modifier pour accéder au Provisionnement automatique des nœuds.

  4. Cochez la case Activer le provisionnement automatique des nœuds.

  5. Définissez l'utilisation minimale et maximale du processeur et de la mémoire pour le cluster.

  6. Cliquez sur Enregistrer les modifications.

Pour en savoir plus sur la configuration du provisionnement automatique des nœuds, par exemple sur la définition des valeurs par défaut, consultez Configurer le provisionnement automatique des nœuds.

Déployer votre charge de travail.

Lorsque vous déployez vos charges de travail, Config Controller active automatiquement GKE Sandbox pour fournir une couche de sécurité supplémentaire afin d'empêcher un code non approuvé d'affecter le noyau hôte sur les nœuds de votre cluster. Pour en savoir plus, consultez la page À propos de GKE Sandbox.

Vous pouvez déployer une charge de travail en écrivant un fichier manifeste de charge de travail, puis en exécutant la commande suivante :

kubectl apply -f WORKLOAD_FILE

Remplacez WORKLOAD_FILE par le fichier manifeste, tel que my-app.yaml.

Vérifiez que votre charge de travail s'exécute sur les nœuds provisionnés automatiquement :

  1. Obtenez la liste des nœuds créés pour votre charge de travail :

    kubectl get nodes
  2. Inspecter un nœud spécifique :

    kubectl get nodes NODE_NAME -o yaml

    Remplacez NODE_NAME par le nom du nœud que vous souhaitez inspecter.

Limites

  • GKE Sandbox : GKE Sandbox fonctionne bien avec de nombreuses applications, mais pas toutes. Pour en savoir plus, consultez la page Limites de GKE Sandbox.
  • Sécurité du plan de contrôle : lorsque vous accordez une autorisation pour vos charges de travail, appliquez le principe du moindre privilège pour n'accorder que les autorisations dont vous avez besoin. Si votre charge de travail est compromise, elle peut utiliser des autorisations trop permissives pour modifier ou supprimer des ressources Kubernetes.
  • Disponibilité du plan de contrôle : si vos charges de travail entraînent une augmentation du trafic en peu de temps, le plan de contrôle du cluster peut devenir indisponible jusqu'à ce que le trafic diminue.
  • Redimensionnement du plan de contrôle : GKE redimensionne automatiquement le plan de contrôle si nécessaire. Si votre charge de travail entraîne une augmentation importante de la charge (par exemple, l'installation de milliers d'objets CRD), le redimensionnement automatique de GKE risque de ne pas pouvoir suivre cette augmentation.
  • Quotas : lorsque vous déployez des charges de travail, vous devez connaître les quotas et limites de GKE et ne pas les dépasser.
  • Accès réseau au plan de contrôle et aux nœuds : Config Controller utilise des nœuds privés avec des réseaux autorisés maîtres activés, le point de terminaison privé activé et l'accès public désactivé. Pour en savoir plus, consultez la page Sécurité du réseau GKE.

Étapes suivantes