Clément Schanen

ConteneursService régional

EKS

Elastic Kubernetes Service

Permet d’exécuter kubernetes dans le cloud sans gérer l’infrastructure sous-jacente

Présentation

Kubernetes est un orchestrateur de conteneurs qui permet de :

  • déployer des applications conteneurisées
  • gérer leur montée en charge
  • assurer la résilience et l’auto-réparation

EKS est particulièrement adapté lorsque :

  • l’infrastructure n’est pas exclusivement sur AWS
  • la portabilité (multi-cloud / on-prem) est un enjeu
  • les équipes maîtrisent déjà Kubernetes

Fonctionnalités

  • Création de clusters Kubernetes managés
  • Haute disponibilité native
  • Mises à jour du plan de contrôle gérées par AWS
  • Intégration avec d’autres services AWS (IAM, VPC, ELB/ALB, CloudWatch…)
  • Exécution des workloads sur : EC2 ou AWS Fargate

Concepts clés

  • Cluster : Ensemble logique regroupant les composants de gestion et d’exécution
  • Pod :
    • Plus petite unité déployable dans Kubernetes
    • Un pod peut contenir un ou plusieurs conteneurs
  • Node : Machine (EC2 ou autre) sur laquelle s’exécutent les pods

Architecture EKS

Control Plane

  • Responsable de :
    • l’API Kubernetes
    • la planification des pods
    • le maintien de l’état du cluster
  • Entièrement managé par AWS :
    • haute disponibilité
    • mises à jours automatiques

Data Plane

  • Responsable de l’exécution des applications EC2 ou AWS Fargate

Le dimensionnement, la sécurité et les mises à jour du data plane restent à la charge du client

Variantes EKS

EKS Distro

  • Distribution open source de Kubernetes
  • Même base que EKS
  • Entièrement auto-gérée

EKS Anywhere

  • Kubernetes on-prem basé sur EKS Distro
  • Gestion du cycle de vie des clusters
  • Support via abonnement entreprise