Kubernetes et EKS : Est-ce vraiment la même chose ?
Ce n’est pas censé être simplement Kubernetes sur le cloud AWS ?
Hello,
J’ai commencé à travailler sur Amazon EKS après avoir obtenu la certification CKA (Certified Kubernetes Administrator). Bien qu’EKS repose sur Kubernetes, il existe plusieurs différences importantes, notamment en termes d’opérations (Ops) et de sécurité.
Si ce n'est pas déjà fait, tu peux :
Découvrir notre formation sur le DevOps
Lire toutes les éditions précédentes de la newsletter
Au programme :
Différences entre Kubernetes et Amazon EKS
Focus sur la sécurité dans Amazon EKS
Avantages d’EKS pour les workloads Kubernetes
Pour aller plus loin…
Gestion des Clusters : Kubernetes vs EKS
La gestion des clusters est l’un des aspects où EKS se démarque. Avec Kubernetes “vanilla”, vous êtes responsable de tout : le déploiement du plan de contrôle (control plane), la configuration des nœuds de travail (worker nodes), les mises à jour, et même la haute disponibilité. Cette approche offre une flexibilité totale mais demande une expertise technique importante.
Amazon EKS simplifie cette gestion en prenant en charge le plan de contrôle. Voici ce que cela signifie :
Automatisation : AWS gère les mises à jour, le scaling, et la résilience du plan de contrôle.
Haute disponibilité : Le plan de contrôle est distribué sur plusieurs zones de disponibilité (Availability Zones), sans effort supplémentaire de votre part.
Moins de maintenance : Vous pouvez vous concentrer sur vos workloads et vos applications sans vous soucier des détails opérationnels du cluster.
Cependant, cette simplicité a un coût : moins de personnalisation. Par exemple, AWS impose un léger décalage dans l’accès aux dernières versions de Kubernetes, car chaque version doit être validée avant d’être disponible sur EKS.
Sécurité dans EKS : Authentification avec JWKS et OIDC
La sécurité est un domaine où EKS brille grâce à son intégration avec AWS IAM et OIDC (OpenID Connect). L’authentification repose sur des tokens JWT (JSON Web Tokens), qui sont validés à l’aide de JWKS (JSON Web Key Sets). Voici comment cela fonctionne :
OIDC et IAM : Vous pouvez configurer un fournisseur d’identité OIDC pour permettre aux utilisateurs ou aux workloads (via Service Accounts) d’obtenir des tokens JWT. Ces tokens sont ensuite utilisés pour accéder aux ressources AWS ou au cluster Kubernetes.
Validation avec JWKS : Les JWKS contiennent les clés publiques nécessaires pour vérifier l’authenticité des tokens JWT sans exposer les clés privées. Cela garantit une validation sécurisée.
Rotation des clés : Les clés publiques peuvent être mises à jour régulièrement dans le JWKS pour renforcer la sécurité sans interrompre les services.
Cache des clés : Pour éviter une surcharge liée aux requêtes répétées vers le fournisseur OIDC, les clés sont mises en cache localement par EKS, ce qui améliore les performances.
En combinant IAM avec OIDC, vous pouvez définir des permissions granulaires pour vos workloads Kubernetes. Par exemple :
Restreindre l’accès à certaines ressources AWS pour un pod spécifique.
Autoriser uniquement certains utilisateurs ou groupes à exécuter des commandes sensibles comme `kubectl delete`.
Pourquoi choisir Amazon EKS ?
EKS est particulièrement adapté si vous utilisez déjà l’écosystème AWS. Voici quelques avantages concrets :
Intégration native avec AWS : Vous pouvez facilement connecter vos clusters à des services comme CloudWatch (monitoring), S3 (stockage), ou IAM (gestion des identités).
Automatisation avancée : Des fonctionnalités comme le scaling automatique des nœuds (Managed Node Groups) ou l’intégration avec Karpenter (outil de scaling open-source) simplifient la gestion de vos workloads.
Compatibilité avec Kubernetes : Vous pouvez continuer à utiliser vos outils préférés comme `kubectl`, Helm ou ArgoCD sans problème.
Cependant, il y a aussi quelques limitations :
Si vous avez besoin d’une flexibilité totale ou si vous souhaitez éviter le verrouillage fournisseur (vendor lock-in), Kubernetes “vanilla” reste une option intéressante.
Les coûts peuvent augmenter rapidement si votre cluster nécessite beaucoup de ressources ou si vous utilisez plusieurs services AWS.
Pour aller plus loin…
Un workshop EKS fait directement par la source AWS : https://eksworkshop.com/
Ce workshop interactif propose des modules qui couvrent les bases essentielles, mais aussi des sujets plus avancés comme l’autoscaling, l’observabilité, la sécurité, le réseau, l’automatisation et même l’intelligence artificielle et le machine learning (IA/ML).
Parmi les ateliers proposés, on trouve des exercices pratiques qui vous permettent de :
Gérer les secrets avec AWS Secrets Manager pour protéger les données sensibles de vos applications.
Configurer les permissions des pods grâce à AWS IAM et les rôles spécifiques (IAM Roles for Service Accounts), afin de mieux contrôler qui peut accéder à quoi.
Appliquer des standards de sécurité aux pods (Pod Security Standards) pour garantir un environnement sécurisé.
Utiliser des outils comme Kyverno, qui simplifient la création et l’application de règles de sécurité et de conformité dans vos clusters Kubernetes.
Tes cadeaux pour te remercier de partager la newsletter
Pour rappel, si tu recommandes la newsletter à d’autres personnes, voici les récompenses que tu peux gagner :
25 recommandation → On met en avant ton profil dans un article
50 recommandations → Une visio de 20 min de mentoring DevSecOps avec nous
100 recommandations → Une de nos formations aux choix offertes
Il te suffit de cliquer sur le bouton juste en dessous pour obtenir ton lien personnalisé :
Voilà, c’est tout pour aujourd’hui.
On est curieux d’avoir tes retours.
Partage nous tes réactions en répondant à ce mail.
Si tu as aimé cet article, n’oublie pas de mettre un petit like ! Ça nous aide à comprendre quels sujets on dois creuser.
Passe une excellente journée et à la prochaine.