Fonctionnalités d'Amazon EKS

Présentation

Amazon Elastic Kubernetes Service (Amazon EKS) est un service Kubernetes géré qui vous permet d’exécuter facilement Kubernetes sur AWS et sur site. Kubernetes est un système open source conçu pour automatiser le déploiement, la mise à l'échelle et la gestion des applications conteneurisées. Amazon EKS est certifié conforme pour Kubernetes. Par conséquent, les applications existantes qui s'exécutent sur Kubernetes en amont sont compatibles avec Amazon EKS.

Amazon EKS gère automatiquement la disponibilité et la capacité de mise à l'échelle des nœuds de plan de contrôle de Kubernetes, qui sont entre autres responsables de la planification des conteneurs, de la gestion de la disponibilité des applications, du stockage des données des clusters et d'autres tâches clés.

Amazon EKS vous permet d'exécuter vos applications Kubernetes à la fois sur Amazon Elastic Compute Cloud (Amazon EC2) et AWS Fargate. Avec Amazon EKS, vous profitez de l'ensemble des performances, de la mise à l'échelle, de la fiabilité et de la disponibilité de l'infrastructure AWS, mais également d'une intégration aux services de mise en réseau et de sécurité d'AWS, comme les Application Load Balancers (ALB) pour la distribution des charges, d'une intégration d'AWS Identity and Access Management (IAM) au contrôle d'accès en fonction du rôle (RBAC) et Virtual Private Cloud (VPC) pour la mise en réseau de pods.

photo de données informatiques

Clusters Kubernetes gérés

Amazon EKS propose un plan de contrôle Kubernetes évolutif à haute disponibilité, qui peut être exécuté dans différentes zones de disponibilité AWS. Amazon EKS gère automatiquement la disponibilité et la capacité de mise à l'échelle des serveurs d'API Kubernetes et la couche de persistance etcd. Amazon EKS exécute le plan de contrôle Kubernetes dans trois zones de disponibilité afin de garantir une haute disponibilité. De plus, il détecte et remplace automatiquement les nœuds du plan de contrôle défectueux.

Les modules complémentaires EKS sont des logiciels opérationnels courants qui étendent les fonctionnalités opérationnelles de Kubernetes. Vous pouvez utiliser EKS pour installer et maintenir ces logiciels complémentaires à jour. Lorsque vous démarrez un cluster Amazon EKS, vous pouvez sélectionner les modules complémentaires que vous souhaitez exécuter dans le cluster, y compris les outils Kubernetes pour l'observabilité, la mise en réseau, la scalabilité automatique et les intégrations de services AWS.

Déploiements hybrides

Vous pouvez utiliser EKS sur AWS Outposts pour exécuter des applications conteneurisées qui nécessitent des latences particulièrement faibles sur les systèmes sur site. AWS Outposts est un service entièrement géré qui étend l'infrastructure, les services, les API et les outils AWS à pratiquement n'importe quel site connecté. Avec EKS sur Outposts, vous pouvez gérer les conteneurs sur site avec la même facilité que vos conteneurs dans le cloud.

Vous pouvez attacher à EKS des nœuds exécutés dans AWS Local Zones ou dans AWS Wavelength, ce qui vous donne plus de choix pour l’infrastructure gérée par AWS à la périphérie.

Amazon EKS Distro regroupe la même distribution de logiciels Kubernetes open source utilisée dans Amazon EKS sur AWS pour une utilisation sur votre propre infrastructure sur site. Les clusters EKS Distro peuvent être gérés avec vos propres outils ou avec Amazon EKS Anywhere.

Amazon EKS Anywhere vous permet de créer et d’exploiter facilement des clusters Kubernetes (création avec les logiciels d’Amazon EKS Distro) sur site, y compris sur vos propres machines virtuelles (VM) et serveurs sur matériel nu. EKS Anywhere vous évite la complexité de la création et de la prise en charge de vos propres outils pour gérer les clusters Kubernetes. EKS Anywhere fournit des outils d'automatisation qui simplifient la création de clusters, l'administration et l'exploitation d'infrastructures telles que le matériel nu, VMware vSphere et les machines virtuelles sur le cloud. Cela comprend également les machines virtuelles sur le cloud comportant des configurations de journalisation, de surveillance, de mise en réseau et de stockage définies par défaut. EKS Anywhere vous dote des outils et composants supplémentaires dont vous avez besoin pour exécuter Kubernetes en production, tels que l’installation de cluster et la gestion de cycle de vie, l’observabilité, la sauvegarde de cluster et la gestion de politique.

Vous pouvez utiliser eksctl pour le lancement des nœuds et la gestion en une seule ligne

Vous pouvez également utiliser l'outil de ligne de commande eksctl pour la mise en service et l'exécution d'Amazon EKS en quelques minutes. Exécutez simplement la commande « eksctl create cluster » pour créer votre cluster EKS. Vous pouvez utiliser eksctl pour simplifier la gestion et les opérations de votre cluster, y compris la gestion des nœuds et des modules complémentaires.

Amazon EKS prend en charge la planification de composants master et de conteneurs Windows. EKS prend en charge les composants master Windows actifs ainsi que les composants master Linux, ce qui vous permet d’utiliser le même cluster pour gérer les applications sur chaque système d’exploitation.

Les processeurs AWS Graviton2 optimisent les instances EC2 ARM, offrant une avancée majeure en termes de performances et de fonctionnalités, ainsi que des économies de coûts significatives. Les conteneurs actifs visent principalement à améliorer l'efficacité du coût des applications. Combinez les deux et vous obtenez un excellent rapport qualité-prix. Par exemple, les tests de charge de travail montrent que les types d’instances basés sur les processeurs Graviton2 offrent un rapport qualité‑prix jusqu’à 40 % supérieur à celui de leurs équivalents des familles M5, C5 et R5 basés sur x86. Amazon EKS on AWS Graviton2 est généralement disponible lorsque les deux services sont disponibles au niveau régional.

Mise en réseau et sécurité

AWS Cloud Map est un service de découverte de ressources cloud. Grâce à Cloud Map, vous pouvez définir des noms personnalisés pour vos ressources d'applications. Il maintient l'emplacement mis à jour de ces ressources qui changent de façon dynamique. Cela augmente la disponibilité de votre application, car votre service Web découvre toujours les emplacements les plus récents de ses ressources. Cloud Map fonctionne avec external-dns, un connecteur Kubernetes open-source qui propage automatiquement les emplacements de services internes au registre de services Cloud Map lorsque les services Kubernetes sont lancés et les supprime à la résiliation. Les services basés sur Kubernetes peuvent être découverts via Cloud Map, qui fournit un registre de services unifié pour toutes les charges de travail des conteneurs.

Amazon EKS intègre RBAC Kubernetes (le système natif de contrôle des accès basé sur les rôles) à AWS IAM. Vous pouvez affecter des rôles RBAC à chaque entité IAM directement, ce qui vous permet de contrôler avec précision les autorisations d'accès à vos nœuds de plans de contrôle Kubernetes.

Amazon EKS vous permet d'attribuer des autorisations IAM à vos comptes de service Kubernetes. Le rôle IAM peut contrôler les accès aux autres services conteneurisés, des ressources AWS externes au cluster comme les bases de données et les secrets ou aux services et applications tiers s'exécutant en dehors d'AWS. Vous disposez ainsi d'un contrôle d'accès précis au niveau du pod lorsque vous exécutez des clusters avec plusieurs services colocalisés, et vous pouvez facilement optimiser les coûts et la disponibilité du cluster.

Amazon EKS est certifié par de multiples programmes de conformité pour les applications réglementées et sensibles. Amazon EKS est conforme aux normes SOC, PCI, ISO, FedRAMP‑Moderate, IRAP, C5, K‑ISMS, ENS High, OSPAR, HITRUST CSF, et est compatible avec les exigences de la loi HIPAA.

Amazon EKS est compatible avec la vérification de signature d’image de conteneur afin de permettre le déploiement de charges de travail de conteneur avec des images et des artefacts approuvés. Vous pouvez vérifier les images (ou tout autre artefact OCI tel que les nomenclatures logicielles) signées par AWS Signer, une solution de signature entièrement gérée, avant de déployer des images dans vos clusters Amazon EKS. AWS prend en charge les solutions de signature et de vérification d'images basées sur le code source ouvert afin que vous puissiez facilement signer les artefacts stockés dans votre registre et les vérifier à l'aide de politiques en tant que code open source ou de contrôleurs d'admission.

Calcul sans serveur

EKS est compatible avec AWS Fargate et permet d'exécuter vos applications Kubernetes avec des services de calcul sans serveur. Fargate évite d'avoir à approvisionner et gérer des serveurs, permet de spécifier les ressources en fonction des applications et de payer en conséquence et améliore la sécurité grâce à une isolation intégrée de l'application.

Surveillance des coûts

Amazon EKS simplifie la compréhension des coûts liés à l'utilisation de vos Kubernetes, aussi bien au niveau des clusters qu'à celui des applications individuelles.

Amazon EKS ajoute automatiquement une identification de répartition des coûts AWS à chaque instance EC2 qui rejoint le cluster. Cela vous évite d'avoir à appliquer une politique d'étiquetage personnalisée au sein de votre organisation pour obtenir des informations sur les coûts au niveau du cluster. Une fois que vous avez activé l'identification de répartition des coûts en fonction du nom du cluster EKS dans la console de facturation AWS, vous pouvez vous servir des rapports de coûts et d'utilisation AWS pour suivre vos coûts EC2 associés aux clusters EKS.

Amazon EKS prend en charge Kubecost, ce qui vous permet de surveiller les coûts ventilés par ressources Kubernetes, notamment les pods, les nœuds, les espaces de noms et les étiquettes. Les administrateurs de plateformes Kubernetes et les dirigeants du secteur de la finance peuvent utiliser Kubecost pour visualiser une répartition de leurs frais associés à Amazon EKS, allouer les coûts et refacturer les coûts aux unités organisationnelles, par exemple les équipes chargées des applications. Vous pouvez fournir à vos équipes internes et à vos unités opérationnelles des données de coûts transparentes et exactes, basées sur la facture AWS réelle, et obtenir des recommandations en matière d'optimisation des coûts en fonction de leur environnement d'infrastructure et de leurs modèles d'utilisation au sein de leurs clusters.

Journalisation

Amazon EKS est intégré à AWS CloudTrail pour fournir davantage de visibilité sur les opérations de gestion d’EKS, notamment l’historique des audits. Vous pouvez utiliser CloudTrail pour visualiser les appels API vers l'API Amazon EKS. Amazon EKS distribue également les journaux de plan de contrôle Kubernetes à Amazon CloudWatch à des fins d’analyse, de débogage et d’audit.

Certifié conforme

Amazon EKS exécute Kubernetes en amont et est certifié compatible à Kubernetes, de sorte que vous pouvez utiliser tous les plug-ins et outils existants de la communauté Kubernetes. Les applications qui s'exécutent sur Amazon EKS sont entièrement compatibles avec celles qui s'exécutent dans n'importe quel environnement Kubernetes standard, que ce soit dans des centres de données sur site ou des clouds publics. Cela signifie que vous pouvez facilement faire effectuer la migration de n'importe quelle application Kubernetes standard vers Amazon EKS sans devoir refactoriser votre code.

Mise à jour des clusters gérés

Amazon EKS facilite la mise à jour des clusters en cours d’exécution vers la version la plus récente de Kubernetes sans qu’il soit nécessaire de gérer le processus de mise à jour. Les mises à jour de version de Kubernetes sont effectuées sur place, ce qui évite d'avoir à créer des clusters ou à migrer les applications vers un nouveau cluster.

Les nouvelles versions de Kubernetes étant publiées et validées pour une utilisation avec Amazon EKS, nous prendrons en charge à tout moment trois versions stables de Kubernetes dans le processus de mise à jour. Vous pouvez initier l'installation d'une nouvelle version et passer en revue l'état de mise à jour en cours au moyen du kit SDK, de la CLI ou la console AWS.

Prise en charge avancée de la charge de travail

Amazon EKS fournit une Amazon Machine Image (AMI) optimisée qui contient des pilotes NVIDIA configurés pour les instances Amazon EC2 P2 et P3 compatibles GPU. Ainsi, il est facile d’utiliser Amazon EKS pour exécuter des charges de travail avancées de calcul, telles que le machine learning (ML), Kubeflow, les conteneurs de deep learning (DL), le calcul haute performance (HPC), l’analyse financière et le transcodage vidéo.

Compatibilité open source

Amazon EKS est entièrement compatible avec les outils de la communauté Kubernetes et prend en charge les modules complémentaires courants de Kubernetes. Ils comprennent CoreDNS pour créer un service DNS pour votre cluster, et l'interface utilisateur Web de tableau de bord Kubernetes et l'outil de ligne de commande kubectl pour accéder à votre cluster sur Amazon EKS et le gérer.

Pour plus d’informations, consultez la page GitHub sur les outils de la communauté Kubernetes.