Dimensionnement du calcul - AWS Directives prescriptives

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Dimensionnement du calcul

La mise à l'échelle du calcul est un élément essentiel des performances des applications dans un environnement Kubernetes dynamique. Kubernetes réduit le gaspillage grâce à l'ajustement dynamique des ressources informatiques (telles que le processeur et la mémoire) en réponse à la demande en temps réel. Cette fonctionnalité permet d'éviter le surprovisionnement ou le sous-provisionnement, ce qui peut également réduire les dépenses d'exploitation. Kubernetes élimine efficacement le besoin d'intervention manuelle en permettant à l'infrastructure de s'étendre automatiquement pendant les heures de pointe et de diminuer pendant les périodes creuses.

La mise à l'échelle globale du calcul de Kubernetes automatise le processus de dimensionnement, ce qui accroît la flexibilité et l'évolutivité de l'application et améliore son comportement tolérant aux pannes. En fin de compte, les capacités de Kubernetes améliorent l'excellence opérationnelle et la productivité.

Cette section décrit les types de dimensionnement de calcul suivants :

Cluster AutoScaler

En fonction des besoins des pods, l'outil Cluster Autoscaler modifie automatiquement la taille en ajoutant des nœuds lorsque cela est nécessaire ou en supprimant des nœuds lorsqu'ils ne sont pas nécessaires et sont sous-utilisés.

Considérez l'outil Cluster Autoscaler comme une solution de dimensionnement pour les charges de travail où la demande augmente progressivement et où la latence lors de la mise à l'échelle n'est pas un problème majeur.

L'outil Cluster Autoscaler fournit les fonctionnalités clés suivantes :

  • Mise à l'échelle : fait évoluer les nœuds de manière dynamique vers le haut ou vers le bas en réponse aux demandes de ressources réelles.

  • Planification des modules : permet de s'assurer que chaque module fonctionne et dispose des ressources dont il a besoin pour fonctionner, évitant ainsi la pénurie de ressources.

  • Rentabilité : élimine les dépenses inutiles liées à l'exploitation de nœuds sous-utilisés en les éliminant.

Cluster Autoscaler avec surprovisionnement

Cluster Autoscaler doté de fonctions de surprovisionnement similaires au Cluster Autoscaler, en ce sens qu'il déploie les nœuds de manière efficace et permet de gagner du temps en exécutant des pods de faible priorité sur les nœuds. Grâce à cette technique, le trafic est redirigé vers ces modules en réponse à des pics soudains de demande, ce qui permet à l'application de continuer à fonctionner sans interruption.

Cluster Autoscaler avec surprovisionnement offre les fonctionnalités de modules factices qui peuvent être utilisés pour déployer et exécuter facilement des nœuds lorsque la charge de travail est très importante, que la latence n'est pas nécessaire et que le dimensionnement doit être rapide.

Cluster Autoscaler avec surprovisionnement fournit les fonctionnalités clés suivantes :

  • Meilleure réactivité : en rendant la capacité excédentaire accessible en permanence, le développement du cluster en réponse aux pics de demande prend moins de temps.

  • Réservation de ressources : la gestion des pics de trafic inattendus contribue efficacement à une gestion correcte avec un minimum de temps d'arrêt.

  • Mise à l'échelle fluide — La réduction des délais d'allocation des ressources facilite un processus de mise à l'échelle plus fluide.

Karpenter

Karpenter for Kubernetes surpasse l'outil Cluster Autoscaler traditionnel en termes d'open source, de performances et de personnalisation. Avec Karpenter, vous pouvez lancer automatiquement uniquement les ressources de calcul nécessaires pour répondre aux demandes de votre cluster en temps réel. Karpenter est conçu pour offrir une mise à l'échelle plus efficace et plus réactive.

Les applications dont les charges de travail sont extrêmement variables ou complexes, pour lesquelles des décisions rapides de mise à l'échelle sont essentielles, bénéficient grandement de l'utilisation de Karpenter. Il s'intègre AWS, offrant un déploiement amélioré et une optimisation de la sélection des nœuds.

Karpenter inclut les principales fonctionnalités suivantes :

  • Provisionnement dynamique : Karpenter fournit les instances et les tailles adaptées à l'objectif et provisionne les nouveaux nœuds de manière dynamique en fonction des exigences particulières des pods.

  • Planification avancée — À l'aide d'un placement intelligent des modules, Karpenter organise les nœuds de manière à ce que les ressources telles que le GPU, le processeur, la mémoire et le stockage soient utilisées le plus efficacement possible.

  • Mise à l'échelle rapide — Karpenter peut effectuer une mise à l'échelle rapidement et réagit fréquemment en quelques secondes. Cette réactivité est utile pour les modèles de trafic soudain ou lorsque la charge de travail exige une mise à l'échelle immédiate

  • Rentabilité : en choisissant avec soin l'instance la plus efficace, vous pouvez réduire les coûts d'exploitation et tirer parti des alternatives économiques supplémentaires proposées AWS, telles que les instances à la demande, les instances ponctuelles et les instances réservées.