Cluster EKS : Guide Complet

Auteur
Team Redac
Date de publication
Jun 16, 2023
Temps de lecture
4
m

Si vous cherchez une solution pour gérer efficacement votre infrastructure cloud, Amazon Web Services (AWS) propose une solution robuste avec Elastic Kubernetes Service (EKS). Cette plateforme offre une méthode simple et rapide pour créer et gérer des clusters Kubernetes sur AWS. 

Qu’est-ce qu’un cluster EKS ? Quels sont les prérequis et les étapes pour créer un cluster EKS ? Réponses dans cet article.

Introduction à EKS

EKS est un service Kubernetes certifié conforme. Kubernetes automatise les tâches de gestion de cluster telles que le déploiement, la mise à l'échelle et la gestion d’applications conteneurisées. En utilisant EKS, vous pouvez facilement créer et gérer des clusters Kubernetes sans avoir à vous soucier de la maintenance du matériel.

EKS est un service qui vous permet de déployer, gérer et faire évoluer des applications conteneurisées en utilisant Kubernetes sur AWS. EKS s'occupe de la gestion du plan de contrôle de Kubernetes pour vous. Cela vous permet de vous concentrer sur la création et la gestion de vos applications.

Qu'est-ce qu'un cluster EKS ?

Un cluster EKS est un cluster Kubernetes exécuté sur AWS à l'aide du service EKS. Le cluster EKS est composé de plusieurs nœuds de travail qui exécutent des conteneurs Docker et sont gérés par le plan de contrôle Kubernetes. Ce dernier est le contrôleur principal qui gère tous les aspects du cluster, tels que la gestion des ressources.

Un cluster EKS peut être créé en quelques minutes en utilisant la console AWS ou l'interface de ligne de commande AWS. Les nœuds peuvent être lancés dans plusieurs zones de disponibilité pour garantir une haute disponibilité dans le cas où une d’entre elles tomberait en panne.

Quels sont les prérequis pour créer un cluster EKS ?

Avant de créer un cluster EKS, il y a quelques prérequis que vous devez respecter. Tout d'abord, vous devez disposer d'un compte AWS actif. Ensuite, vous devez installer et configurer l'interface de ligne de commande AWS (CLI) et kubectl sur votre machine.

Configurer un compte AWS

Pour démarrer, vous devez créer un compte AWS si vous n'en avez pas déjà un. Une fois que vous avez créé un compte, vous pouvez vous connecter au AWS Management Console pour accéder aux services AWS.

Installer et configurer l'interface de ligne de commande AWS (CLI)

L'interface de ligne de commande AWS (CLI) est un outil en ligne de commande qui vous permet de gérer divers services AWS, y compris EKS. Pour installer la AWS CLI, suivez les instructions fournies par AWS CLI Documentation. Après l'installation, vous devez configurer la AWS CLI pour votre compte AWS en exécutant la commande "aws configure" et en fournissant les informations d'identification de votre compte.

Installer et configurer kubectl

kubectl est une interface de ligne de commande Kubernetes utilisée pour interagir avec les clusters Kubernetes. Pour installer kubectl, suivez les instructions fournies par Kubernetes Documentation. Après l'installation, vous devez configurer kubectl pour travailler avec votre cluster EKS en exécutant la commande "aws eks update-kubeconfig --region region-code --name nom-de-votre-cluster".

Étapes de création d’un cluster EKS

Une fois que vous avez tous les prérequis en place, vous pouvez commencer à créer votre cluster EKS.

Créer un VPC et configurer les sous-réseaux

Ce premier point peut paraître évident, mais il est important de créer un Virtual Private Cloud (VPC) pour votre cluster EKS. Le VPC est un réseau isolé dans lequel vous pouvez lancer des ressources AWS, y compris des instances EC2 pour vos nœuds Amazon EKS. Lors de la création d'un VPC, configurez les sous-réseaux pour votre cluster EKS et répartissez-les sur différentes zones de disponibilité pour assurer une haute disponibilité.

Configurer les groupes de sécurité

Les groupes de sécurité sont des pare-feu virtuels qui vous permettent de gérer les connexions entrantes et sortantes pour les instances EC2 de votre cluster EKS. Vous pouvez configurer les groupes de sécurité pour autoriser les connexions entrantes pour des ports spécifiques, tels que les ports HTTP et HTTPS, et pour restreindre l'accès aux instances EC2 uniquement aux adresses IP autorisées. Pour les configurer, spécifiez l’option “securityGroup”. 

Créer un rôle IAM pour EKS

Le rôle Identity and Access Management (IAM) permet à EKS d'accéder à d'autres services AWS nécessaires pour le fonctionnement de votre cluster EKS. Pour créer un rôle IAM pour EKS, vous devez d'abord créer une politique d’approbation IAM dans un fichier JSON avec la commande suivante : 

cat >eks-cluster-role-trust-policy.json <<EOF

{

  "Version": "2012-10-17",

  "Statement": [

    {

      "Effect": "Allow",

      "Principal": {

        "Service": "eks.amazonaws.com"

      },

      "Action": "sts:AssumeRole"

    }

  ]

}

EOF

Ensuite, vous devez créer le rôle IAM de cluster EKS. Cela permet d’attribuer l’approbation de l’étape précédente à ce rôle. Pour ce faire, exécutez la commande : 

aws iam create-role --role-name myAmazonEKSClusterRole --assume-role-policy-document file://"eks-cluster-role-trust-policy.json"

La dernière étape consiste à attacher la politique gérée par Amazon au principal IAM : 

aws iam attach-role-policy --policy-arn arn:aws:iam::aws:policy/AmazonEKSClusterPolicy --role-name myAmazonEKSClusterRole

Créer et lancer le cluster EKS

Après avoir configuré les prérequis du VPC, les groupes de sécurité et le rôle IAM, vous pouvez créer et lancer le cluster EKS en utilisant la CLI AWS

aws eks create-cluster --region region-code --name my-cluster --kubernetes-version 1.25 \

   --role-arn arn:aws:iam::111122223333:role/myAmazonEKSClusterRole \

   --resources-vpc-config subnetIds=subnet-ExampleID1,subnet-ExampleID2,securityGroupIds=sg-ExampleID1

Remplacez : 

  • region-code par la région AWS dans laquelle vous souhaitez créer votre cluster
  • my-cluster par le nom de votre cluster.
  • 1.25 par la version prise en charge par Amazon EKS
  • 111122223333 par l’ID de votre compte
  • myAmazonEKSClusterRole par le nom de votre rôle IAM de cluster
  • les valeurs subnetIDs et securityGroupIds par vos propres valeurs.

Activez kubectl pour communiquer avec votre cluster : 

aws eks update-kubeconfig --region region-code --name my-cluster

Confirmez la communication : 

kubectl get svc

Enfin, vous pouvez vérifier l'état des nœuds de travail dans votre cluster EKS en utilisant la commande "kubectl get nodes". Cette commande affichera une liste de tous les nœuds de travail dans votre cluster EKS et leur état actuel.

Cluster EKS en bref

Pour conclure, EKS est un service certifié conforme pour créer et gérer des clusters Kubernetes dans AWS. Grâce aux prérequis et aux étapes expliqués dans cet article, vous êtes en mesure de créer votre cluster EKS

Omnes education logo

OMNES Education est une institution privée d'enseignement supérieur et de recherche interdisciplinaire, implantée à Beaune, Bordeaux, Chambéry, Lyon, Rennes et Paris. Avec ses campus à Abidjan, Barcelone, Genève, Londres, Monaco, Munich, Montreux et San Francisco, OMNES Education occupe une place unique dans le paysage éducatif français.

15
[Écoles]
200 000
[Alumni]
3 000
[Experts]
40 000
[Étudiants]
20
[Campus en France et à l’étranger]
Management
Ingénieurs
Communication
Sciences politiques et Relations internationales
Création et design