Aller au contenu
Conteneurs & Orchestration medium
🔐 Alerte sécurité — Incident supply chain Trivy : lire mon analyse de l'attaque

Bilan du chapitre : ressources de base Kubernetes

9 min de lecture

logo kubernetes

Vous avez maintenant parcouru les ressources de base Kubernetes. C’est une étape importante, car tout le reste repose sur ces briques : déployer une application, l’exposer sur le réseau, gérer sa configuration, protéger ses données sensibles ou exécuter des traitements ponctuels.

Cette page ne remplace pas les guides détaillés. Elle sert à faire la synthèse, à remettre les concepts en perspective et à vous montrer où aller ensuite pour passer d’un usage basique de Kubernetes à des déploiements plus propres, plus fiables et plus proches de la production.

À ce stade, vous êtes capable de :

  • comprendre le rôle des principales ressources Kubernetes ;
  • distinguer les objets qui exécutent, exposent, configurent ou sécurisent une application ;
  • déployer une application simple avec des Pods, des Services et des Deployments ;
  • externaliser la configuration avec des ConfigMaps ;
  • stocker des données sensibles avec des Secrets ;
  • exécuter des tâches ponctuelles avec des Jobs et des tâches planifiées avec des CronJobs.
RessourceRôle principalQuand l’utiliser
NamespaceIsoler et organiser les ressourcesSéparer des environnements, des équipes ou des projets
PodExécuter un ou plusieurs conteneursComprendre l’unité d’exécution de base
ServiceFournir un point d’accès réseau stableConnecter ou exposer des Pods
ReplicaSetMaintenir un nombre donné de PodsPrincipalement via un Deployment
DeploymentGérer des Pods stateless dans la duréeDéploiement, mise à jour, rollback, scaling
ConfigMapFournir la configuration non sensibleParamètres applicatifs, fichiers de config
SecretFournir des données sensiblesMots de passe, clés API, certificats
JobExécuter une tâche jusqu’à complétionMigration, batch, import, export
CronJobPlanifier des JobsSauvegarde, purge, synchronisation régulière

Pris séparément, chaque objet Kubernetes a un rôle simple. En pratique, une application combine souvent plusieurs de ces ressources.

Une application Kubernetes simple repose souvent sur cette logique :

  1. un Namespace pour isoler l’environnement ;
  2. un Deployment pour créer et maintenir les Pods ;
  3. un Service pour exposer les Pods sur le réseau interne ;
  4. un ConfigMap pour injecter la configuration non sensible ;
  5. un Secret pour les identifiants et données sensibles ;
  6. éventuellement un Job pour une migration ou un traitement ponctuel ;
  7. éventuellement un CronJob pour une tâche récurrente.

Structure d'un Namespace Kubernetes avec ses ressources

  • Le Pod exécute réellement les conteneurs.
  • Le Deployment gère les Pods sur la durée.
  • Le ReplicaSet est un mécanisme intermédiaire, souvent invisible pour l’utilisateur.
  • Le Service fournit une adresse stable vers les Pods.
  • Le ConfigMap et le Secret injectent ce dont l’application a besoin pour fonctionner.
  • Le Job et le CronJob couvrent les traitements qui ne tournent pas en continu.

Un Pod peut être créé seul, mais dans la majorité des cas applicatifs, vous utiliserez un Deployment pour éviter une gestion manuelle fragile.

On ne pointe pas une application vers l’IP d’un Pod. On passe par un Service, car les Pods sont éphémères.

Un Deployment ne gère pas directement chaque Pod. Il s’appuie sur un ReplicaSet, qui maintient le nombre souhaité de répliques.

Les deux servent à injecter des données dans les Pods, mais :

  • ConfigMap = configuration non sensible ;
  • Secret = données sensibles.
  • Job = une exécution ponctuelle jusqu’à complétion ;
  • CronJob = planification automatique de Jobs.

Quand on débute avec Kubernetes, certaines confusions reviennent très souvent.

1. Créer des Pods à la main pour une application durable

Section intitulée « 1. Créer des Pods à la main pour une application durable »

Un Pod seul est utile pour apprendre ou tester. Pour une application stateless, utilisez un Deployment.

Un Service fournit un point d’accès stable à des Pods. Un Ingress ajoute du routage HTTP/HTTPS au-dessus de Services.

Un ConfigMap n’est pas fait pour stocker des données sensibles. Utilisez un Secret.

4. Penser qu’un ReplicaSet remplace un Deployment

Section intitulée « 4. Penser qu’un ReplicaSet remplace un Deployment »

Le ReplicaSet maintient un nombre de Pods, mais ne gère pas correctement les mises à jour applicatives comme le fait un Deployment.

5. Oublier le comportement des mises à jour de ConfigMaps et Secrets

Section intitulée « 5. Oublier le comportement des mises à jour de ConfigMaps et Secrets »
  • les variables d’environnement ne se mettent pas à jour automatiquement ;
  • les volumes se propagent avec délai ;
  • subPath ne se rafraîchit pas automatiquement.

Une tâche ponctuelle ou planifiée doit aller dans un Job ou un CronJob, pas dans un Deployment.

Si vous deviez refaire ce chapitre avec du recul, voici l’ordre le plus logique :

  1. Namespaces — Pour comprendre comment organiser les ressources dans le cluster.

  2. Pods — Pour identifier l’unité d’exécution de base.

  3. Services — Pour relier et exposer les Pods de manière stable.

  4. Deployments — Pour déployer une application stateless de façon exploitable.

  5. ReplicaSets — Pour comprendre le mécanisme utilisé par les Deployments.

  6. ConfigMaps et Secrets — Pour séparer configuration et données sensibles du code applicatif.

  7. Jobs et CronJobs — Pour couvrir les traitements ponctuels et planifiés.

Vous pouvez maintenant vérifier que les notions essentielles sont bien acquises.

Contrôle de connaissances

Validez vos connaissances avec ce quiz interactif

24 questions
15 min.
80% requis

Informations

  • Le chronomètre démarre au clic sur Démarrer
  • Questions à choix multiples, vrai/faux et réponses courtes
  • Vous pouvez naviguer entre les questions
  • Les résultats détaillés sont affichés à la fin

Lance le quiz et démarre le chronomètre

La théorie seule ne suffit pas. Pour ancrer les concepts durablement, passez par les travaux pratiques disponibles dans le dépôt GitHub associé.

Vous connaissez maintenant les objets fondamentaux de Kubernetes. La prochaine étape consiste à apprendre à les utiliser de manière plus propre, plus fiable et plus proche d’un contexte de production.

La suite du parcours peut se résumer en cinq axes :

  • écrire de meilleurs manifests pour produire des déploiements plus lisibles et maintenables ;
  • fiabiliser les applications avec les probes, les ressources et le scaling ;
  • gérer le réseau et l’exposition avec les Services, l’Ingress et les politiques réseau ;
  • maîtriser le stockage et les workloads avancés pour les applications stateful ou spécialisées ;
  • sécuriser le cluster et les workloads avec RBAC, Secrets et politiques de sécurité.

Les ressources de base de Kubernetes forment un socle cohérent : les Pods exécutent, les Services exposent, les Deployments pilotent, les ConfigMaps configurent, les Secrets protègent, et les Jobs automatisent des traitements ciblés.

Si ces concepts sont clairs pour vous, vous êtes prêt à passer à l’étape suivante : écrire de meilleurs manifests et construire des déploiements plus robustes.

Ce site vous est utile ?

Sachez que moins de 1% des lecteurs soutiennent ce site.

Je maintiens +700 guides gratuits, sans pub ni tracing. Aujourd'hui, ce site ne couvre même pas mes frais d'hébergement, d'électricité, de matériel, de logiciels, mais surtout de cafés.

Un soutien régulier, même symbolique, m'aide à garder ces ressources gratuites et à continuer de produire des guides de qualité. Merci pour votre appui.

Abonnez-vous et suivez mon actualité DevSecOps sur LinkedIn