Kubernetes est conçu pour être étendu. L’extensibilité repose sur des mécanismes natifs (extensions) sur lesquels s’appuient des outils tiers (plugins/opérateurs).

Règle clé :

  • Une extension = mécanisme fourni par Kubernetes (CRD, Webhook, CNI…)
  • Un plugin / opérateur = outil tiers qui utilise ces mécanismes

Mécanismes d’extension

MécanismeRôleNote
CRD (Custom Resource Definition)Ajouter de nouveaux types d’objets à l’API KubernetesExtensions Kubernetes
Admission WebhooksIntercepter et valider/modifier les requêtes API avant persistenceExtensions Kubernetes
CNI (Container Network Interface)Gérer le réseau des pods (remplaçable)Extensions Kubernetes
CSI (Container Storage Interface)Gérer le stockage persistant (remplaçable)Extensions Kubernetes
OperatorsAutomatiser la gestion d’applications complexes (CRD + Controller)Extensions Kubernetes
Scheduler PluginsModifier la logique de planification des podsExtensions Kubernetes

Mécanismes de scheduling avancé

OutilRôleNote
KEDAAutoscaling événementiel (Kafka, SQS, métriques custom…)mécanisme de KEDA
PriorityClassDéfinir la priorité des pods pour l’ordonnancement et la préemptionPriorityClass

Vue d’ensemble des plugins tiers

Voir Plugins Kubernetes - Vue d’ensemble pour le tableau complet de tous les outils tiers et leurs mécanismes d’extension sous-jacents.


Relation extensions / plugins

Mécanismes natifs Kubernetes
        │
        ├── CRD ──────────────────► cert-manager (CRD: Certificate, Issuer)
        │                           ArgoCD (CRD: Application, AppProject)
        │                           KEDA (CRD: ScaledObject, ScaledJob)
        │
        ├── Admission Webhook ─────► ingress-nginx (validation webhooks)
        │                           cert-manager (mutation webhooks)
        │
        ├── CNI ───────────────────► Cilium, Calico, Flannel
        │
        ├── CSI ───────────────────► AWS EBS CSI, GCE PD CSI
        │
        └── Operator pattern ──────► Velero, cert-manager, ArgoCD, KEDA

En relation avec