Les solutions de calcul dans le cloud

Découvre comment le cloud exécute tes applications et comment choisir la solution adaptée. Compare les machines virtuelles et leurs familles d’instances, les conteneurs et Kubernetes managé, les conteneurs et fonctions sans serveur, ainsi que les plateformes d’hébergement d’applications. Découvre comment la mise à l’échelle automatique ajoute et supprime de la capacité, comment les répartiteurs de charge distribuent le trafic entre les serveurs sains et les zones de disponibilité, et comment recommander une solution de calcul pour un cas réel d’entreprise, avec des exemples tirés d’AWS, de Microsoft Azure et de Google Cloud.

DébutantUnité 3 sur 7 de la formation Formation : Cloud computing : AWS, Azure et Google Cloud

Ce que tu vas apprendre

  1. Expliquer ce qu’est une machine virtuelle dans le cloud, les ressources nécessaires à son fonctionnement et l’incidence de son cycle de vie sur les coûts, puis choisir une famille et une taille d’instance adaptées à une charge de travail.
    • Décrire une machine virtuelle dans le cloud et les ressources nécessaires à son fonctionnement
      Expliquer comment un fournisseur transforme des serveurs physiques en machines virtuelles, nommer les ressources dont une machine virtuelle a besoin et décrire son cycle de vie ainsi que la répartition de sa gestion.
    • Choisir une famille et une taille d’instance
      Lire les noms des types d’instances, associer les principales familles d’instances aux charges de travail, dimensionner une machine virtuelle selon ses besoins et reconnaître la capacité Spot interruptible.
  2. Expliquer la mise à l’échelle, l’élasticité et la haute disponibilité, décrire comment la mise à l’échelle automatique ajoute et supprime des instances, et expliquer comment les répartiteurs de charge distribuent le trafic entre les instances saines.
    • Expliquer la mise à l’échelle, l’élasticité et la haute disponibilité
      Distinguer la mise à l’échelle verticale de la mise à l’échelle horizontale, ainsi que la scalabilité de l’élasticité, et expliquer comment la répartition des instances entre zones et domaines de défaillance maintient une application en fonctionnement.
    • Expliquer comment la mise à l’échelle automatique ajoute et supprime des instances
      Décrire le modèle d’un groupe de mise à l’échelle, ses tailles minimale, souhaitée et maximale, ses contrôles d’état et ses politiques de mise à l’échelle, puis déterminer comment une politique de suivi de cible réagit à la charge.
    • Expliquer comment un répartiteur de charge distribue le trafic
      Décrire le rôle d’un répartiteur de charge, le fonctionnement des contrôles d’état et des méthodes de distribution, les différences entre les répartiteurs de couche 4 et de couche 7, ainsi que les services proposés par chaque fournisseur.
  3. Comparer les conteneurs aux machines virtuelles, expliquer ce que Kubernetes managé prend en charge et décrire les services qui exécutent des conteneurs sans gestion des serveurs.
    • Comparer les conteneurs aux machines virtuelles
      Expliquer ce que sont un conteneur, une image de conteneur et un registre, en quoi les conteneurs diffèrent des machines virtuelles par leur taille, leur vitesse et leur isolation, et pourquoi ils conviennent aux microservices.
    • Expliquer ce que Kubernetes managé prend en charge pour toi
      Décrire les principaux composants d’un cluster Kubernetes, la manière dont il maintient l’état souhaité et adapte sa capacité, ainsi que ce qu’Amazon EKS, Azure Kubernetes Service et Google Kubernetes Engine gèrent pour toi.
    • Exécuter des conteneurs sans gérer de serveurs
      Décrire Amazon ECS avec AWS Fargate, Azure Container Instances, Azure Container Apps et Google Cloud Run, et déterminer quand les conteneurs sans serveur conviennent.
  4. Expliquer comment les fonctions sans serveur s’exécutent et sont facturées, dans quels cas elles conviennent, et comment les plateformes d’hébergement exécutent des applications web tandis que le fournisseur gère l’infrastructure.
    • Expliquer les fonctions sans serveur et leurs cas d’utilisation
      Décrire le modèle des fonctions déclenchées par des événements, leurs déclencheurs, leur facturation, leurs limites et leurs démarrages à froid, puis déterminer quand les fonctions conviennent mieux qu’un serveur à une charge de travail.
    • Héberger des applications web sur une plateforme managée
      Décrire ce que les plateformes d’hébergement d’applications prennent en charge pour toi, comparer AWS Elastic Beanstalk, Azure App Service, Google App Engine et des solutions d’hébergement plus simples, et savoir ce que tu continues de gérer.
  5. Comparer les machines virtuelles, les conteneurs, les fonctions sans serveur et les plateformes d’hébergement selon le contrôle, la responsabilité, la mise à l’échelle, le coût et la portabilité, puis recommander une solution pour un cas d’usage en entreprise.
    • Comparer les solutions de calcul selon les mêmes critères
      Placer les solutions de calcul sur un éventail allant du contrôle maximal à la gestion minimale, puis comparer la répartition de leur gestion, leur mise à l’échelle, leur facturation et leur portabilité.
    • Recommander une solution de calcul pour un cas d’usage en entreprise
      Appliquer une courte série de questions à des cas réels, justifier une recommandation et planifier le passage du réhébergement à la modernisation.

Solutions de calcul dans le cloud : cours

5 chapitres

1

Exécuter des charges de travail sur des machines virtuelles dans le cloud

Une machine virtuelle dans le cloud te donne un ordinateur familier à configurer, mais ses ressources, son cycle de vie et sa maintenance nécessitent toujours des décisions. Découvre les choix nécessaires au lancement d’une instance, les frais qui peuvent subsister après son arrêt et la personne qui applique les correctifs au système d’exploitation. Utilise ensuite les besoins de la charge de travail pour choisir une famille et une taille, lire les noms des fournisseurs et distinguer les courts pics de CPU de la capacité qui peut être reprise.

1.1 Lancer et gérer une machine virtuelle

Une machine virtuelle (VM) est un ordinateur défini par logiciel. Elle possède des processeurs virtuels, de la mémoire, des disques, une connexion réseau et son propre système d’exploitation. Un hyperviseur répartit un serveur physique entre plusieurs machines virtuelles et les isole les unes des autres. Une machine virtuelle cloud en fonctionnement est aussi appelée une instance.

Choisir les ressources

Les services principaux sont Amazon EC2, Azure Virtual Machines et Google Compute Engine. Chacun te loue une infrastructure ; tu gères le système d’exploitation et l’application. C’est l’infrastructure en tant que service (IaaS).

Le lancement d’une machine virtuelle implique plusieurs choix liés :

  • Emplacement : une région et, lorsqu’elle est proposée, une zone de disponibilité.
  • Image : un modèle contenant le système d’exploitation et les logiciels préinstallés. AWS l’appelle Amazon Machine Image (AMI) ; Azure et Google proposent des images publiques et personnalisées.
  • Taille : les vCPU, la mémoire et la capacité associée. Un vCPU est l’unité de traitement attribuée à la machine virtuelle.
  • Disque : le stockage persistant à partir duquel le système d’exploitation démarre.
  • Réseau : une interface dans un sous-réseau, ainsi que des règles de trafic. Une adresse IP publique est facultative.

AWS utilise des volumes EBS, des sous-réseaux VPC et des groupes de sécurité. Azure utilise des disques managés, des sous-réseaux VNet et des groupes de sécurité réseau. Google utilise des disques persistants, des sous-réseaux VPC et des règles de pare-feu. Les noms diffèrent, mais les ressources remplissent des rôles comparables.

Suivre les choix de lancement

Une équipe a besoin d’un serveur web Linux à Francfort. Elle choisit la région Europe (Frankfurt), une AMI Ubuntu et m7g.large, avec 2 vCPU et 8 Gio de mémoire. Elle ajoute un volume de démarrage EBS de 30 Gio et connecte la machine virtuelle à un sous-réseau VPC. Son groupe de sécurité autorise HTTPS sur le port 443 depuis Internet et SSH sur le port 22 uniquement depuis le réseau du bureau. L’image fournit le point de départ logiciel ; la taille fournit la capacité de calcul ; les règles de trafic déterminent qui peut se connecter.

Suivre le cycle de vie et la facture

Une machine virtuelle est créée, s’exécute, peut être arrêtée et redémarrée, puis finit par être supprimée. Les frais de calcul s’accumulent tant qu’elle est allouée pour fonctionner, même si l’utilisation du CPU est proche de zéro. L’arrêt met normalement fin aux frais de calcul, mais les disques conservés et les adresses IP publiques réservées peuvent continuer à coûter de l’argent. Sur Azure, vérifie que l’état est « Stopped (deallocated) » : un arrêt depuis le système d’exploitation invité peut laisser la machine virtuelle à l’état « Stopped », avec des frais de calcul toujours facturés.

Les disques locaux temporaires diffèrent des disques de démarrage persistants. AWS instance store, les disques temporaires Azure et Google Local SSD conservent les données sur l’hôte physique ; l’arrêt, le déplacement ou la désallocation d’une machine virtuelle peut entraîner leur perte. Place les fichiers à conserver dans un stockage persistant. Après avoir supprimé une machine virtuelle, examine les ressources facturables conservées. Un groupe de sécurité seul ne fait l’objet d’aucuns frais propres, tandis qu’un disque non supprimé peut continuer à en générer.

Savoir qui assure la maintenance

Le fournisseur entretient le centre de données, le matériel physique et l’hyperviseur. Tu appliques les correctifs au système d’exploitation invité, mets à jour les logiciels installés, protèges les données et gères les accès et les paramètres du pare-feu. Louer une machine virtuelle ne transfère pas au fournisseur l’application des correctifs à son système invité.

Un hôte dédié réserve un serveur physique à ton usage, ce qui est utile pour les licences liées aux cœurs physiques. Une instance sur serveur physique donne accès au matériel sans couche d’hyperviseur. Azure Virtual Desktop et Amazon WorkSpaces transmettent quant à eux des postes de travail hébergés dans le cloud aux appareils des utilisateurs.

Points clés

  • Une machine virtuelle te donne un système d’exploitation invité que tu maintiens.
  • Une image fournit les logiciels ; une taille fournit les vCPU et la mémoire.
  • Les disques persistants et les disques locaux temporaires ont des durées de vie différentes.
  • Vérifie la désallocation Azure et les ressources conservées pour mettre fin aux frais.
  • Les hôtes dédiés peuvent répondre aux exigences de licence liées aux cœurs physiques.

1.2 Adapter la famille et la taille d’une machine virtuelle à la charge de travail

La famille d’une instance détermine l’équilibre entre traitement, mémoire, stockage et accélérateurs. Sa taille détermine la quantité de ces ressources dont tu disposes. Choisis la famille selon le besoin principal de la charge de travail, puis une taille qui répond à toutes ses exigences.

Reconnaître les principales familles
FamillePrincipal atoutTravaux courantsExemples
PolyvalenteÉquilibre entre CPU et mémoireServeurs web et d’applicationsAWS M, Azure D, Google E2/N2
Optimisée pour le calculCapacité de traitementEncodage, traitements par lots, modélisationAWS C, Azure F, Google C2/H3
Optimisée pour la mémoireDavantage de mémoire par vCPUCaches, bases de données en mémoireAWS R/X, Azure E/M, Google M
Optimisée pour le stockageLectures et écritures locales rapidesBases de données à fortes entrées-sortiesAWS I, Azure L, Google Z3
AccéléréeGPU ou autres accélérateursEntraînement de modèles, renduAWS P/G, Azure N, Google A/G

Un stockage local rapide ne rend pas les données persistantes. Une charge de travail qui utilise des instances optimisées pour le stockage a toujours besoin d’une solution pour les données à conserver en cas de perte de l’hôte.

Lire le nom

Dans m7g.large, m signifie polyvalent, 7 désigne la génération, g indique AWS Graviton et large est la taille. La même famille passe de 2 vCPU et 8 Gio pour large à 4 vCPU et 16 Gio pour xlarge, puis à 8 vCPU et 32 Gio pour 2xlarge.

Dans le nom Azure Standard_D4s_v5, D désigne la famille, 4 le nombre de vCPU, s la prise en charge des SSD premium et v5 la version. Le nom Google e2-standard-4 désigne la série E2, le rapport de mémoire standard et 4 vCPU. Un vCPU est souvent un fil d’exécution matériel ; sur Graviton, c’est un cœur entier. Ne considère pas les vCPU de tous les fournisseurs comme des cœurs physiques identiques.

Étudier un choix de dimensionnement

Une application interne de production de rapports a besoin de 2 vCPU et de 6 Gio au pic d’activité. Compare ces tailles AWS :

  • c7g.large : 2 vCPU et 4 Gio ; la mémoire est insuffisante.
  • m7g.large : 2 vCPU et 8 Gio ; les deux besoins sont satisfaits, avec 2 Gio de marge.
  • r7g.large : 2 vCPU et 16 Gio ; cette taille fournit bien plus de mémoire que l’application n’en a besoin.

La taille polyvalente est le point de départ raisonnable. Sa mémoire par vCPU est de 8÷2=4 Gio. Les solutions optimisées pour le calcul et pour la mémoire fournissent respectivement 2 et 8 Gio par vCPU. Les types Google E2 highcpu, standard et highmem à 4 vCPU présentent de même des quantités de mémoire différentes : 4 Go, 16 Go et 32 Go.

Le redimensionnement optimal consiste à mesurer l’utilisation réelle et à adapter le choix. Examine l’utilisation de la mémoire, du disque et du réseau en plus de celle du CPU avant de réduire la taille. AWS Compute Optimizer, Azure Advisor et les recommandations de types de machines Google peuvent t’aider. Le changement de taille d’une machine virtuelle existante nécessite un arrêt ou un redémarrage : prévois donc une interruption pour une application sur un serveur unique.

Distinguer les pics des interruptions

Les types à performances extensibles AWS T, Azure B et Google E2 à cœur partagé conviennent aux charges peu actives avec de courts pics. AWS T et Azure B accumulent des crédits CPU sous un niveau de base et les dépensent au-dessus. Lorsque les crédits sont épuisés, Azure B et AWS T en mode standard reviennent au niveau de base ; les types AWS T actuels utilisent par défaut le mode illimité et peuvent facturer le surplus de CPU.

Les machines virtuelles Spot utilisent une capacité inutilisée que le fournisseur peut reprendre avec un court préavis. Elles conviennent aux traitements par lots redémarrables dont la progression est sauvegardée. Une base de données de production unique convient mal à cette solution. Les anciennes machines virtuelles préemptibles de Google ont aussi une durée de vie maximale de 24 heures ; cette limite ne définit pas les machines virtuelles Spot actuelles.

Points clés

  • Choisis la famille selon la ressource limitée, puis vérifie toutes les caractéristiques de la taille.
  • Un vCPU n’est pas toujours un cœur physique entier.
  • Détermine la taille optimale à partir de l’utilisation mesurée du CPU, de la mémoire, du disque et du réseau.
  • La capacité à performances extensibles convient aux pics courts ; une utilisation soutenue du CPU peut être limitée ou entraîner des frais supplémentaires.
  • Les charges de travail Spot doivent pouvoir supporter les interruptions.
  • Le changement de taille d’une machine virtuelle peut interrompre son application.
2

Maintenir la disponibilité et la réactivité des applications lorsque la demande évolue

Une application a besoin d’une capacité suffisante pour les périodes chargées et d’un nombre suffisant de copies saines pour résister aux pannes. Découvre la différence entre modifier la taille des machines et modifier leur nombre, pourquoi le partage de l’état compte et comment les zones réduisent le risque de panne. Suis une décision de mise à l’échelle automatique, du modèle au choix de capacité, puis découvre comment les répartiteurs de charge dirigent les requêtes vers les cibles saines tandis que d’autres systèmes assurent la réparation.

2.1 Adapter la capacité et résister aux pannes

Un service fait face à deux problèmes différents : l’arrivée de davantage de travail et les pannes de matériel. La mise à l’échelle modifie la capacité. La haute disponibilité maintient le service utilisable lorsque des composants tombent en panne. Une conception peut résoudre un problème tout en laissant l’autre sans solution.

Modifier la taille ou le nombre

La mise à l’échelle verticale modifie la taille d’une machine : par exemple, 2 vCPU et 8 Gio deviennent 8 vCPU et 32 Gio. Une augmentation ajoute des ressources ; une réduction en supprime. C’est un moyen direct de donner plus de capacité à une application existante, mais la machine doit généralement redémarrer, la taille maximale est limitée et la machine reste un point de défaillance.

La mise à l’échelle horizontale modifie le nombre de copies. Trois serveurs web peuvent passer à neuf, puis revenir à trois. Une augmentation ajoute des instances ; une réduction en supprime. Un répartiteur de charge partage les requêtes web, tandis que des processus en arrière-plan peuvent prendre des tâches dans une file d’attente partagée. L’application doit permettre à plusieurs copies de travailler utilement ensemble. Une base de données partagée peut toujours limiter le débit ou tomber en panne même si de nombreux serveurs web restent sains.

ChangementDirectionQue modifie-t-on ?
Augmentation ou réduction verticaleVerticaleRessources de chaque machine
Augmentation ou réduction horizontaleHorizontaleNombre de machines

La scalabilité est la capacité à traiter davantage de travail en ajoutant des ressources. L’élasticité est l’augmentation et la réduction automatiques de la capacité au bon moment lorsque la demande change. Une boutique qui passe automatiquement de 4 serveurs la nuit à 20 pendant une vente est élastique. Un parc fixe doté d’une réserve de capacité peut être hautement disponible sans être élastique.

Rendre les copies remplaçables

Une instance d’application sans état ne conserve aucune donnée unique nécessaire à une requête ultérieure. Stocke les paniers, les sessions et les fichiers chargés dans une base de données partagée, un cache ou un service de stockage. Une requête peut alors atteindre n’importe quelle instance, et une réduction horizontale peut en supprimer une sans perdre les paniers de ses utilisateurs.

Par exemple, un panier conservé uniquement dans la mémoire d’un serveur web disparaît lorsque ce serveur est résilié. Maintenir l’utilisateur sur ce serveur grâce à l’affinité de session ne protège pas le panier contre une panne du serveur. Placer le panier dans un stockage partagé change ce qui peut être supprimé sans risque.

Conserver une capacité suffisante après la panne d’une zone

Les zones de disponibilité sont des sites distincts au sein d’une région, dotés d’une alimentation électrique, d’un refroidissement et d’un réseau indépendants. Répartir les instances entre les zones protège contre la panne d’une zone entière. Plusieurs instances dans une même zone partagent toujours le risque lié à cette zone.

Supposons qu’une application doive conserver la capacité de 4 instances après la perte de n’importe laquelle des 3 zones. Les deux zones restantes doivent chacune fournir 2 instances :

4÷2=2

Exécute 2 instances dans chaque zone, soit 6 au total. La perte de n’importe quelle zone en laisse 4. Il s’agit d’une réserve de capacité en cas de panne, et non d’une augmentation du besoin normal de la charge de travail. Un répartiteur de charge dirige les requêtes vers les instances restantes ; tout service de données partagé doit aussi disposer d’une disponibilité adaptée.

Reconnaître les groupes à haute disponibilité Azure

Un groupe à haute disponibilité répartit les machines virtuelles au sein d’un même centre de données entre des domaines de défaillance matériels et des domaines de mise à jour pour la maintenance. Un domaine de défaillance partage du matériel comme l’alimentation électrique et les commutateurs réseau. Les groupes prennent en charge jusqu’à 3 domaines de défaillance ; les domaines de mise à jour sont au nombre de 5 par défaut et peuvent atteindre 20. Ils réduisent les risques liés aux baies et aux redémarrages planifiés. Les zones répondent au risque plus large d’indisponibilité de tout un site de centre de données.

Points clés

  • La mise à l’échelle verticale modifie la taille ; la mise à l’échelle horizontale modifie le nombre d’instances.
  • L’élasticité ajoute à la scalabilité l’augmentation et la réduction automatiques de la capacité.
  • Le partage de l’état permet de supprimer des instances d’application sans risque.
  • Prévois la capacité des zones restantes, pas seulement celle nécessaire au fonctionnement normal.
  • Les groupes à haute disponibilité répartissent les risques liés aux baies et à la maintenance au sein d’un centre de données.

2.2 Suivre une décision de mise à l’échelle automatique

La mise à l’échelle automatique ajoute et supprime des instances lorsque la demande change. Amazon EC2 Auto Scaling utilise des groupes Auto Scaling, Azure utilise Virtual Machine Scale Sets avec des règles de mise à l’échelle automatique, et Google utilise des groupes d’instances managés avec un outil de mise à l’échelle automatique.

Partir d’un modèle reproductible

Une nouvelle instance a besoin de la même image, de la même taille, des mêmes paramètres réseau et des mêmes instructions de démarrage que les autres. AWS utilise un modèle de lancement, Azure un modèle de machine virtuelle du groupe et Google un modèle d’instance. Une modification manuelle dans une machine virtuelle en fonctionnement disparaîtra lors de son remplacement, sauf si elle est incluse dans la configuration reproductible.

Le groupe possède trois paramètres de capacité :

  • Minimum : le plancher que le groupe maintient.
  • Capacité souhaitée : le nombre d’instances qu’il cherche actuellement à exécuter.
  • Maximum : le plafond qu’il ne doit pas dépasser.

Avec un minimum de 2, une capacité souhaitée de 4 et un maximum de 10, le groupe vise 4 instances. Les politiques peuvent faire varier la capacité souhaitée entre 2 et 10. Le maximum autorise la croissance ; le fixer à 10 ne lance ni ne facture en soi 10 machines virtuelles. Il plafonne le nombre d’instances, pas tous les frais de l’application.

Choisir ce qui déclenche un changement

Le suivi de cible cherche à maintenir une métrique proche d’une cible, comme une utilisation moyenne du CPU de 50 %. La mise à l’échelle par paliers ou fondée sur des règles modifie la capacité lorsqu’un seuil est franchi, par exemple en ajoutant 2 instances après que le CPU est resté au-dessus de 70 % pendant 5 minutes. La mise à l’échelle planifiée définit la capacité à des heures connues. La mise à l’échelle prédictive prévoit la demande à partir des tendances passées et prépare la capacité à l’avance.

Un pic quotidien à 08 h 00 incite à préparer les instances avant 08 h 00. Attendre une alerte de forte utilisation du CPU signifie que le pic est déjà arrivé alors que les machines virtuelles supplémentaires démarrent encore.

Calculer la capacité pour le suivi de cible

Quatre instances identiques ont une utilisation moyenne du CPU de 80 %, et la cible est de 50 %. Pour une estimation simplifiée à charge constante, additionne d’abord le travail en unités de pourcentage par instance :

4×80=320

Divise par la cible par instance :

320÷50=6,4

Arrondis à 7 instances, car 6 laisseraient la moyenne au-dessus de la cible. Avec 7, l’estimation est de 320÷7≈45,7%. Si le maximum du groupe est de 6, il s’arrête là et la moyenne est d’environ 53,3 %.

Distinguer la mise en disponibilité de la récupération après panne

Une machine virtuelle a besoin de temps pour démarrer, exécuter ses tâches de démarrage et réussir les contrôles d’état. Le préchauffage empêche les mesures incomplètes d’une nouvelle instance de fausser une décision de mise à l’échelle. Un délai de stabilisation limite les changements rapides dans les deux sens.

Les groupes de mise à l’échelle peuvent aussi remplacer les machines virtuelles défaillantes pour rétablir la capacité souhaitée. Les contrôles au niveau de l’application et les actions de réparation doivent être configurés : une machine virtuelle peut fonctionner alors que son application web est défaillante. Sur Azure, une action de réparation peut redémarrer une instance, réinstaller son image ou la remplacer ; Google appelle cette récupération autoréparation. Un répartiteur de charge peut détecter une application défaillante, mais le groupe de mise à l’échelle doit être configuré pour utiliser cette information à des fins de réparation.

La réduction horizontale supprime des instances. Conserve les journaux de manière centralisée et les données durables hors de leurs fichiers locaux pour que la suppression d’une copie saine ne supprime pas d’informations uniques.

Points clés

  • Un modèle permet de créer des instances de remplacement de manière reproductible.
  • Le minimum est le plancher, la capacité souhaitée l’objectif actuel et le maximum le plafond.
  • Le suivi de cible réagit à une métrique ; les planifications préparent les pics connus.
  • Arrondis les estimations de capacité à l’entier supérieur, puis applique le maximum.
  • Les délais de mise en disponibilité et les contrôles d’état de l’application influent sur la récupération.
  • La réduction horizontale nécessite des instances remplaçables et des données durables conservées à l’extérieur.

2.3 Distribuer les requêtes entre les serveurs sains

Un répartiteur de charge donne aux clients une adresse d’entrée unique et transmet le trafic entrant aux serveurs sains. AWS appelle l’ensemble de serveurs un groupe cible ; Azure utilise un pool principal ; Google utilise un service de backend. Les clients n’ont pas besoin d’une nouvelle adresse chaque fois que l’ensemble change.

Acheminer le trafic et détecter les pannes

Un contrôle d’état teste régulièrement une cible, par exemple en envoyant une requête à /health toutes les 10 secondes. Après un nombre suffisant d’échecs, la cible est marquée comme défaillante et ne reçoit plus de nouveau trafic jusqu’à ce qu’elle réussisse à nouveau un contrôle. La détection prend du temps, car les contrôles sont effectués à intervalles réguliers.

L’acheminement et la réparation sont deux tâches différentes. Le répartiteur de charge cesse d’envoyer de nouvelles requêtes à une cible défaillante. Un groupe de mise à l’échelle ou un opérateur répare ou remplace ce serveur. Ajouter uniquement un répartiteur de charge n’ajoute aucune capacité de traitement à l’application.

La répartition à tour de rôle sélectionne successivement les cibles saines. La méthode du plus petit nombre de connexions ou du plus petit nombre de requêtes en cours privilégie la cible qui a le moins de travail en cours. Le routage fondé sur le hachage associe à une cible les caractéristiques de la connexion, notamment les adresses et les ports. Une connexion reste sur la même cible, mais une nouvelle connexion du même utilisateur peut aboutir ailleurs.

L’affinité de session maintient les requêtes d’un utilisateur sur un même serveur. Elle peut aider une application qui conserve les sessions localement, mais rend le trafic moins régulier et expose les sessions à une panne de ce serveur. Un stockage partagé des sessions permet aux autres serveurs sains de poursuivre le travail de l’utilisateur.

Calculer l’effet de la perte d’un serveur

Trois serveurs sains se partagent également 900 requêtes par minute. Chacun en traite :

900÷3=300

Un serveur échoue à ses contrôles d’état. Le même travail est désormais envoyé à deux serveurs :

900÷2=450

Si chacun ne peut traiter que 400 requêtes par minute, le routage vers les serveurs sains laisse tout de même une surcharge. L’ensemble a besoin d’une réserve de capacité ou d’instances supplémentaires. La mise à l’échelle automatique modifie la capacité ; la répartition de charge la distribue.

Choisir la couche adaptée au routage
TypeCe qu’il comprendUtile pour
Couche 4Connexions TCP/UDP prises en charge, adresses et portsAcheminer les connexions réseau sans règles HTTP
Couche 7Hôtes, chemins et requêtes HTTP/HTTPSEnvoyer /api/ et /images/ vers des ensembles distincts

Un service de couche 7 peut aussi assurer la terminaison TLS, en déchiffrant HTTPS au point d’entrée, et fonctionner avec un pare-feu applicatif web. Un service de couche 4 n’inspecte pas le chemin HTTP pour choisir son serveur cible. Vérifie les protocoles de transport pris en charge par un produit donné.

AWS Elastic Load Balancing propose, au sein d’une région, des Application Load Balancers en couche 7, des Network Load Balancers en couche 4 et des Gateway Load Balancers pour les équipements réseau. Azure Load Balancer fonctionne en couche 4 ; Application Gateway est un service régional de couche 7 ; Front Door fournit un point d’entrée mondial de couche 7. Google Cloud Load Balancing propose des Application et Network Load Balancers sous des formes régionales et mondiales.

Relier le routage à la mise à l’échelle

Une fois l’intégration configurée, les nouvelles instances du groupe s’enregistrent comme cibles et reçoivent du trafic dès qu’elles sont saines. Lors de leur suppression, le drainage des connexions permet aux requêtes en cours de se terminer avant qu’une cible disparaisse. Un déploiement multizone achemine le trafic vers les zones saines pendant une panne, à condition que les zones restantes aient une capacité suffisante. Même deux serveurs bénéficient de ce point d’entrée partagé et du routage selon leur état.

Points clés

  • Les contrôles d’état déterminent le routage ; la réparation nécessite un groupe de mise à l’échelle ou un opérateur.
  • La répartition de charge partage la capacité existante et ne peut pas en créer davantage.
  • La couche 7 peut router selon l’hôte ou le chemin HTTP ; la couche 4 route les connexions.
  • Le drainage des connexions donne aux requêtes en cours le temps de se terminer.
  • Les serveurs sains restants ont toujours besoin d’une capacité suffisante pour supporter la charge.
3

Exécuter des applications dans des conteneurs

Les conteneurs regroupent une application et ses dépendances pour que le même ensemble puisse passer des tests à la production. Découvre ce qu’ils partagent avec leur hôte et ce que cela implique pour la vitesse, l’isolation et les données durables. Compare ensuite l’orchestration Kubernetes aux services qui masquent les machines hôtes, en t’appuyant sur la capacité des pods, les compétences de l’équipe et le trafic pendant les heures creuses pour comprendre les choix.

3.1 Empaqueter une application dans un conteneur

Un conteneur exécute une application et ses dépendances sous forme de processus isolé sur un hôte. Le regroupement de ses bibliothèques et de son environnement d’exécution permet de reproduire en production le logiciel testé.

Image, registre et copie en cours d’exécution

Une image est le modèle en lecture seule ; un registre stocke et distribue les images ; un conteneur est une copie en cours d’exécution. Amazon ECR, Azure Container Registry et Google Artifact Registry fournissent des registres. L’Open Container Initiative définit des formats d’image standard ; Docker a contribué à populariser leur utilisation.

Par exemple, une équipe empaquette son API de commandes Python sous le nom orders-api:1.4, la teste, l’envoie à un registre et démarre 3 conteneurs de production à partir de cette image. Les paramètres d’environnement et l’accès aux services externes doivent encore être configurés.

Partager un noyau au lieu de démarrer un système d’exploitation invité

Chaque machine virtuelle possède un système d’exploitation invité complet derrière un hyperviseur. Les conteneurs partagent le noyau de l’hôte, le cœur du système d’exploitation qui gère les ressources et les processus. Ils ont moins de logiciels à emporter et à démarrer : les images occupent souvent des dizaines ou des centaines de mégaoctets, et le démarrage prend quelques secondes ou moins. Les images de machines virtuelles occupent généralement des gigaoctets et leur démarrage prend des minutes. Un hôte peut donc exécuter davantage de conteneurs que de machines virtuelles complètes.

Le partage a aussi une incidence sur l’isolation. Une faille dans le noyau de l’hôte peut affecter plusieurs conteneurs, tandis que des noyaux invités distincts assurent une isolation plus forte aux machines virtuelles. Les conteneurs Linux ont besoin d’un noyau Linux ; les conteneurs Windows ont besoin de Windows. L’image doit aussi correspondre à l’architecture du processeur, comme x86 ou Arm. Les conteneurs s’exécutent souvent sur des machines virtuelles dans le cloud.

Remplacer les logiciels et conserver les données

Mets à jour un conteneur en créant une image corrigée et en remplaçant les anciennes copies. Un correctif appliqué à la main disparaît lors du remplacement et laisse les autres répliques inchangées.

Il en va de même pour les fichiers créés pendant l’exécution dans la couche accessible en écriture. Une facture qui y est générée doit être enregistrée sur un volume persistant ou dans un service de stockage avant le remplacement. Le registre d’images conserve les ensembles applicatifs, pas les documents créés par les conteneurs en cours d’exécution.

Séparer les services lorsque cela aide

Une application monolithique se déploie comme une seule unité. Les microservices divisent une application en services connectés par réseau, qui se déploient et se mettent à l’échelle séparément. Une boutique peut ajouter des conteneurs au service de paiement sans ajouter de copies du service de catalogue.

Un orchestrateur place les conteneurs sur les hôtes, redémarre les copies défaillantes, adapte leur nombre, déploie les versions et connecte les services. Kubernetes le fait, tout comme des services de conteneurs managés plus simples. Les conteneurs ne nécessitent pas Kubernetes.

Points clés

  • Une image est un modèle, un registre la stocke et un conteneur l’exécute.
  • Les conteneurs partagent le noyau d’un hôte ; les machines virtuelles ont leurs propres noyaux invités.
  • La portabilité d’une image nécessite des systèmes d’exploitation et des processeurs compatibles.
  • Remplace les conteneurs à partir de nouvelles images et conserve les données durables à l’extérieur.
  • Les microservices peuvent être déployés et mis à l’échelle séparément.
  • L’orchestration coordonne les conteneurs entre les hôtes.

3.2 Maintenir les charges de travail conteneurisées en fonctionnement avec Kubernetes

Kubernetes déploie et gère des conteneurs sur un groupe de machines appelé cluster. Il est open source, a été créé chez Google et est maintenu au sein de la Cloud Native Computing Foundation. La même plateforme peut fonctionner sur plusieurs clouds et dans des centres de données privés.

Comprendre les composants du cluster

Le plan de contrôle conserve la configuration, planifie les tâches et coordonne le cluster. Les nœuds de travail, généralement des machines virtuelles, fournissent la puissance de traitement et la mémoire consommées par les conteneurs.

Un pod est la plus petite unité planifiée par Kubernetes. Il contient un ou plusieurs conteneurs qui partagent une adresse réseau et restent ensemble sur un même nœud. Un pod n’est pas une machine virtuelle distincte. Plusieurs pods peuvent partager le même nœud de travail si leurs besoins en ressources le permettent.

Tu déclares un état souhaité : par exemple, 3 répliques de orders-api:1.4. Kubernetes cherche à maintenir 3 pods en fonctionnement. Lorsqu’un pod tombe en panne, il crée un remplaçant ; après la panne d’un nœud, des pods de remplacement peuvent s’exécuter sur les nœuds restants disposant de capacité. Un Service Kubernetes fournit un nom et une adresse stables pour accéder aux pods, même lorsque leurs adresses individuelles changent.

Mettre les pods et les machines à l’échelle séparément

Un autoscaler horizontal de pods (HPA) modifie le nombre de pods à partir de métriques comme la demande de CPU. Un autoscaler de cluster modifie la capacité en nœuds lorsque les pods ne peuvent pas être placés ou que des nœuds deviennent inutiles. Ajouter des pods sans espace pour les exécuter crée du travail en attente, pas davantage de capacité de traitement.

Supposons que chaque pod demande 0,5 vCPU et que chaque nœud dispose de 2 vCPU pour les pods. Ignore les autres limites de ressources dans cet exemple. Un nœud peut accueillir :

2÷0,5=4 pods

Si le HPA porte le nombre souhaité à 10 pods, deux nœuds n’en accueillent que 8. Le besoin est de :

10÷4=2,5 nœuds

Arrondis à 3 nœuds. Le troisième nœud fournit de la place pour les 2 derniers pods. Utilise la capacité disponible pour les pods, car le système d’exploitation du nœud et les composants Kubernetes ont aussi besoin de ressources. Dans une planification réelle, la mémoire et les règles de placement comptent également, en plus du CPU.

Répartir les responsabilités de gestion

Amazon Elastic Kubernetes Service (EKS), Azure Kubernetes Service (AKS) et Google Kubernetes Engine (GKE) exploitent des plans de contrôle managés. Le fournisseur maintient ce plan de contrôle, notamment sa disponibilité et ses mises à jour. Tu gères les images, les paramètres de l’application, les accès et les demandes de ressources des charges de travail. Dans de nombreux modes, tu gères aussi le choix et les mises à jour des nœuds de travail. Les frais de cluster peuvent être distincts de ceux des nœuds.

GKE Standard te laisse choisir les nœuds et facture leurs machines virtuelles. GKE Autopilot provisionne et gère les nœuds et facture généralement les ressources demandées par les pods. EKS peut exécuter les pods admissibles sur AWS Fargate pour que tu n’aies pas à gérer les machines virtuelles des nœuds. Ces modes réduisent le travail d’exploitation tout en limitant certains choix concernant les hôtes.

Déterminer si la complexité est utile

Kubernetes convient à de nombreux services déployés indépendamment et aux équipes qui ont besoin d’une plateforme commune à plusieurs fournisseurs. Ses outils et ses définitions de charges de travail améliorent la portabilité, même si les bases de données cloud associées, les systèmes d’identité et les réseaux peuvent encore nécessiter des modifications.

Pour une application web simple, une plateforme d’hébergement ou un service de conteneurs sans serveur peut demander moins de travail. Kubernetes managé ne corrige pas un bogue dans ton image et ne choisit pas la bonne quantité de mémoire à demander. Si une application manque régulièrement de mémoire, l’équipe doit examiner l’application et ses paramètres, même lorsque le plan de contrôle est entièrement managé.

Points clés

  • Le plan de contrôle coordonne ; les nœuds de travail exécutent les pods.
  • Un pod est planifié comme une unité et peut contenir plusieurs conteneurs.
  • L’état souhaité entraîne le remplacement des pods défaillants.
  • La mise à l’échelle des pods et celle des nœuds résolvent des problèmes de capacité différents.
  • Avec des plans de contrôle managés, l’équipe reste responsable de l’application.
  • La portabilité de Kubernetes doit être évaluée au regard de sa complexité d’exploitation.

3.3 Exécuter des conteneurs avec moins de gestion des serveurs

Les services de conteneurs sans serveur exécutent tes images sur des hôtes gérés par le fournisseur. Tu choisis toujours les ressources, maintiens l’image et configures l’application. La mise à l’échelle et la facturation dépendent du service.

Distinguer l’orchestration du calcul

Amazon ECS orchestre les conteneurs sous forme de tâches. Un service ECS maintient un nombre souhaité de tâches, éventuellement derrière un répartiteur de charge. Les tâches s’exécutent sur des hôtes EC2 que tu gères ou sur la capacité de calcul Fargate.

Fargate prend aussi en charge les pods EKS admissibles. Tu choisis les vCPU et la mémoire de la tâche ou du pod et tu paies pendant que ces ressources fonctionnent ; tu ne choisis, ne corriges et ne mets pas à l’échelle les hôtes EC2 sous-jacents. La mise à l’échelle automatique d’un service ECS utilise les politiques que tu configures. Fargate fournit la capacité de calcul ; il ne détermine pas le nombre de tâches souhaité pour l’application. ECS sur EC2 laisse davantage de contrôle sur l’hôte et la famille d’instances, mais demande plus de gestion.

Comparer les services Azure et Google

Azure Container Instances (ACI) démarre un conteneur ou un petit groupe sans cluster et facture à la seconde. Il convient aux tests et aux tâches simples de durée limitée, mais ne possède pas de mise à l’échelle automatique intégrée.

Azure Container Apps masque sa plateforme Kubernetes sous-jacente. Des règles configurées adaptent la capacité des applications conteneurisées selon le trafic HTTP ou les événements, jusqu’à zéro pour les charges de travail adaptées.

Google Cloud Run propose des services pour les requêtes entrantes et des tâches qui s’exécutent jusqu’à leur terme. Les services peuvent passer de zéro à plusieurs instances, puis réduire à nouveau leur nombre. La facturation du calcul fondée sur les requêtes couvre leur traitement ainsi que le démarrage et l’arrêt. Sans nombre minimal d’instances et sans instance en fonctionnement, le calcul inactif ne coûte rien ; les bases de données et les images stockées peuvent toutefois entraîner des frais. Cloud Run héberge aussi Cloud Run functions, qui part du code d’une fonction plutôt que d’une image d’application fournie par le client.

Échanger les économies pendant l’inactivité contre une attente au démarrage

Une API interne de réservation est très sollicitée de 08 h 00 à 18 h 00 les jours ouvrés : 10 heures sur 5 jours, soit 50 des 168 heures de la semaine. Des requêtes occasionnelles arrivent aussi la nuit. Cloud Run ou Container Apps peut exécuter plusieurs copies au pic et atteindre zéro entre les requêtes pendant les périodes calmes.

Une requête après une période d’inactivité peut attendre un démarrage à froid. Maintenir au moins une instance prête réduit l’attente dans la limite de sa capacité et ajoute un coût continu. Un pic dépassant cette capacité peut toujours entraîner le démarrage à froid d’instances supplémentaires.

Choisir le contrôle nécessaire sur l’hôte

Ces services limitent l’accès à l’hôte et imposent des limites de ressources et de durée. Tu ne peux pas installer d’agents sur l’hôte ni modifier son noyau. Des machines virtuelles ou des nœuds Kubernetes adaptés répondent à ces besoins. Pour des API conteneurisées standard, des services plus simples peuvent éviter le travail d’exploitation de Kubernetes ; ACI est une solution directe pour un groupe simple de conteneurs.

Points clés

  • Fargate fournit la capacité de calcul ; ECS ou EKS orchestre les charges de travail.
  • ACI ne possède pas de mise à l’échelle automatique intégrée.
  • Container Apps et Cloud Run peuvent réduire à zéro le nombre d’instances des services adaptés.
  • Maintenir un minimum d’instances prêtes réduit les attentes au démarrage après inactivité, moyennant un coût continu.
  • Avec les conteneurs sans serveur, tu restes responsable des images, des paramètres de l’application et des limites de ressources.
4

Développer des applications à l’aide de fonctions sans serveur et de plateformes d’hébergement d’applications

Les fonctions exécutent de petits morceaux de code à l’arrivée d’événements ; les plateformes d’hébergement exécutent des applications web complètes et fournissent des outils de déploiement et de gestion. Découvre comment les déclencheurs, l’état, les limites de durée et les démarrages à froid influencent les charges de travail des fonctions, et calcule une facture d’utilisation à titre d’exemple. Compare les principales plateformes d’hébergement, notamment l’infrastructure maintenue par le fournisseur et les paramètres et coûts qui restent à ta charge.

4.1 Exécuter des tâches courtes à l’arrivée d’événements

Une fonction sans serveur est un code qui s’exécute à l’arrivée d’un événement correspondant. Le fournisseur gère les serveurs et l’environnement d’exécution managé. AWS Lambda, Azure Functions et Google Cloud Run functions proposent ce modèle de fonction en tant que service (FaaS).

Relier un déclencheur à une invocation

Un déclencheur lance une exécution, appelée invocation. Les déclencheurs comprennent les requêtes HTTP, les fichiers chargés, les messages dans une file d’attente, les modifications de base de données et les minuteries. Le chargement d’une photo peut déclencher une fonction qui crée une miniature de 200 pixels et l’enregistre dans un stockage. Sans chargement, un déploiement à la demande peut n’exécuter aucun calcul de fonction.

Le fournisseur adapte le nombre d’exécutions à l’arrivée des événements, dans les limites de simultanéité et du service. De nombreuses fonctions simultanées peuvent ouvrir de nombreuses connexions à une base de données. La couche de fonctions peut encore avoir de la marge pour monter en charge alors que la base de données n’en a plus. Limite la simultanéité à ce que les systèmes connectés peuvent supporter.

Les fonctions sont sans état entre les invocations. Une invocation ultérieure peut utiliser un nouvel environnement et ne peut donc pas dépendre de la mémoire ou des fichiers temporaires d’un appel précédent. Stocke les compteurs, les sessions et les résultats durables dans une base de données, un cache ou un stockage en mode objet. Un environnement prêt peut être réutilisé, mais cette réutilisation ne garantit pas la persistance.

Calculer l’utilisation facturée à l’usage

La facturation standard à la demande de Lambda combine le nombre d’invocations et les Go-secondes (Go-s) : la mémoire allouée en Go multipliée par les secondes d’exécution. Pour illustrer le calcul, supposons que chacune des 3 000 000 d’invocations dure 0,2 seconde avec 0,5 Go de mémoire. Ignore les franchises gratuites et tous les autres services.

3 000 000×0,2=600 000 secondes 600 000×0,5=300 000 Go-s

Avec des prix supposés de 0,0000167 dollar américain par Go-s et de 0,20 dollar américain par million de requêtes, le calcul coûte 5,01 dollars américains et les requêtes 0,60 dollar américain, soit 5,61 dollars américains au total. Ces prix sont supposés pour apprendre le modèle. Cloud Run functions mesure aussi le CPU ; les offres Azure peuvent facturer les instances prêtes ou allouées.

Pour 100 000 000 d’invocations par ailleurs identiques, l’utilisation est de 10 000 000 Go-s : 167 dollars américains pour le calcul et 20 dollars américains pour les requêtes à ces tarifs supposés. Une machine virtuelle à un prix supposé de 0,04 dollar américain par heure coûte 29,20 dollars américains pour 730 heures, mais une comparaison équitable vérifie aussi si elle peut traiter le même travail et tient compte de son effort d’exploitation. Une demande irrégulière favorise les solutions qui évitent la capacité inactive ; une charge stable peut favoriser une capacité de calcul toujours active.

Vérifier les limites d’exécution et l’attente au démarrage

Le calcul par défaut de Lambda autorise au maximum 15 minutes par invocation et jusqu’à 10 240 Mo de mémoire. Une conversion de 40 minutes ne tient pas dans cette invocation. Une tâche conteneurisée, une machine virtuelle ou des étapes plus courtes peuvent convenir ; les règles de délai diffèrent pour les autres offres et modes de calcul.

Un démarrage à froid se produit lorsqu’un nouvel environnement d’exécution doit être préparé, après une période d’inactivité ou lors d’une augmentation horizontale. Les environnements prêts réutilisés démarrent plus vite. La simultanéité provisionnée de Lambda, les instances toujours prêtes d’Azure Premium ou Flex Consumption et les instances minimales de Cloud Run réduisent les attentes au démarrage moyennant un coût supplémentaire.

Le fournisseur maintient les serveurs et l’environnement d’exécution managé. Tu dois toujours corriger ton code et les bibliothèques incluses, protéger les secrets, configurer les permissions et sécuriser les données. Le sans serveur supprime l’administration des serveurs, mais tu restes responsable de l’application.

Points clés

  • Un déclencheur provoque une invocation de fonction.
  • Conserve l’état durable hors de la mémoire et des fichiers temporaires de la fonction.
  • Les Go-secondes multiplient la mémoire allouée par la durée d’exécution.
  • Les règles de facturation et de délai dépendent d’un service et d’une offre précis.
  • Les démarrages à froid peuvent survenir après une période d’inactivité et lors d’une augmentation horizontale.
  • La simultanéité doit convenir aux systèmes en aval comme au service de fonctions.
  • Tu restes responsable du code, des bibliothèques, des données et des accès.

4.2 Déployer une application web sur une plateforme d’hébergement

Une plateforme d’hébergement d’applications prend ton code ou ton image de conteneur et fournit l’infrastructure nécessaire à son exécution. C’est une plateforme en tant que service (PaaS) : la plateforme fournit le déploiement, la surveillance de l’état, l’exploitation des serveurs et la mise à l’échelle, tandis que tu construis l’application.

Comparer les principales plateformes

AWS Elastic Beanstalk crée des ressources AWS ordinaires pour ton application, généralement des instances EC2 dans un groupe Auto Scaling derrière un Elastic Load Balancer. Il prend en charge les déploiements et la surveillance de l’état. Beanstalk lui-même ne facture pas de frais de service supplémentaires ; tu paies les ressources qu’il crée. Ces ressources restent visibles dans ton compte et tu peux personnaliser leur configuration.

Azure App Service héberge des applications web, des API et des backends mobiles à partir de code ou de conteneurs. Un plan App Service définit la région, la taille et le nombre d’instances. Les applications de ce plan partagent ces instances. Les niveaux dédiés facturent le plan même lorsque les applications sont peu sollicitées. Les fonctionnalités comme la mise à l’échelle automatique et les emplacements de déploiement dépendent du niveau choisi.

Google App Engine possède des environnements standard et flexible. L’environnement standard utilise les environnements d’exécution pris en charge dans un bac à sable et peut passer à zéro avec une mise à l’échelle automatique adaptée. L’environnement flexible exécute des conteneurs sur des machines virtuelles Compute Engine, permet davantage de personnalisation et maintient au moins une instance en fonctionnement. Cloud Run est une autre solution pour héberger une application déjà empaquetée dans un conteneur.

PlateformeRapport à l’infrastructureRappel sur les coûts
Elastic BeanstalkCrée des ressources AWS visiblesPaiement de ces ressources
App ServiceLes applications partagent un plan d’hébergementLes plans dédiés sont facturés pendant l’inactivité
App EngineEnvironnement standard ou flexibleL’environnement flexible maintient une instance minimale
Mettre une nouvelle version en service en toute sécurité

Une équipe de deux personnes qui gère une boutique utilise un niveau App Service avec des emplacements de déploiement. Elle exécute 2 instances et déploie une nouvelle version dans un emplacement de préproduction, un espace distinct pour tester la version avant que les clients l’utilisent. Après les tests, elle échange la préproduction et la production. L’ancienne version reste disponible dans l’autre emplacement pour un éventuel retour en arrière.

Pendant une vente, la règle de mise à l’échelle automatique configurée porte le plan à 5 instances après que l’utilisation moyenne du CPU est restée supérieure à 70 %, puis le ramène à 2 lorsque la demande baisse. La plateforme effectue la mise à l’échelle, mais l’équipe choisit toujours le plan, les règles et les limites. Elle n’installe jamais le système d’exploitation de l’hôte ni le serveur web.

Conserver les bonnes responsabilités

Sur chaque plateforme, tu maintiens le code, les bibliothèques incluses, les paramètres, les secrets, les données et les accès. App Service et App Engine maintiennent le système d’exploitation de leur hôte et l’environnement d’exécution managé. Beanstalk permet davantage de personnalisation d’EC2 ; AWS publie des mises à jour de plateforme que tu appliques ou pour lesquelles tu actives les mises à jour managées. Les logiciels supplémentaires que tu installes nécessitent aussi une maintenance.

Une plateforme diffère du SaaS. Avec le PaaS, tu déploies l’application que tu construis ; avec le SaaS, tu utilises l’application achevée de quelqu’un d’autre, comme une suite de messagerie. Les paramètres propres à la plateforme et les intégrations avec ses services peuvent aussi rendre plus difficile un changement ultérieur de fournisseur.

Répondre aux besoins d’hébergement plus simples

Amazon Lightsail regroupe un serveur privé virtuel, du stockage et du transfert de données dans un forfait mensuel prévisible. Il convient aux petits sites web, mais implique toujours les responsabilités liées à une machine virtuelle. Un site statique est composé de fichiers comme du HTML, du CSS, du JavaScript et des images. AWS Amplify Hosting, Azure Static Web Apps et Firebase Hosting peuvent diffuser ces fichiers dans le monde entier sans serveur web à maintenir. Une application qui nécessite le contrôle complet du système d’exploitation de l’hôte doit être placée sur des machines virtuelles.

Points clés

  • Le PaaS héberge l’application que tu construis ; le SaaS fournit une application achevée.
  • Beanstalk crée des ressources AWS facturables et nécessite un choix concernant les mises à jour de plateforme.
  • Les applications App Service partagent un plan ; la capacité dédiée coûte de l’argent même pendant l’inactivité.
  • Les environnements standard et flexible d’App Engine ont des comportements différents concernant la capacité minimale.
  • Les emplacements de déploiement permettent de tester une version avant de la présenter aux utilisateurs.
5

Choisir la solution de calcul adaptée à une charge de travail

La solution de calcul utile est celle qui convient au travail et à l’équipe qui l’exécute. Compare le contrôle, la maintenance, le démarrage, la durée, la facturation et la portabilité des machines virtuelles, des conteneurs, des plateformes et des fonctions. Transforme ensuite les exigences de l’entreprise en une recommandation justifiée, en vérifiant les contraintes impératives avant le prix et en observant comment une migration peut passer du réhébergement à la modernisation.

5.1 Comparer le contrôle, l’effort et le coût

Compare les modèles de calcul pour une même charge de travail. Examine le contrôle, l’effort d’exploitation, le démarrage, la facturation, les limites et la portabilité.

Qui maintient quoi ?
ModèleLe fournisseur maintientLe client maintient
Machines virtuellesMatériel et hyperviseurSystème d’exploitation invité, environnement d’exécution et application
Kubernetes managéPlan de contrôleImages, charges de travail et souvent nœuds
Conteneurs sans serveurHôtes et système d’exploitation de l’hôteImage, paramètres de l’application et limites
Plateformes d’hébergementPlateforme de déploiement et grande partie de l’hôteApplication, configuration et choix du plan
FonctionsServeurs et environnement d’exécution managéCode, dépendances et permissions

Les données et les accès restent dans tous les cas sous la responsabilité du client. Elastic Beanstalk nécessite aussi de choisir comment appliquer les mises à jour de plateforme.

Comparer le trafic et la capacité utilisable

Une machine virtuelle a généralement besoin d’au moins une minute pour démarrer et réussir les contrôles ; un conteneur démarre souvent en quelques secondes ; une fonction dont l’environnement est prêt peut commencer à travailler en quelques millisecondes. Un nouvel environnement peut ajouter une attente liée au démarrage à froid. Une capacité maintenue prête réduit cette attente moyennant un coût continu.

Un annuaire peu sollicité pendant la nuit peut bénéficier de la mise à l’échelle à zéro ; une demande stable peut favoriser une capacité de calcul allouée. Compare un débit, une mémoire et une simultanéité équivalents avant les totaux mensuels : une machine virtuelle peu chère peut ne pas traiter le même travail que de nombreuses invocations de fonctions simultanées. Tiens aussi compte de l’effort d’exploitation.

Les machines virtuelles et les plans d’hébergement dédiés facturent le temps d’allocation, qu’ils soient sollicités ou inactifs. La facturation standard à la demande de Lambda combine les requêtes et les Go-secondes ; d’autres offres de fonctions utilisent des unités de mesure différentes. Zéro instance supprime les frais de calcul pendant l’inactivité uniquement lorsqu’aucun minimum payant ne subsiste. Le stockage et les bases de données peuvent rester facturés.

Vérifier les limites et le passage entre plateformes

Les processus de longue durée conviennent aux machines virtuelles ou aux conteneurs adaptés. Une invocation avec le calcul par défaut de Lambda est limitée à 15 minutes ; une tâche ininterrompue de deux heures nécessite donc une autre solution d’exécution compatible. Les fonctions ne peuvent pas compter sur la persistance de l’état local entre les appels ; les conteneurs remplaçables et les machines virtuelles des groupes de mise à l’échelle ont aussi besoin de données durables externes.

Le contrôle complet du système d’exploitation invité, les modifications du noyau et les logiciels spécialisés sous licence favorisent les machines virtuelles. De nombreux services déployés indépendamment peuvent justifier Kubernetes. Les applications web standard conviennent souvent aux plateformes d’hébergement ; les tâches courtes déclenchées par des événements conviennent aux fonctions.

Les images de conteneurs passent d’un hôte compatible à l’autre, et Kubernetes offre des outils de déploiement communs aux différents clouds. Les bases de données, les systèmes d’identité et les réseaux peuvent encore nécessiter des modifications. La migration de machines virtuelles dépend des formats et outils des fournisseurs ; les fonctions et les plateformes sont plus étroitement liées aux paramètres et déclencheurs du fournisseur. Différents composants peuvent utiliser différents modèles.

Points clés

  • Davantage de contrôle sur l’hôte implique davantage de responsabilités pour son exploitation.
  • Compare les coûts pour une capacité de traitement et un trafic équivalents.
  • Les démarrages à froid mettent en balance la latence et le coût d’une capacité maintenue prête.
  • La portabilité comprend les dépendances au-delà de l’image ou du fichier de déploiement.
  • Différents composants peuvent utiliser différents modèles de calcul.

5.2 Choisir une solution de calcul à partir d’un besoin de l’entreprise

Vérifie d’abord les exigences qui pourraient exclure une solution. Compare ensuite le trafic, le coût et les compétences de l’équipe.

Trouver la contrainte décisive
  1. Vérifie l’accès au système d’exploitation invité, les logiciels particuliers, le matériel et les licences.
  2. Pour un traitement court déclenché par un événement, vérifie la durée, l’état et la simultanéité des fonctions.
  3. Pour les applications conteneurisées, compare le contrôle de Kubernetes à des services managés plus simples.
  4. Pour les applications web standard déployées sous forme de code, envisage une plateforme d’hébergement.
  5. Vérifie l’attente au démarrage, les profils de trafic, les limites de ressources et le coût total d’exploitation.
Associer les solutions aux cas d’entreprise

Un éditeur ne prend en charge une application de comptabilité que sur Windows Server, avec une licence fondée sur les cœurs. Les machines virtuelles conservent cet environnement ; utilise un hôte dédié si la licence exige des cœurs physiques. Des copies sur plusieurs zones nécessitent une conception compatible de l’application et des données. Le déplacement avec très peu de modifications est un réhébergement, ou lift and shift, et conserve la maintenance du système invité.

Les chargements de photos passent de quelques-uns la nuit à des milliers par minute. Les tâches courtes et indépendantes de création de miniatures conviennent aux fonctions déclenchées par les chargements. Leur nombre s’adapte aux arrivées ; vérifie les démarrages à froid, les limites de durée et la capacité des services en aval.

Un commerce possède 30 microservices, 6 équipes et exige une plateforme sur deux clouds. Kubernetes managé fournit des outils d’orchestration communs. Une jeune entreprise disposant de 3 services et sans expérience de Kubernetes peut utiliser Cloud Run, Container Apps ou ECS avec Fargate : elle reste responsable des images et des applications sans gérer les hôtes.

L’agence d’un musée construit un site de billetterie mais ne possède pas de personnel d’exploitation. Une plateforme d’hébergement fournit les outils de déploiement et la mise à l’échelle pour les jours d’ouverture. App Service et App Engine maintiennent les hôtes ; Beanstalk nécessite un choix pour les mises à jour de plateforme, comme les mises à jour managées.

Un rapport nocturne de deux heures convient à une tâche conteneurisée ou à une machine virtuelle dont la limite d’exécution est adaptée, mais pas à une seule invocation avec le calcul par défaut de Lambda. La capacité Spot peut réduire le coût si la tâche enregistre sa progression et reprend après une interruption.

Un entraînement sur GPU de plusieurs jours nécessite des machines virtuelles accélérées ou des nœuds GPU Kubernetes adaptés. Des points de contrôle persistants rendent Spot utilisable en limitant la progression perdue.

Expliquer un choix par étapes

Une entreprise peut d’abord réhéberger ses applications pour quitter rapidement son centre de données, puis moderniser certains composants avec des conteneurs, des plateformes d’hébergement ou des fonctions. Le réhébergement seul conserve l’ancien modèle d’exploitation.

Par exemple : « Utilise Cloud Run parce que l’API est déjà conteneurisée, que le trafic s’arrête la nuit et que l’équipe n’a pas d’administrateur de serveurs ; prévois un démarrage à froid après une période d’inactivité. »

Points clés

  • Vérifie d’abord les exigences impératives de logiciel, de matériel et de durée.
  • Adapte la complexité de la plateforme de conteneurs aux compétences de l’équipe et aux besoins de portabilité.
  • Utilise Spot uniquement lorsque l’interruption et la reprise sont acceptables.
  • Le réhébergement déplace une application avec très peu de modifications ; la modernisation change son mode d’exécution.
  • Justifie le choix par un besoin de la charge de travail et son principal compromis.

Solutions de calcul dans le cloud : exemples

5 Leçons Interactives

1

Choisir une machine virtuelle et suivre son cycle de vie

13 étapes
Lancer un serveur, distinguer l’image de la capacité et choisir une taille à partir des mesures de la charge de travail.
  1. 1
    IntroductionUn ordinateur à configurer

    Une machine virtuelle dans le cloud te donne un système d’exploitation invité à configurer. Tu choisis ses logiciels, sa capacité, son stockage et son réseau, puis tu maintiens le système invité. Suis le lancement d’un serveur, vérifie quels frais subsistent après son arrêt et utilise les besoins en ressources d’une application de production de rapports pour choisir une taille.

  2. 2
    ExplicationChoisir les logiciels et la capacité

    Une image fournit le système d’exploitation et les logiciels préinstallés. Une taille fournit les vCPU et la mémoire.

    AWS les appelle AMI et type d’instance ; Azure utilise une image et une taille de machine virtuelle ; Google utilise une image et un type de machine. Choisir Linux ne détermine pas la quantité de RAM.

  3. 3
    ExempleConnecter la machine virtuelle

    Le serveur web de Francfort utilise un disque de démarrage persistant de 30 Gio, un sous-réseau et des règles de trafic. HTTPS sur le port 443 est ouvert aux internautes ; SSH sur le port 22 est autorisé uniquement depuis le réseau du bureau.

    Ce sont des choix distincts : le disque contient les données, l’interface réseau connecte la machine virtuelle et les règles de pare-feu contrôlent le trafic. Une adresse IP publique est facultative lorsque l’application est accessible par un autre point d’entrée.

  4. 4
    Point cléSuivre un arrêt

    Un administrateur Azure arrête le système d’exploitation invité. La console affiche « Stopped », si bien que la machine virtuelle peut encore disposer d’une capacité de calcul allouée et continuer à générer des frais de calcul.

    La désallocation fait passer l’état à « Stopped (deallocated) ». Elle libère l’allocation de calcul, mais un disque conservé ou une adresse IP publique réservée peut rester facturé. La suppression d’une ressource ne supprime pas toutes les ressources associées.

  5. 5
    DéfiVérifier ce qui est conservé

    Une équipe stocke ses seuls relevés de ventes sur le disque local temporaire d’une machine virtuelle, puis désalloue la machine. Quel stockage aurait-elle dû choisir ?

    ---reveal---

    Les relevés doivent être placés sur des disques persistants ou dans un service de stockage. Un disque local temporaire peut perdre ses données lorsque la machine virtuelle est arrêtée, déplacée ou désallouée. Il convient aux travaux temporaires dont les données peuvent être perdues, pas à l’unique copie de documents commerciaux à conserver.

  6. 6
    ConseilDélimiter clairement l’application des correctifs

    Le fournisseur maintient l’hyperviseur et l’hôte physique. Le client applique les correctifs au système d’exploitation invité, maintient l’application et contrôle les accès de connexion.

    Un hôte dédié réserve un serveur physique, par exemple pour une licence fondée sur les cœurs. Il modifie l’allocation du matériel, pas la responsabilité de l’application.

  7. 7
    ExempleCommencer par la ressource limitée

    Une application de production de rapports a besoin de 2 vCPU et de 6 Gio au pic d’activité. Compare ensemble le CPU et la mémoire avant de choisir une famille.

    Une machine virtuelle optimisée pour le calcul offre davantage de puissance de traitement par unité de mémoire ; une machine optimisée pour la mémoire offre davantage de RAM par vCPU. Les types polyvalents équilibrent les deux. Les types avec GPU conviennent aux travaux accélérés comme l’entraînement de modèles, tandis que les types optimisés pour le stockage visent des débits élevés de lecture et d’écriture sur disque local.

  8. 8
    ExempleÉcarter les tailles inadaptées

    Les trois possibilités possèdent chacune 2 vCPU. La taille c7g.large possède 4 Gio, m7g.large possède 8 Gio et r7g.large possède 16 Gio.

    La solution de 4 Gio ne peut pas satisfaire le besoin de 6 Gio de l’application. Celle de 8 Gio convient avec 2 Gio de marge. Celle de 16 Gio laisse 10 Gio au-delà de ce besoin. La taille polyvalente est un point de départ raisonnable pour mesurer l’utilisation réelle.

  9. 9
    ConseilLire un nom de taille

    Dans le nom Azure Standard_D4s_v5, D désigne la famille, 4 le nombre de vCPU, s la prise en charge des SSD premium et v5 la version.

    Le nom AWS m7g.large utilise une taille nommée ; le nom Google e2-standard-4 se termine par le nombre de vCPU. Lis toutes les caractéristiques avant de comparer les ressources.

  10. 10
    LienExaminer une solution fondée sur des crédits

    Une machine virtuelle de développement peu sollicitée présente de courts pics au-dessus de son niveau de base de CPU : un type à performances extensibles peut donc convenir. Une simulation qui utilise intensément le CPU pendant des heures est différente.

    AWS T en mode standard et Azure B dépensent les crédits CPU accumulés et reviennent au niveau de base lorsqu’ils sont épuisés. AWS T en mode illimité peut continuer à dépasser ce niveau avec des frais pour le surplus. Choisis en tenant compte de la charge soutenue, pas seulement de sa moyenne pendant les journées calmes.

  11. 11
    DéfiChoisir une famille à partir des mesures

    Un service a besoin de 4 vCPU et de 25 Gio de RAM. Une taille polyvalente possède 4 vCPU et 16 Gio ; une taille optimisée pour la mémoire possède 4 vCPU et 32 Gio. Laquelle convient et pourquoi ?

    ---reveal---

    La taille optimisée pour la mémoire satisfait les deux exigences. Il manque 9 Gio à la taille polyvalente, même si son nombre de vCPU est suffisant. Après le déploiement, mesure la demande réelle avant de changer à nouveau la taille.

  12. 12
    DéfiAssocier l’adéquation au cycle de vie

    Une tâche de rendu nocturne peut enregistrer sa progression et reprendre après une interruption. La machine virtuelle choisie fournit suffisamment de CPU et de mémoire. Spot serait-il raisonnable et que faut-il conserver en cas de perte de la machine virtuelle ?

    ---reveal---

    Spot est raisonnable parce que la tâche peut supporter la reprise de capacité et redémarrer. Ses points de contrôle et ses résultats achevés doivent être stockés de façon persistante. Un prix bas ne peut pas compenser la perte de toute la progression chaque fois que la capacité inutilisée est reprise.

  13. 13
    RécapitulatifUtiliser la bonne ressource pour chaque fonction

    Les images fournissent les logiciels ; les tailles fournissent la capacité. Le stockage persistant conserve les fichiers durables, tandis que les ressources conservées peuvent rester facturées après l’arrêt du calcul.

    Choisis une famille selon la ressource limitante et mesure la demande réelle. Les types à performances extensibles conviennent aux pics courts ; Spot nécessite de pouvoir supporter les interruptions. La maintenance du système invité reste à ta charge.

2

Maintenir un service en fonctionnement lorsque la charge change

16 étapes
Étudier la mise à l’échelle, la capacité des zones, le suivi de cible et le routage après la panne d’un serveur.

Enregistre cette unité pour suivre chaque Leçon Interactive pas à pas.

  1. 1
    IntroductionDeux raisons d’avoir besoin de plus de capacité
  2. 2
    ExplicationModifier la taille ou le nombre
  3. 3
    Point cléRetirer les paniers de la mémoire locale
  4. 4
    ExempleCompter les zones restantes
  5. 5
    DéfiVérifier la disponibilité et l’élasticité
  6. 6
    ExplicationDéfinir le plancher, l’objectif et le plafond
  7. 7
    ExempleDéterminer la quantité de travail
  8. 8
    ExempleDiviser par la cible
  9. 9
    ConseilPrévoir le temps de mise en disponibilité
  10. 10
    DéfiEstimer la capacité et appliquer un plafond
  11. 11
    ExplicationPartager un point d’entrée unique
  12. 12
    ExemplePerdre une cible
  13. 13
    DéfiRelier la détection à la réparation
  14. 14
    ConseilPlanifier une suppression sans risque
  15. 15
    DéfiCombiner zones, routage et capacité
  16. 16
    RécapitulatifDistinguer les fonctions
3

Choisir comment exécuter une API conteneurisée

14 étapes
Suivre une image jusqu’en production, dimensionner un cluster Kubernetes et comparer les services qui masquent les hôtes.

Enregistre cette unité pour suivre chaque Leçon Interactive pas à pas.

  1. 1
    IntroductionSuivre l’ensemble applicatif jusqu’en production
  2. 2
    ExempleImage, registre, conteneur
  3. 3
    ExplicationPartager le noyau de l’hôte
  4. 4
    DéfiRemplacer l’ensemble applicatif
  5. 5
    ExplicationDéclarer ce qui doit s’exécuter
  6. 6
    ExempleCalculer l’espace par nœud
  7. 7
    ExempleArrondir au nombre entier de nœuds supérieur
  8. 8
    DéfiVérifier les deux niveaux de mise à l’échelle
  9. 9
    Point cléRester responsable de l’application
  10. 10
    ExplicationUtiliser un service d’hébergement plus simple
  11. 11
    ExemplePasser à zéro pendant les périodes calmes
  12. 12
    DéfiDécider de maintenir un minimum d’instances prêtes
  13. 13
    DéfiAdapter le contrôle à l’équipe
  14. 14
    RécapitulatifChoisir la couche nécessaire
4

Estimer l’utilisation d’une fonction et déployer une application web

13 étapes
Suivre une fonction déclenchée par un événement, calculer les frais d’utilisation et comparer les plateformes d’applications managées.

Enregistre cette unité pour suivre chaque Leçon Interactive pas à pas.

  1. 1
    IntroductionDeux façons de réduire le travail lié aux serveurs
  2. 2
    ExemplePartir d’un événement
  3. 3
    ExplicationConserver les résultats durables ailleurs
  4. 4
    ExempleCompter les secondes d’exécution
  5. 5
    ExempleMultiplier la durée d’exécution par la mémoire
  6. 6
    DéfiVérifier le raisonnement sur la mémoire et le temps
  7. 7
    ConseilTenir compte de la durée et du démarrage
  8. 8
    ExplicationDéployer l’application que tu construis
  9. 9
    LienComprendre les plateformes à capacité allouée
  10. 10
    ExempleTester avant la mise en service
  11. 11
    DéfiChoisir la responsabilité liée à la plateforme
  12. 12
    DéfiComparer la facturation lorsque le trafic est faible
  13. 13
    RécapitulatifVérifier l’exécution et l’offre
5

Transformer les besoins d’une charge de travail en recommandation

10 étapes
Comparer les exigences, l’effort d’exploitation et les compromis à travers des décisions concrètes d’entreprise.

Enregistre cette unité pour suivre chaque Leçon Interactive pas à pas.

  1. 1
    IntroductionRendre le choix explicable
  2. 2
    ExplicationComparer ce que l’équipe conserve à sa charge
  3. 3
    Point cléComparer un travail équivalent
  4. 4
    DéfiVérifier le sens de la portabilité
  5. 5
    ExemplePartir d’une exigence impérative
  6. 6
    LienUtiliser les ensembles applicatifs et les compétences existants
  7. 7
    ExplicationChoisir où exécuter un travail long
  8. 8
    DéfiRecommander une solution et nommer le compromis
  9. 9
    DéfiChoisir la prochaine étape de migration
  10. 10
    RécapitulatifRelier le besoin au choix

Solutions de calcul dans le cloud : QCM

40 Questions Pratiques en 4 séries

Série 1 : Relier capacité, état et responsabilité10 Questions Pratiques

Question 1 sur 10

Une équipe migre son serveur vers une machine virtuelle cloud standard. Qui est responsable de l’application des correctifs de sécurité à son système d’exploitation invité ?
  1. Le fournisseur du service d’hyperviseur.
  2. L’équipe du centre de données du fournisseur.
  3. L’éditeur de l’image de machine virtuelle seul.
  4. Le client qui exploite la machine virtuelle.
Afficher la réponseMasquer la réponse
Réponse : D
Le client applique les correctifs au système d’exploitation invité d’une machine virtuelle ; le fournisseur maintient l’hôte physique et l’hyperviseur. Une image de lancement mise à jour ne maintient pas ensuite tous les systèmes invités en fonctionnement à jour.

Question 2 sur 10

Une simulation utilise en permanence la majeure partie de son CPU. Une machine virtuelle à performances extensibles moins chère, en mode standard à crédits, a un niveau de base faible. Pourquoi cette machine pourrait-elle ralentir pendant la simulation ?
  1. Ses crédits CPU peuvent s’épuiser et la ramener au niveau de base.
  2. Son allocation Spot doit prendre fin après chaque pic de CPU.
  3. Son solde de crédits réduit la mémoire installée.
  4. Son hyperviseur transforme la demande de CPU en trafic de stockage.
Afficher la réponseMasquer la réponse
Réponse : A
Les pics en mode standard dépensent des crédits CPU et reviennent au niveau de base lorsque ces crédits sont épuisés. La reprise de capacité Spot est une règle distincte ; elle ne résulte pas de l’épuisement des crédits CPU.

Question 3 sur 10

Une application a besoin de la capacité de six machines virtuelles identiques après la perte de n’importe laquelle des trois zones. Les machines sont réparties également et les machines de remplacement ne peuvent pas démarrer pendant la panne. Quel est le plus petit déploiement adapté ?
  1. 2 machines par zone, 6 au total.
  2. 4 machines par zone, 12 au total.
  3. 3 machines par zone, 9 au total.
  4. 6 machines par zone, 18 au total.
Afficher la réponseMasquer la réponse
Réponse : C
Après la panne d’une zone, deux zones doivent encore fournir six machines virtuelles ; chacune en a donc besoin de trois. Neuf machines au total constituent le plus petit déploiement également réparti qui satisfait cette condition. Six machines au total répondent à la demande normale, mais n’en laissent que quatre après la perte d’une zone ; attendre une capacité de remplacement est exclu ici.

Question 4 sur 10

Un groupe de cinq machines virtuelles identiques présente une utilisation moyenne du CPU de 72 %. Le travail reste constant et se répartit également. Sans tenir compte du délai de la politique, quel nombre total permet d’atteindre une cible d’au maximum 45 % de CPU ?
  1. 7 machines virtuelles.
  2. 8 machines virtuelles.
  3. 9 machines virtuelles.
  4. 6 machines virtuelles.
Afficher la réponseMasquer la réponse
Réponse : B
Le travail total est de 5 × 72 = 360 unités de pourcentage par instance ; la division par 45 donne huit machines virtuelles. Sept donneraient une moyenne d’environ 51,4 %, encore supérieure à la cible. Cette estimation simplifiée suppose un travail constant et une répartition égale ; en pratique, la mise à l’échelle automatique attend aussi les mesures et la mise en disponibilité des instances.

Question 5 sur 10

Une image de conteneur Linux créée uniquement pour Arm est envoyée à un hôte exclusivement x86 sans émulation. Quel problème de compatibilité l’équipe doit-elle résoudre ?
  1. Le registre stocke une image immuable.
  2. Le conteneur n’a pas de noyau invité distinct.
  3. L’architecture du processeur ne correspond pas.
  4. L’application est empaquetée avec des bibliothèques.
Afficher la réponseMasquer la réponse
Réponse : C
L’image conçue uniquement pour Arm nécessite un environnement de processeur compatible. La seule compatibilité avec Linux ne suffit pas, et le regroupement des bibliothèques ne convertit pas leurs instructions de processeur en instructions x86.

Question 6 sur 10

Chaque nœud dispose de 3 vCPU et de 5 Gio pour les pods. Chaque pod demande 0,75 vCPU et 2 Gio. Six répliques doivent fonctionner, sans autre restriction de placement. Combien de nœuds faut-il ?
  1. 3 nœuds.
  2. 2 nœuds.
  3. 4 nœuds.
  4. 6 nœuds.
Afficher la réponseMasquer la réponse
Réponse : A
Le CPU permettrait quatre pods par nœud, mais les 5 Gio de mémoire disponibles ne peuvent accueillir que deux pods de 2 Gio. Six répliques nécessitent donc trois nœuds. Utiliser uniquement le résultat fondé sur le CPU donne deux nœuds et laisse des pods impossibles à planifier, car la mémoire, et non le CPU, est la limite déterminante.

Question 7 sur 10

Une fonction s’exécute 2 400 000 fois, pendant 0,25 seconde à chaque fois, avec 0,5 Go alloué. Quelle est son utilisation totale de mémoire-temps ?
  1. 600 000 Go-s.
  2. 300 000 Go-s.
  3. 1 200 000 Go-s.
  4. 150 000 Go-s.
Afficher la réponseMasquer la réponse
Réponse : B
Multiplie le nombre d’invocations par la durée pour obtenir 600 000 secondes, puis par 0,5 Go pour obtenir 300 000 Go-s. La valeur tentante de 600 000 représente le nombre total de secondes d’exécution avant prise en compte de la mémoire. Les Go-secondes mesurent la mémoire allouée dans le temps, pas le nombre de requêtes ni la mémoire seule.

Question 8 sur 10

Deux applications peu sollicitées partagent un plan dédié Azure App Service avec deux instances allouées. Pourquoi la facture de calcul peut-elle continuer pendant la nuit sans aucune requête ?
  1. Chaque requête réserve un mois de calcul.
  2. L’emplacement de préproduction exécute les applications comme des machines virtuelles.
  3. Les heures d’inactivité suspendent la facturation de la mémoire du plan.
  4. Le plan facture les instances allouées.
Afficher la réponseMasquer la réponse
Réponse : D
Un plan App Service dédié facture la capacité des instances allouées, y compris pendant les heures calmes. Les applications qui partagent le plan partagent cette capacité, sans garantie de facturation par requête. Le passage à zéro de certains services sans serveur ne doit pas être attribué à tous les plans d’hébergement.

Question 9 sur 10

Une équipe migre une API de machines virtuelles vers des conteneurs sans serveur. Quelle responsabilité de maintenance passe le plus directement au fournisseur ?
  1. Corriger les bibliothèques vulnérables dans l’image de l’application.
  2. Choisir les utilisateurs autorisés à lire les données de l’application.
  3. Appliquer les correctifs au système d’exploitation de l’hôte sous-jacent.
  4. Corriger les erreurs dans la logique métier de l’API.
Afficher la réponseMasquer la réponse
Réponse : C
Le fournisseur applique les correctifs aux hôtes des conteneurs sans serveur. Les bibliothèques dans l’image de l’application restent sous la responsabilité du client, ainsi que le code et les décisions relatives à l’accès aux données.

Question 10 sur 10

Une équipe doit exécuter 24 services déployés indépendamment sur deux clouds avec les mêmes outils d’orchestration. Elle connaît Kubernetes et accepte le travail de gestion de la plateforme. Quel choix convient le mieux et pourquoi ?
  1. Des plateformes de conteneurs indépendantes avec des outils propres à chaque cloud.
  2. Une plateforme d’hébergement de code avec des paramètres distincts par fournisseur.
  3. Des déploiements sur machines virtuelles avec des scripts adaptés à chaque fournisseur.
  4. Kubernetes managé avec une plateforme d’orchestration commune.
Afficher la réponseMasquer la réponse
Réponse : D
Kubernetes managé donne à l’équipe une plateforme d’orchestration commune aux différents clouds et convient à de nombreux services déployés indépendamment. Ses compétences existantes rendent le travail d’exploitation envisageable. Les fonctions des fournisseurs lieraient les déclencheurs et les paramètres à chaque cloud au lieu de répondre à l’exigence d’orchestration indiquée.
Série 2 : Choisir et exploiter des solutions de calcul cloud10 Questions Pratiques

Enregistre cette unité pour voir chaque réponse et t'entraîner sur chaque série.

Question 1 sur 10

Une machine virtuelle Azure est arrêtée depuis Windows et affiche « Stopped ». Quelle action met fin à son allocation de calcul ?
  1. Supprimer son groupe de sécurité réseau.
  2. Supprimer le compte de connexion invité.
  3. Désallouer la machine virtuelle dans Azure.
  4. Détacher son disque de données persistant.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 2 sur 10

Un cache a besoin de 4 vCPU et de 28 Gio de mémoire. Les tailles disponibles sont polyvalente (4 vCPU, 16 Gio), optimisée pour le calcul (8 vCPU, 16 Gio), optimisée pour la mémoire (4 vCPU, 32 Gio) et accélérée (4 vCPU, 16 Gio et un GPU). Laquelle répond aux deux besoins indiqués ?
  1. La taille optimisée pour le calcul.
  2. La taille optimisée pour la mémoire.
  3. La taille polyvalente.
  4. La taille accélérée avec GPU.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 3 sur 10

Une application web passe de deux machines virtuelles de même taille à cinq. De quel type de mise à l’échelle s’agit-il ?
  1. Une augmentation horizontale.
  2. Une augmentation verticale.
  3. Une réduction horizontale.
  4. Une réduction verticale.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 4 sur 10

Un groupe a un minimum de 2, une capacité souhaitée de 5 et un maximum de 9. Il possède cinq machines virtuelles saines et aucune politique ne modifie la capacité souhaitée. Combien de machines virtuelles cherche-t-il à maintenir ?
  1. 2 machines virtuelles.
  2. 9 machines virtuelles.
  3. 7 machines virtuelles.
  4. 5 machines virtuelles.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 5 sur 10

Un site web doit envoyer les requêtes destinées à /orders/ vers un ensemble de serveurs et celles destinées à /help/ vers un autre. De quelle fonctionnalité du répartiteur de charge a-t-il besoin ?
  1. Du routage de couche 4 selon le port.
  2. Du routage de couche 7 selon le chemin HTTP.
  3. Du hachage des connexions en couche 4.
  4. De l’affinité de session en couche 7.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 6 sur 10

Une équipe souhaite que la production exécute les mêmes versions de l’application et des bibliothèques que celles qui ont réussi les tests. Quel élément doit-elle déployer ?
  1. Un conteneur actif corrigé.
  2. Les paramètres d’accès au registre.
  3. L’image de conteneur testée.
  4. Un disque système hôte plus grand.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 7 sur 10

Une machine virtuelle fonctionne, mais son application web est défaillante. Le répartiteur de charge l’exclut, mais le groupe de mise à l’échelle ne la répare pas. Quelle configuration l’équipe doit-elle vérifier ?
  1. Les contrôles d’état de l’application et les réparations automatiques.
  2. La politique de conservation du registre d’images.
  3. Le nombre d’emplacements de déploiement.
  4. Le nom DNS utilisé par les clients.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 8 sur 10

Une équipe utilise ECS et souhaite ne plus choisir les hôtes de ses conteneurs ni leur appliquer de correctifs. Quelle solution de calcul répond à cet objectif ?
  1. Exécuter les tâches ECS sur des hôtes EC2.
  2. Stocker les images ECS dans ECR.
  3. Augmenter le nombre de tâches ECS.
  4. Exécuter les tâches ECS sur Fargate.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 9 sur 10

Une fonction conserve un total cumulatif uniquement en mémoire. Plus tard, un nouvel environnement d’exécution indique zéro. Où faut-il conserver ce total durable ?
  1. Dans le répertoire temporaire de la fonction.
  2. Dans une base de données partagée ou un service de stockage.
  3. Dans une copie plus grande de la même mémoire.
  4. Dans les variables locales de l’invocation suivante.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 10 sur 10

Un distributeur doit migrer en un mois, sans modification, une application Linux prise en charge par son éditeur. Celui-ci exige des modifications du noyau invité. Les requêtes sont stables et l’équipe peut appliquer les correctifs Linux. Quel est le meilleur premier choix et son compromis ?
  1. Des machines virtuelles cloud avec logiciels invités maintenus par le client.
  2. Kubernetes managé avec des images de conteneurs Linux standard.
  3. Une plateforme d’hébergement de code avec hôtes maintenus par le fournisseur.
  4. Des conteneurs sans serveur avec hôtes maintenus par le fournisseur.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Série 3 : Diagnostiquer les choix de mise à l’échelle et de services10 Questions Pratiques

Enregistre cette unité pour voir chaque réponse et t'entraîner sur chaque série.

Question 1 sur 10

Une machine virtuelle est supprimée, mais son disque de démarrage conservé reste en place. L’équipe constate que des frais de stockage continuent. Quelle action met fin à ces frais lorsque les données ne sont plus nécessaires ?
  1. Supprimer un groupe de sécurité inutilisé.
  2. Supprimer le disque de démarrage conservé.
  3. Réduire la taille du CPU de la machine supprimée.
  4. Désactiver l’ancien compte de connexion invité.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 2 sur 10

Une boutique réduit horizontalement son parc de six instances web à trois. Certains utilisateurs perdent leurs paniers stockés uniquement dans la mémoire des instances supprimées. Quel changement permet à n’importe quelle instance restante de poursuivre la gestion de ces paniers ?
  1. Utiliser une machine virtuelle plus grande pour chaque serveur.
  2. Maintenir les instances dans une seule zone de disponibilité.
  3. Utiliser l’affinité de session avec des paniers en mémoire.
  4. Conserver les paniers dans un service de données partagé.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 3 sur 10

Six machines virtuelles identiques présentent une utilisation moyenne du CPU de 75 % avec une charge totale constante. La cible est de 50 %, mais la capacité maximale est de huit. Sans tenir compte des délais, que se passe-t-il à ce plafond ?
  1. 8 machines affichent environ 56,3 % de CPU en moyenne.
  2. 8 machines affichent exactement 50 % de CPU en moyenne.
  3. 9 machines affichent exactement 50 % de CPU en moyenne.
  4. 6 machines affichent environ 56,3 % de CPU en moyenne.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 4 sur 10

Quatre serveurs se partagent également 1 440 requêtes par minute. Chacun en prend en charge 400 par minute. L’un tombe en panne et aucune réparation par mise à l’échelle n’est configurée. À quoi l’opérateur doit-il s’attendre après son exclusion par les contrôles d’état ?
  1. Trois reçoivent 360 requêtes chacun ; le répartiteur conserve une réserve de capacité.
  2. Quatre reçoivent 360 requêtes chacun ; les contrôles d’état redémarrent l’application défaillante.
  3. Trois reçoivent 480 requêtes chacun ; une réparation ou une action sur la capacité est nécessaire.
  4. Trois reçoivent 400 requêtes chacun ; le répartiteur rejette les 240 requêtes supplémentaires.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 5 sur 10

Une application Kubernetes managée plante régulièrement à cause d’un bogue dans son image de conteneur. Le plan de contrôle est sain. Qui doit corriger la cause ?
  1. Le fournisseur qui maintient le plan de contrôle.
  2. Le fournisseur qui publie les versions de Kubernetes.
  3. Le registre qui stocke l’image de l’application.
  4. L’équipe qui maintient l’image de l’application.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 6 sur 10

Un développeur a besoin d’un court test de conteneur Azure sans cluster. La mise à l’échelle automatique est inutile. Quel service convient directement ?
  1. Azure Container Instances.
  2. Azure Kubernetes Service.
  3. Azure Virtual Desktop.
  4. Les emplacements de déploiement Azure App Service.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 7 sur 10

Un entraînement nécessite des GPU, dure trois jours et peut reprendre au maximum 10 minutes de travail après une interruption. L’équipe souhaite une capacité qui peut être reprise par le fournisseur. Quelle conception répond à ces besoins ?
  1. Machines virtuelles Spot accélérées ; points de contrôle persistants toutes les 30 minutes.
  2. Machines virtuelles Spot accélérées ; points de contrôle persistants toutes les 5 minutes.
  3. Machines virtuelles Spot accélérées ; points de contrôle locaux temporaires toutes les 5 minutes.
  4. Machines virtuelles Spot avec CPU seul ; points de contrôle persistants toutes les 5 minutes.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 8 sur 10

Une agence souhaite que les clients continuent d’utiliser la version actuelle d’App Service pendant qu’elle teste une nouvelle version sur un niveau doté d’emplacements de déploiement. Quelle approche de déploiement convient ?
  1. Tester en préproduction, puis échanger préproduction et production.
  2. Remplacer d’abord la production, puis tester son nouveau comportement.
  3. Créer un plan plus grand, puis charger directement en production.
  4. Arrêter les deux emplacements, puis copier les fichiers de préproduction en production.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 9 sur 10

Une API ne reçoit aucune requête pendant de longues périodes nocturnes et peut supporter une attente au démarrage. Quel compromis entre coût et latence favorise un service qui passe à zéro ?
  1. Un coût de calcul inactif réduit avec des démarrages à chaud garantis.
  2. Une capacité inactive fixe avec des correctifs au système invité à chaque requête.
  3. Un coût de calcul inactif réduit avec des démarrages à froid possibles.
  4. Une capacité inactive fixe sans responsabilité sur l’application.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 10 sur 10

Une conversion par lots dure 110 minutes, ne nécessite aucun accès particulier à l’hôte et ne peut pas être divisée en invocations plus courtes. L’équipe ne souhaite pas administrer de serveurs et utilise actuellement le calcul par défaut de Lambda. Quel est un choix approprié pour la suite ?
  1. Une fonction Lambda avec le calcul par défaut et un délai de 110 minutes.
  2. Une tâche conteneurisée managée dont la limite couvre 110 minutes.
  3. Une requête de conteneur avec un délai d’exécution fixe de 60 minutes.
  4. Une tâche conteneurisée managée avec une limite d’exécution fixe de 90 minutes.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Série 4 : Évaluer les conceptions et les compromis10 Questions Pratiques

Enregistre cette unité pour voir chaque réponse et t'entraîner sur chaque série.

Question 1 sur 10

Une machine virtuelle présente une utilisation moyenne du CPU de 12 %, mais manque régulièrement de mémoire. Une proposition vise à réduire de moitié le nombre de CPU et la mémoire pour économiser de l’argent. Quelle est la meilleure prochaine étape ?
  1. Mesurer la demande de mémoire et choisir une taille qui y répond.
  2. Réduire de moitié le CPU et la RAM selon la faible demande moyenne de CPU.
  3. Doubler le nombre de vCPU en conservant la même limite de mémoire.
  4. Passer à un CPU à performances extensibles en conservant la même limite de mémoire.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 2 sur 10

Un service devient régulièrement très sollicité à 09 h 00. Les nouvelles machines virtuelles ont besoin de quatre minutes pour démarrer et réussir les contrôles. La mise à l’échelle fondée sur le CPU ne réagit qu’après 09 h 00, lorsque les attentes commencent. Quel changement répond le mieux à ce problème ?
  1. Relever le seuil de réaction pour ne suivre que le pic le plus important.
  2. Allonger le délai de stabilisation pour que les premières nouvelles machines restent allouées plus longtemps.
  3. Planifier suffisamment de capacité pour terminer les contrôles d’état avant 09 h 00.
  4. Augmenter la capacité souhaitée à 09 h 00 en conservant les contrôles de disponibilité.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 3 sur 10

Une API retire un serveur sain de son ensemble de cibles pendant que celui-ci termine plusieurs requêtes. Quel comportement du répartiteur de charge aide ces requêtes à se terminer ?
  1. Maintenir la répartition à tour de rôle jusqu’à la résiliation immédiate de la machine.
  2. Utiliser l’affinité de session tout en empêchant toute nouvelle session utilisateur.
  3. Arrêter les contrôles d’état et retirer la machine après un délai fixe.
  4. Arrêter le routage de nouvelles requêtes et drainer les requêtes actives avant le retrait.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 4 sur 10

Un conteneur de facturation est remplacé à partir d’une image corrigée. Les PDF générés existaient uniquement dans la couche accessible en écriture de l’ancien conteneur. Le registre contient toujours les deux versions de l’image. Pourquoi les PDF sont-ils indisponibles et comment éviter que cela se reproduise ?
  1. La nouvelle balise a masqué les documents ; redéployer l’ancienne balise d’image.
  2. Le remplacement a supprimé les fichiers d’exécution ; les enregistrer dans un stockage persistant.
  3. L’image ne contient pas les modifications d’exécution ; conserver les anciennes versions d’image.
  4. Le registre contient les fichiers ; restaurer ses paramètres d’accès d’origine.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 5 sur 10

Une API Cloud Run a un nombre minimal d’instances fixé à zéro. Une proposition maintient une instance prête pour réduire l’attente de la première requête après les périodes calmes. Le trafic peut aussi dépasser soudainement la capacité d’une instance. À quoi l’équipe doit-elle s’attendre ?
  1. Un coût continu pour l’instance prête et de possibles démarrages à froid pendant les pics.
  2. Aucun coût de calcul continu et aucun démarrage à froid pendant les pics.
  3. Un coût continu pour l’instance prête et un plafond fixe d’une instance.
  4. Aucun changement de latence après inactivité et seulement des frais de registre d’images.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 6 sur 10

Une fonction déclenchée par une file d’attente augmente rapidement son nombre d’exécutions et les limites de connexion à la base de données sont dépassées. Quel paramètre protège le plus directement la base tout en préservant le traitement des événements ?
  1. Augmenter la simultanéité des fonctions pour traiter les événements plus vite.
  2. Conserver un total de connexions distinct dans chaque mémoire locale.
  3. Plafonner la simultanéité des fonctions à un niveau pris en charge.
  4. Augmenter le délai de la base de données sans limiter les arrivées.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 7 sur 10

Une équipe déploie l’application web qu’elle a écrite sur une plateforme d’hébergement gérée par un fournisseur. Quel modèle de service décrit cette situation ?
  1. Le logiciel en tant que service.
  2. La plateforme en tant que service.
  3. L’infrastructure en tant que service.
  4. Le poste de travail en tant que service.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 8 sur 10

Une équipe migre une application Kubernetes vers un autre cloud. Les images de conteneurs s’y exécutent, mais elle doit encore modifier les paramètres d’accès à la base de données et d’identité propres au fournisseur. Comment faut-il interpréter ce résultat ?
  1. Les images en fonctionnement montrent que toutes les dépendances cloud sont portables.
  2. Les intégrations défaillantes montrent que les images ne peuvent pas être portables.
  3. L’API Kubernetes commune garantit des paramètres d’identité identiques.
  4. L’ensemble applicatif est portable, mais les intégrations externes nécessitent encore du travail.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 9 sur 10

Une estimation de type Lambda suppose 0,00002 dollar américain par Go-s et 0,30 dollar américain par million de requêtes, sans franchise ni autres frais. Quatre millions d’invocations utilisent chacune 0,5 Go pendant 0,15 seconde. Quel est le total ?
  1. 6,00 dollars américains.
  2. 7,20 dollars américains.
  3. 13,20 dollars américains.
  4. 4,80 dollars américains.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Question 10 sur 10

Un autoscaler de pods demande dix répliques. Chaque nœud dispose de 2,5 vCPU pour les pods et chaque pod demande 0,9 vCPU. La mémoire est suffisante et il n’y a pas d’autre restriction de placement. Combien de nœuds peuvent accueillir toutes les répliques ?
  1. 4 nœuds.
  2. 6 nœuds.
  3. 5 nœuds.
  4. 3 nœuds.
Afficher la réponseMasquer la réponse

Enregistre cette unité pour voir cette réponse.

Tu bloques sur ton propre exercice ? Aide aux Devoirs

Mots-Clés

83 Mots-Clés, chacun avec sa définition

A

Affinité de session
L’affinité de session maintient les requêtes d’un utilisateur sur une même cible, ce qui aide les sessions locales mais risque de répartir la charge inégalement et de créer une dépendance à ce serveur.
L’affinité de session ne peut pas récupérer un panier stocké uniquement en mémoire lorsque le serveur auquel il est associé est résilié.
Application monolithique
Une application monolithique est construite et déployée comme une seule unité combinée plutôt que sous forme de services distincts.
Pour une boutique construite en un seul ensemble applicatif, la mise à jour d’une fonctionnalité nécessite la publication de l’ensemble complet plutôt que d’un petit service.
Autoscaler de cluster
Un autoscaler de cluster ajuste la capacité en nœuds de travail lorsque les pods demandés ne peuvent pas être planifiés ou lorsque des nœuds peuvent être supprimés sans risque.
Des pods en attente qui ont besoin de plus d’espace entraînent l’ajout d’un autre nœud plutôt que d’une simple réplique supplémentaire.
Autoscaler horizontal de pods
Un autoscaler horizontal de pods ajuste le nombre de répliques de pods à partir de métriques de charge de travail, comme l’utilisation moyenne du CPU parmi les pods.
L’API obtient des répliques de pods pendant une période chargée en utilisant la réserve de capacité déjà disponible sur ses nœuds.

C

Capacité maximale
La capacité maximale plafonne le nombre d’instances d’un groupe de mise à l’échelle sans allouer immédiatement cette capacité.
Faire passer le maximum de huit à douze ne lance ni ne facture à lui seul quatre machines virtuelles supplémentaires.
Capacité souhaitée
La capacité souhaitée est le nombre d’instances actuellement visé par un groupe de mise à l’échelle, entre son minimum et son maximum.
Un groupe dont la capacité souhaitée est de cinq remplace une machine virtuelle défaillante pour revenir à cinq instances saines.
Capacité Spot
La capacité Spot est une capacité de calcul inutilisée vendue à prix réduit que le fournisseur peut reprendre avec un court préavis ; elle nécessite des charges de travail capables de supporter une interruption.
Une tâche de rendu enregistre les images terminées pour qu’une interruption Spot n’efface pas tout le travail achevé.
Cluster Kubernetes
Un cluster Kubernetes est un groupe de machines doté d’un plan de contrôle qui coordonne les charges de travail conteneurisées exécutées dans des pods sur des nœuds de travail.
Un cluster maintient plusieurs répliques d’application sur ses nœuds au lieu de laisser chaque équipe gérer leur placement.
Conteneur
Un conteneur exécute une application et ses dépendances regroupées sous forme de processus isolé, en partageant le noyau du système d’exploitation de son hôte.
Plusieurs services conteneurisés peuvent partager une machine virtuelle tout en utilisant chacun leurs propres bibliothèques applicatives.
Conteneurs sans serveur
Les conteneurs sans serveur exécutent des images fournies par le client sur des hôtes gérés par le fournisseur, en laissant au client la configuration de l’application et la maintenance des images.
Une petite équipe déploie son image d’API sans choisir de machines virtuelles hôtes ni appliquer de correctifs au système d’exploitation de l’hôte.
Contrôle d’état
Un contrôle d’état est un test répété de la capacité d’une cible à traiter du travail, utilisé pour exclure les cibles défaillantes du nouveau trafic ou déclencher une réparation configurée.
Plusieurs réponses défaillantes du point de terminaison de contrôle d’état de l’application conduisent le répartiteur à cesser d’y router de nouvelles requêtes.
Crédits CPU
Les crédits CPU comptabilisent l’accès accumulé et dépensé à une puissance de traitement supérieure au niveau de base sur les machines virtuelles à performances extensibles fondées sur des crédits, comme AWS T et Azure B.
Une tâche utilisant le CPU de façon soutenue épuise les crédits du mode standard, puis s’exécute au niveau de base inférieur de la machine virtuelle.

D

Déclencheur
Un déclencheur est un événement qui lance l’exécution d’une fonction, comme une requête, un chargement, un message ou une minuterie.
Une minuterie démarre une fonction de maintenance à 02 h 00 sans que personne lance manuellement un serveur.
Délai de stabilisation
Un délai de stabilisation limite les décisions rapides de mise à l’échelle dans les deux sens pendant que l’effet d’un changement de capacité précédent se stabilise.
Un délai de stabilisation aide à éviter l’ajout et la suppression répétés d’instances avant que le changement précédent puisse être évalué.
Démarrage à froid
Un démarrage à froid est l’attente supplémentaire nécessaire pour préparer un nouvel environnement d’exécution avant qu’il puisse traiter du travail.
La première requête après une nuit calme attend l’initialisation d’un nouvel environnement de fonction.
Dépendance au fournisseur
La dépendance au fournisseur est une dépendance à des services ou paramètres propres à un fournisseur qui rend plus difficile le déplacement d’une charge de travail vers une autre plateforme.
Une fonction étroitement liée aux déclencheurs d’un fournisseur doit être adaptée avant de pouvoir s’exécuter ailleurs.
Désallocation
La désallocation libère la capacité de calcul allouée à une machine virtuelle Azure et met fin aux frais liés à cette allocation.
Après avoir arrêté Windows, un administrateur désalloue la machine virtuelle et vérifie l’état affiché.
Disque local temporaire
Un disque local temporaire conserve sur l’hôte des données qui peuvent être perdues lorsque la machine virtuelle s’arrête, se déplace ou est désallouée.
L’application écrit localement des fichiers de travail temporaires et enregistre les documents achevés dans un stockage persistant.
Disque persistant
Un disque persistant conserve les données après la session d’exécution d’une machine virtuelle, sauf si les paramètres de suppression les effacent.
Un disque de démarrage conservé peut préserver des fichiers après la suppression d’une machine virtuelle et continuer à générer des frais de stockage.
Domaine de défaillance
Un domaine de défaillance est un groupe de matériel qui partage des risques de panne, notamment l’alimentation électrique et les commutateurs réseau. Les groupes à haute disponibilité Azure répartissent les machines virtuelles entre ces domaines.
Répartir les machines virtuelles entre des domaines de défaillance réduit le risque qu’une panne de baie arrête toutes les copies.
Domaine de mise à jour
Un domaine de mise à jour regroupe des machines virtuelles Azure susceptibles de redémarrer ensemble pour une maintenance planifiée, permettant aux autres groupes de rester disponibles.
Un déploiement réparti entre des domaines de mise à jour évite le redémarrage de toutes ses machines virtuelles lors de la même étape de maintenance.
Drainage des connexions
Le drainage des connexions empêche le nouveau trafic d’atteindre une cible en cours de retrait tout en laissant à ses requêtes actives le temps de se terminer avant sa suppression.
Une réduction horizontale planifiée attend la fin des requêtes en cours au lieu de résilier immédiatement une cible occupée.

É

Élasticité
L’élasticité ajoute et supprime automatiquement et rapidement des ressources pour que la capacité suive la demande de la charge de travail.
Le service augmente sa capacité pendant une vente et la réduit pendant la nuit sans qu’un administrateur modifie le nombre d’instances.
État souhaité
L’état souhaité est la configuration déclarée de la charge de travail que Kubernetes cherche à maintenir, par exemple une image donnée exécutée avec trois répliques.
Après la panne d’un pod, le cluster crée une autre copie pour rétablir le nombre déclaré de répliques.

E

Emplacement de déploiement
Un emplacement de déploiement est un environnement d’hébergement distinct pour une application App Service qui permet de tester une version avant un échange avec la production sur les niveaux adaptés.
L’équipe vérifie une version en préproduction tandis que les clients continuent d’utiliser la version actuelle en production.
Exigence de la charge de travail
Une exigence de la charge de travail est un besoin auquel le choix de calcul doit répondre, comme la durée, le matériel, l’accès à l’hôte, le trafic ou le support d’exploitation.
Une modification nécessaire du noyau exclut une plateforme d’hébergement standard avant que l’équipe compare les coûts mensuels.

F

Facturation à l’usage
La facturation à l’usage établit les frais selon l’utilisation mesurée, comme la durée d’exécution et les requêtes, les unités exactes étant définies par le service et l’offre.
Les périodes calmes réduisent l’utilisation de calcul d’une fonction à la demande tandis qu’un plan d’hébergement dédié reste alloué.
Famille d’instances
Une famille d’instances regroupe des types de machines virtuelles présentant un équilibre similaire entre traitement, mémoire, stockage ou accélérateurs pour répondre à certains besoins des charges de travail.
L’équipe choisit une famille optimisée pour la mémoire avant de sélectionner une taille suffisante pour son cache.
Fargate
Fargate est une capacité de calcul gérée par AWS pour les tâches ECS et les pods EKS admissibles, qui évite aux clients de choisir et de maintenir les machines virtuelles hôtes.
L’équipe choisit le CPU et la mémoire de la tâche sur Fargate tandis qu’ECS assure l’orchestration de l’application.
Fonction sans serveur
Une fonction sans serveur est un code exécuté en réponse à des événements sur une infrastructure gérée par le fournisseur, dont le comportement et les frais sont définis par son offre d’hébergement.
Un nouveau fichier dans un stockage en mode objet déclenche une fonction qui extrait les métadonnées et les enregistre dans une base de données.

G

Go-seconde
Une Go-seconde mesure la mémoire allouée pendant une durée d’exécution : un Go pendant une seconde. Cette unité est utilisée pour la facturation à l’usage des fonctions de type Lambda.
Une fonction utilisant 0,5 Go pendant deux secondes consomme une Go-seconde avant l’ajout des frais de requêtes.

H

Haute disponibilité
La haute disponibilité est la capacité à maintenir un service utilisable pendant une grande proportion du temps malgré la défaillance de certains composants.
Des instances situées dans des zones distinctes continuent de servir le trafic après la perte de l’alimentation électrique et de la connectivité d’une zone.
Hébergement statique
L’hébergement statique diffuse des fichiers web comme du HTML, du CSS, du JavaScript et des images sans serveur d’application géré par le client pour ces fichiers.
Un site de documentation utilise Firebase Hosting pour diffuser ses fichiers par un réseau mondial.
Hôte dédié
Un hôte dédié est un serveur physique entier réservé à un seul client, y compris l’allocation de ses cœurs.
Une licence logicielle liée aux cœurs physiques conduit l’équipe à examiner les exigences relatives aux hôtes dédiés.
Hyperviseur
Un hyperviseur est un logiciel qui répartit un hôte physique en machines virtuelles isolées et contrôle leur accès au matériel de l’hôte.
Plusieurs machines virtuelles de clients peuvent partager un serveur physique tout en conservant des systèmes d’exploitation invités distincts.

I

Image de conteneur
Une image de conteneur est un modèle d’application en lecture seule contenant le code, les bibliothèques et les fichiers d’exécution à partir desquels les conteneurs sont créés.
L’équipe déploie l’image inventory-api testée pour que la production utilise la même version de l’application.
Image de machine
Une image de machine est un modèle du système d’exploitation et des logiciels préinstallés d’une nouvelle machine virtuelle.
Une image Ubuntu fournit les logiciels Linux, tandis que la taille d’instance choisie fournit le CPU et la mémoire.
Instance
Une instance est une copie provisionnée d’une ressource cloud, comme une machine virtuelle unique dans un service de machines virtuelles.
L’équipe lance une seconde instance à partir de la même image pour obtenir une autre copie de son serveur web.
Instance à performances extensibles
Une instance à performances extensibles fournit un niveau de base de CPU faible avec un accès temporaire à une puissance de traitement supérieure, selon les règles de son service.
Un serveur de test peu sollicité peut utiliser la capacité extensible pour de courts pics sans avoir besoin d’une utilisation maximale et soutenue du CPU.
Instance sans état
Une instance sans état ne conserve aucune information locale unique nécessaire aux requêtes ultérieures, ce qui permet à d’autres instances de poursuivre le même travail.
Une base de données partagée des paniers permet à la requête suivante d’atteindre une autre instance web sans perdre le panier.
Instance sur serveur physique
Une instance sur serveur physique donne un accès direct au matériel physique sans couche d’hyperviseur.
Une charge de travail nécessitant un accès direct au matériel utilise une instance sur serveur physique plutôt qu’une machine virtuelle ordinaire sur un hôte partagé.
Invocation
Une invocation est une exécution de fonction lancée par un événement correspondant dans un environnement nouveau ou déjà prêt.
Un pic d’événements indépendants liés à des fichiers peut créer de nombreuses invocations simultanées, dans les limites du service.

L

Logiciel en tant que service
Le logiciel en tant que service fournit une application achevée exploitée par son fournisseur : les clients utilisent le logiciel au lieu de déployer leur propre code.
Une organisation utilise une suite bureautique hébergée au lieu de construire et de maintenir son propre éditeur de documents.

M

Machine virtuelle
Une machine virtuelle est un ordinateur défini par logiciel, doté de son propre système d’exploitation invité, de processeurs virtuels, de mémoire, de stockage et d’un réseau.
Une équipe loue une machine virtuelle pour exécuter une application serveur prise en charge par son éditeur et applique les correctifs à son système d’exploitation invité.
Mémoire par vCPU
La mémoire par vCPU mesure la RAM fournie par unité de traitement et aide à comparer l’équilibre des ressources des machines virtuelles.
Une machine virtuelle de 8 Gio avec 2 vCPU fournit 4 Gio par vCPU, ce qui aide l’équipe à comparer les familles.
Microservices
Les microservices sont des services applicatifs connectés par réseau qui peuvent être déployés et mis à l’échelle indépendamment.
Le service de paiement obtient des répliques pendant une vente sans ajouter de copies du service de courriel.
Mise à l’échelle à zéro
La mise à l’échelle à zéro réduit à aucune instance le nombre d’instances d’un service en fonctionnement pendant les périodes d’inactivité, ce qui économise le calcul inactif lorsque son modèle de facturation le permet.
Une API interne peu sollicitée atteint zéro instance pendant la nuit et démarre une nouvelle instance pour la requête suivante.
Mise à l’échelle horizontale
La mise à l’échelle horizontale modifie le nombre d’instances qui se partagent le travail : elle ajoute des copies lors d’une augmentation et en supprime lors d’une réduction.
Des copies supplémentaires du serveur web traitent une période chargée tandis qu’un répartiteur de charge distribue les requêtes entrantes.
Mise à l’échelle planifiée
La mise à l’échelle planifiée modifie la capacité à des heures configurées, afin que les instances soient prêtes pour les périodes chargées prévisibles avant l’arrivée de la demande.
Le service commence à lancer des machines virtuelles supplémentaires avant son pic matinal habituel pour que les contrôles d’état se terminent à temps.
Mise à l’échelle prédictive
La mise à l’échelle prédictive prévoit les besoins futurs de capacité à partir des tendances historiques de la demande et prépare les ressources avant l’arrivée de la charge prévue.
Les tendances passées du trafic aident le service de mise à l’échelle à préparer un pic récurrent au lieu de réagir tardivement.
Mise à l’échelle verticale
La mise à l’échelle verticale modifie les ressources d’une machine en passant à une taille supérieure ou inférieure, généralement avec un redémarrage.
La machine virtuelle de la base de données passe à une taille dotée de plus de mémoire ; l’équipe prévoit donc une brève interruption du service.
Modèle de lancement
Un modèle de lancement définit la configuration de départ reproductible d’une machine virtuelle AWS, notamment son image, sa taille, ses paramètres réseau et ses instructions de démarrage.
Les instances de remplacement retrouvent la configuration prévue à partir du modèle au lieu de dépendre de modifications manuelles.
Modernisation
La modernisation modifie la manière dont une application est construite ou exécutée pour utiliser les capacités du cloud, comme les plateformes managées, les conteneurs ou les composants déclenchés par des événements.
Après le réhébergement, l’équipe place une nouvelle fonctionnalité de traitement des chargements dans des fonctions pour éviter une autre machine virtuelle toujours active.

N

Nœud de travail
Un nœud de travail est une machine, généralement une machine virtuelle, qui fournit des ressources aux pods et aux conteneurs Kubernetes.
Lorsque les nœuds existants ne peuvent pas accueillir les pods demandés, la mise à l’échelle automatique des nœuds peut ajouter une autre machine de travail.
Noyau
Un noyau est la partie centrale d’un système d’exploitation qui gère les ressources matérielles et les processus ; les conteneurs ordinaires partagent le noyau de leur hôte.
Les conteneurs Linux ont besoin d’un noyau Linux même lorsque leurs ensembles applicatifs contiennent des bibliothèques différentes.

O

Orchestration
L’orchestration coordonne le placement des conteneurs, la récupération après panne, la mise à l’échelle, les connexions entre services et le déploiement des versions sur plusieurs hôtes de calcul.
Un orchestrateur démarre des conteneurs de remplacement lorsqu’un hôte tombe en panne et que d’autres hôtes disposent d’une capacité suffisante.

P

Période de préchauffage
Une période de préchauffage laisse une nouvelle instance s’initialiser avant que ses mesures soient considérées comme représentatives dans les décisions de mise à l’échelle.
Une machine virtuelle qui démarre encore son application ne devrait pas fausser la prochaine estimation de capacité utile du groupe.
Plan App Service
Un plan App Service définit la région, la taille et le nombre d’instances partagées par ses applications hébergées sur Azure ; les plans dédiés facturent la capacité allouée.
Deux petites applications partagent les instances d’un même plan ; leur demande combinée compte donc lors du choix de la capacité.
Plan de contrôle
Un plan de contrôle conserve la configuration souhaitée d’un cluster Kubernetes et coordonne la planification et les autres actions qui maintiennent les charges de travail en fonctionnement.
Un fournisseur de Kubernetes managé maintient le plan de contrôle tandis que l’équipe applicative corrige son propre code.
Plateforme d’hébergement d’applications
Une plateforme d’hébergement d’applications exécute le code ou les images déployés par le client et fournit des outils de déploiement, de gestion des serveurs, de surveillance de l’état et de mise à l’échelle.
Une petite agence déploie son application de billetterie sans installer le système d’exploitation de l’hôte ni le serveur web.
Plateforme en tant que service
La plateforme en tant que service fournit un environnement managé pour les applications que tu construis et déploies, ce qui réduit le travail sur l’infrastructure tout en limitant le contrôle de l’hôte.
L’équipe utilise App Service pour son propre code au lieu de louer une machine virtuelle et de configurer le serveur web.
Pod
Un pod est la plus petite unité planifiée par Kubernetes ; il contient un ou plusieurs conteneurs qui partagent une adresse réseau et s’exécutent ensemble sur un même nœud.
Deux conteneurs étroitement liés partagent un pod ; le planificateur les place donc tous deux sur le même nœud de travail.
Point de contrôle
Un point de contrôle enregistre la progression d’un traitement pour que le travail puisse reprendre à partir de ce point après une interruption.
Une tâche d’entraînement reprend à partir du dernier état enregistré du modèle après que le fournisseur a interrompu son instance Spot.
Portabilité
La portabilité est la facilité avec laquelle une application et son déploiement peuvent passer d’un environnement à un autre, compte tenu notamment du travail nécessaire pour reconnecter les dépendances.
Une image de conteneur s’exécute sur un autre cloud, mais ses paramètres d’identité de base de données et de réseau doivent encore être modifiés.

R

Redimensionnement optimal
Le redimensionnement optimal adapte la famille et la taille d’une machine virtuelle aux besoins mesurés en CPU, mémoire, stockage et réseau sans payer de capacité inutile.
Une faible utilisation du CPU incite à examiner la taille, mais une forte utilisation de la mémoire empêche l’équipe de choisir aveuglément une machine virtuelle plus petite.
Registre de conteneurs
Un registre de conteneurs stocke et distribue des images aux outils de déploiement et aux services d’exécution.
Le service de déploiement récupère une image versionnée dans Artifact Registry avant de démarrer de nouveaux conteneurs.
Réhébergement
Le réhébergement déplace une application avec très peu de modifications vers une infrastructure cloud, souvent des machines virtuelles, tout en conservant une grande partie de son modèle d’exploitation existant.
Une entreprise quitte rapidement son centre de données en déplaçant une application serveur prise en charge vers des machines virtuelles cloud équivalentes.
Répartiteur de charge
Un répartiteur de charge présente une adresse d’entrée unique et distribue le trafic entrant entre des cibles saines selon des règles de routage configurées.
Les utilisateurs conservent la même adresse de site web tandis que le nombre de serveurs cibles change pendant une période chargée.
Répartition à tour de rôle
La répartition à tour de rôle envoie le travail aux cibles disponibles successivement, sans les sélectionner selon leur charge actuelle.
Avec des requêtes équivalentes et trois cibles saines, chacune reçoit environ un tiers du trafic entrant.
Répartition de charge de couche 4
La répartition de charge de couche 4 choisit les cibles à partir des caractéristiques de connexion de la couche transport, comme les adresses IP et les ports, pour les protocoles pris en charge.
Un service TCP a besoin d’un routage des connexions, mais pas de règles qui inspectent un chemin d’URL HTTP.
Répartition de charge de couche 7
La répartition de charge de couche 7 comprend les requêtes HTTP et peut choisir les cibles à partir de détails applicatifs comme l’hôte ou le chemin demandé.
Les requêtes pour /api/ vont vers l’ensemble de serveurs de l’API, tandis que celles pour /images/ vont vers un autre ensemble.
Responsabilité d’exploitation
La responsabilité d’exploitation est le travail de maintenance conservé par une équipe, notamment les mises à jour de l’application, la protection des données et les accès, même avec une solution de calcul managée.
Le passage aux conteneurs sans serveur supprime l’application des correctifs à l’hôte, mais laisse à l’équipe la correction des bibliothèques applicatives vulnérables.

S

Scalabilité
La scalabilité est la capacité d’un système à traiter une charge de travail plus importante par ajout de ressources, dans les limites de son application et de ses dépendances.
L’ajout de serveurs web aide jusqu’à ce qu’une base de données partagée devienne la limite suivante du débit de l’application.
Service Kubernetes
Un Service Kubernetes fournit un nom et une adresse stables pour accéder à un ensemble changeant de pods, en évitant aux clients de dépendre des adresses des pods.
Les clients continuent d’accéder au service de commandes tandis que les pods de remplacement reçoivent des adresses réseau différentes.
Simultanéité
La simultanéité est la quantité de travail exécutée en même temps, comme les invocations simultanées de fonctions.
L’équipe plafonne les exécutions simultanées de fonctions pour ne pas dépasser la limite de connexions à la base de données.
Simultanéité provisionnée
La simultanéité provisionnée maintient des environnements d’exécution Lambda prêts pour un niveau de demande configuré, ce qui réduit l’attente liée aux démarrages à froid moyennant un coût supplémentaire.
Une API sensible à la latence paie une capacité prête au lieu de dépendre entièrement de nouveaux environnements à l’arrivée des requêtes.
Suivi de cible
Le suivi de cible ajuste la capacité pour maintenir une métrique de la charge de travail près d’une valeur choisie, comme 50 % de CPU.
Le groupe ajoute des instances lorsqu’il faut répartir le même travail sur davantage de machines virtuelles pour réduire l’utilisation moyenne du CPU.

T

Tâche conteneurisée
Une tâche conteneurisée exécute une charge de travail empaquetée jusqu’à son terme au lieu de répondre continuellement à des requêtes.
Une exportation nocturne de données utilise une tâche conteneurisée dont la limite de durée est assez longue pour terminer le rapport.
Tâche ECS
Une tâche ECS est une unité de conteneurs en cours d’exécution définie pour Amazon ECS, qui utilise des hôtes EC2 gérés par le client ou la capacité de calcul Fargate.
Un service ECS maintient le nombre souhaité de tâches en fonctionnement tandis qu’un répartiteur de charge distribue les requêtes web.
Taille d’instance
Une taille d’instance précise les vCPU, la mémoire et la capacité associée fournis par un type de machine virtuelle donné.
Le passage de m7g.large à m7g.xlarge double les vCPU et la mémoire tout en conservant la même famille.
Terminaison TLS
La terminaison TLS déchiffre HTTPS à un point d’entrée afin que celui-ci puisse inspecter et router les requêtes applicatives.
Un répartiteur de charge applicatif assure la terminaison HTTPS avant de choisir un serveur cible selon le chemin de la requête.

V

vCPU
Un vCPU est une unité de traitement attribuée à une machine virtuelle, souvent un fil d’exécution matériel d’un cœur et, pour certains types de processeurs, un cœur entier.
Une taille disposant de suffisamment de vCPU peut tout de même ne pas faire fonctionner un cache si la mémoire allouée est insuffisante.
Virtualisation des postes de travail
La virtualisation des postes de travail exécute des postes à distance et transmet leur interface aux appareils des utilisateurs.
Les employés ouvrent des postes hébergés dans le cloud par Azure Virtual Desktop au lieu de tout exécuter localement.

À propos de cette unité

Par StudeliSignaler une erreur

Crée ton propre Matériel d'Étude

Transforme tes notes, diapos et documents en Guides d'Étude, Questions Pratiques, Flashcards et 6 autres outils.

Commencer