Qu'est-ce que Kubernetes (K8s) ?

Mis à jour : septembre 2026

Kubernetes est une plateforme open-source qui automatise le déploiement, la mise à l’échelle et l’exploitation d’apps conteneurisées sur plusieurs machines. Son idée centrale est déclarative : vous énoncez l’état final désiré — trois répliques de ce conteneur, cette quantité de mémoire, joignable sur ce port — et le système travaille en continu pour que la réalité coïncide, redémarrant, replanifiant et mettant à l’échelle sans qu’on le lui demande.

Points clés

QuestionRéponse
Ce que c’estUn système de contrôle qui transforme de nombreuses machines en un seul pool pour conteneurs
L’idée centraleDéclarez l’état désiré ; le cluster réconcilie la réalité avec lui, pour toujours
vs. DockerDocker construit et exécute des conteneurs ; Kubernetes en orchestre des flottes
Le nom« Timonier » en grec ; K8s = K + huit lettres + s
La mise en garde honnêtePuissance à l’échelle d’une flotte, complexité à l’échelle d’une flotte — beaucoup d’équipes n’ont besoin ni de l’une ni de l’autre

Le manifeste : comment vous parlez à Kubernetes

Tout est déclaration. Voici un Deployment minimal et réel — annoté en clair :

apiVersion: apps/v1
kind: Deployment              # "garde N copies de ceci en marche"
metadata:
  name: api
spec:
  replicas: 3                 # l'état désiré : trois pods
  selector:
    matchLabels: { app: api }
  template:                   # ce que contient chaque pod
    metadata:
      labels: { app: api }
    spec:
      containers:
        - name: api
          image: registry.example.com/api:1.4.2
          ports: [{ containerPort: 8080 }]
          resources:
            limits: { memory: "256Mi", cpu: "500m" }
# Appliquez-le, tuez un pod, regardez Kubernetes le ressusciter. C'est ça, le produit.

Par contraste — le même résultat (un backend déployé, mis à l’échelle, auto-réparant) consommé comme service, où le manifeste, le cluster et la réconciliation à 3 heures du matin sont le YAML de quelqu’un d’autre :

// JavaScript / Node.js — Back4app JS SDK
// The workload the manifest would have described — already running
const status = await Parse.Cloud.run('healthCheck');
console.log(status); // scheduling, scaling, restarts: the platform's job

À l’intérieur d’un cluster

Architecture d'un cluster KubernetesUn control plane avec un API server, un magasin d'état, un scheduler et des controllers gère les nœuds worker ; chaque nœud exécute un agent, un proxy réseau et un runtime de conteneurs qui héberge les pods.

Nœud worker

Agent + proxy réseau

Pods

Nœud worker

Agent + proxy réseau

Pods
(conteneurs)

Control plane — le cerveau

API server

Magasin d'état

Scheduler

Controllers
(réconcilient désiré vs. réel)

Un control plane avec un API server, un magasin d'état, un scheduler et des controllers gère les nœuds worker ; chaque nœud exécute un agent, un proxy réseau et un runtime de conteneurs qui héberge les pods.

Le vocabulaire, une ligne chacun : un cluster est le système complet ; un nœud est une machine ; un pod est la plus petite unité déployable (un ou plusieurs conteneurs partageant réseau et stockage) ; un Deployment gère des pods répliqués avec rolling updates et rollbacks ; un Service donne aux pods éphémères une adresse stable ; un Ingress route le trafic externe vers l’intérieur ; les ConfigMaps et Secrets portent la configuration ; les namespaces partitionnent un cluster entre équipes. La vue d’ensemble officielle est l’étape suivante canonique.

Kubernetes vs. Docker

QuestionDockerKubernetes
RôleConstruire, empaqueter, exécuter des conteneursOrchestrer des conteneurs entre machines
PortéeUne machineUn cluster
UnitéLe conteneurLe pod (de conteneurs)
Mise à l’échelleManuelleDéclarative et automatique
RelationConstruit les imagesLes exécute — via n’importe quel runtime OCI standard

La confusion éternelle a une date : depuis la v1.24 (2022), Kubernetes a abandonné son shim de runtime spécifique à Docker et ne parle plus qu’à des runtimes de conteneurs standard. Rien ne s’est cassé — les images suivent le standard ouvert OCI — mais les rôles sont devenus nets : Docker est le chantier naval, Kubernetes est l’autorité portuaire. Le nom l’a toujours su : kubernetes signifie « timonier » en grec — le projet a été publié en open source en juin 2014, a atteint la 1.0 en 2015 et a donné naissance à la CNCF, distillant une décennie d’exploitation de conteneurs à l’échelle d’une flotte en un bien commun public.

Cas d’usage courants

  • Flottes de microservices. Des dizaines de services avec mise à l’échelle et déploiements indépendants — la charge de travail qui a façonné Kubernetes.
  • Équipes plateforme. Construire une plateforme interne sur un substrat qui s’exécute à l’identique sur n’importe quel cloud ou on-premises.
  • Charges massives en pics. Jobs par lots, pipelines de données, entraînement de ML — bin-packés sur une capacité partagée.
  • Stratégies multi-cloud et de portabilité. La couche de calcul d’une défense contre le vendor lock-in — avec la réserve que les services gérés alentour verrouillent encore.
  • Parcs de production auto-réparants. Partout où « une machine est morte à 3 heures du matin » doit être un non-événement plutôt qu’une alerte qui réveille.

Devriez-vous exécuter Kubernetes ? Matrice de décision

Exécutez Kubernetes quand…Passez votre tour quand…
Beaucoup de services, beaucoup d’équipes, mise à l’échelle indépendanteUne app, une équipe, une charge prévisible
Une équipe plateforme possède le cluster comme son produitPersonne ne possède l’ops à temps plein
La portabilité entre clouds est une exigence dureLa vitesse de mise sur le marché est la seule exigence
Les charges sont conteneurisées et ont une forme de flotteLes besoins backend sont du CRUD + auth standard
Vous avez dépassé les orchestrations plus simplesUn fichier compose ou une plateforme gérée suffit encore

Le consensus silencieux de l’industrie : la plupart des équipes qui exploitent Kubernetes sont en dessous de l’échelle où il se rentabilise. L’échelle des alternatives — un hôte avec un fichier compose, un service de conteneurs géré, un PaaS, un BaaS — couvre tout jusqu’aux vrais problèmes de flotte, et le Kubernetes géré couvre l’essentiel de ce qui reste.

Limites et trade-offs

  • La courbe d’apprentissage est l’ombre du produit. Pods, services, ingress, RBAC, operators, Helm — la fluidité se mesure en mois, et le cluster n’attend pas.
  • La surface opérationnelle. Mises à niveau, rotation des certificats, plugins réseau et santé du magasin d’état ne pardonnent pas ; c’est pourquoi les control planes gérés ont gagné.
  • L’étalement de YAML. La configuration déclarative à l’échelle devient sa propre base de code, avec ses propres revues, ses bugs et sa dérive.
  • Il orchestre des conteneurs, pas l’architecture. Un système mal délimité sur Kubernetes est le même système, désormais distribué — le cluster amplifie la conception, bonne ou mauvaise.
  • Kubernetes n’est pas un PaaS. Par conception, il ne livre ni CI/CD, ni base de données par défaut, ni services applicatifs — la plateforme au-dessus est à vous d’assembler, ce qui est précisément le travail que les abstractions plus hautes revendent comme produit.

Kubernetes sur Back4app

Back4app est une plateforme open-source de Backend as a Service (BaaS) qui combine une base de données gérée, des API REST et GraphQL générées automatiquement, l’authentification, le stockage de fichiers et des fonctions serverless avec Cloud Code. La relation avec Kubernetes est une honnête division du travail : ce que la plupart des équipes applicatives attendent réellement d’un cluster — des services backend déployés, mis à l’échelle, auto-réparants — est exactement ce que la couche BaaS livre avec zéro manifeste à écrire. Et pour les charges qui sont réellement des conteneurs, Back4app Containers les exécute en service géré : poussez une image, obtenez l’orchestration, sans posséder le port.

Questions fréquentes

Qu'est-ce que Kubernetes en termes simples ?

Un chef d'orchestre pour conteneurs. Vous déclarez ce qui devrait tourner — cette app, trois copies, cette quantité de mémoire — et Kubernetes fait continuellement coïncider la réalité : il place les conteneurs sur les machines, les redémarre quand ils plantent, les met à l'échelle avec la charge et route le trafic vers les copies saines. Il transforme une flotte de machines en un seul pool programmable.

Que signifie K8s ?

C'est un numéronyme : K, puis huit lettres, puis s — le même motif que i18n pour internationalisation. Le nom lui-même est grec : kubernetes signifie timonier ou pilote, la personne qui dirige le navire — c'est aussi pourquoi tant d'outils de son écosystème portent des noms nautiques et pourquoi le logo est une barre de navire.

Kubernetes est-il la même chose que Docker ?

Non — ils répondent à des questions différentes. Docker construit et exécute des conteneurs individuels sur une machine ; Kubernetes orchestre de nombreux conteneurs sur de nombreuses machines. Ils sont complémentaires : les images construites avec Docker s'exécutent sur des clusters Kubernetes. Depuis la version 1.24, Kubernetes n'utilise plus Docker lui-même comme runtime — il parle à n'importe quel runtime de conteneurs standard — mais les images construites avec Docker fonctionnent exactement comme avant, parce qu'elles suivent le standard ouvert OCI.

Que sont un cluster, un nœud et un pod ?

Le cluster est le système complet : un control plane plus des machines worker. Un nœud est une machine de ce système, physique ou virtuelle. Un pod est la plus petite unité déployable — un ou plusieurs conteneurs étroitement couplés qui partagent une identité réseau et du stockage. Vous n'exécutez presque jamais un pod nu : vous déclarez un Deployment, et Kubernetes gère les pods pour vous.

Qu'est-ce que le control plane de Kubernetes ?

Le cerveau du cluster : un API server par lequel tout transite, un magasin clé-valeur qui détient l'état désiré et l'état réel du cluster, un scheduler qui décide sur quel nœud atterrit chaque pod, et des controllers qui réconcilient en continu la réalité avec les déclarations. Les nœuds worker exécutent un agent, un proxy réseau et le runtime de conteneurs qui exécute réellement les pods.

Qui a créé Kubernetes et quand ?

Il a été publié en open source en juin 2014, né de plus d'une décennie d'expérience interne d'orchestration de conteneurs chez l'une des plus grandes entreprises technologiques, et a atteint la version 1.0 en juillet 2015 — date à laquelle il a été donné à la toute jeune Cloud Native Computing Foundation (CNCF). Écrit en Go, il est depuis devenu l'un des plus grands projets open-source au monde.

Quand Kubernetes est-il disproportionné ?

Plus souvent que le hype ne l'admet. Une petite équipe qui exécute une poignée de conteneurs avec un trafic prévisible gagne peu avec un cluster et hérite d'une courbe d'apprentissage raide, d'un étalement de YAML et d'une discipline opérationnelle conçue pour des problèmes à l'échelle d'une flotte. Des chemins plus simples — un fichier compose sur un hôte, une plateforme de conteneurs gérée, un PaaS ou un BaaS — couvrent la plupart des charges en dessous d'une échelle sérieuse.

Qu'est-ce que Kubernetes géré ?

Un service cloud qui exploite le control plane pour vous — mises à niveau, disponibilité, magasin d'état — pendant que vous gérez les charges et les pools de nœuds. Il retire la couche opérationnelle la plus difficile et c'est ainsi que tourne en réalité l'essentiel du Kubernetes en production. Autogérer un cluster de bout en bout reste le territoire d'équipes plateforme à l'expertise dédiée ; le control plane est une infrastructure qui ne pardonne pas.

Termes associés

À comparer avec

Lectures recommandées

Prêt à construire votre backend ?

Lancez votre projet sur Back4app en quelques minutes — base de données, authentification, API et Cloud Code inclus. Sans carte bancaire.

Écrit et révisé par Back4app Engineering, Back4app Engineering · Publié le 2026-09-08