eaa7da9f-5c61-492d-b972-141664a014db 1.png

Point d’entrée unique, il valide les requêtes et distribue les tâches aux autres composants. il est responsable de:

FonctionDescription
Gestion de l’APIExpose le endpoint de l’API du cluster, gère toutes les requêtes API, versionne l’API et supporte plusieurs versions simultanément.
Authentification et AutorisationGère l’authentification (certificats clients, jetons porteurs, authentification HTTP Basic) et autorisation (évaluation ABAC/RBAC).
Validation et mutationTraite les requêtes API et valide les objets de l’API (pods, services, etc.) via les controllers Validation et Mutation Admission.
Coordination du clusterCoordonne les processus entre les composants du plan de contrôle (control plane) et les nœuds de travail (workers).
Aggregation LayerPermet d’étendre l’API Kubernetes avec des ressources et contrôleurs personnalisés via une couche d’agrégation.
Communication avec etcdLe seul composant auquel le kube-apiserver initie une connexion est etcd ; tous les autres composants se connectent à l’API server.
Surveillance (watch) des ressourcesSupporte la surveillance en temps réel des ressources : permet de recevoir des notifications lors de modifications (création, suppression, etc.).
Surveillance indépendante par composantChaque composant (Kubelet, scheduler, controllers) surveille l’API server pour déterminer ses actions à effectuer.
Proxy intégréContient un proxy natif pour permettre un accès aux services ClusterIP depuis l’extérieur du cluster.

Dans un déploiement Nginx

  • Reçoit kubectl apply -f nginx.yaml, valide les droits, la syntaxe et les règles d’admission.
  • Écrit l’intention (créer un pod) dans etcd.
  • Notifie le kube-scheduler et le kube-controller-manager des nouveaux objets à traiter.