Mises à jour gérées de la plateforme - AWS Elastic Beanstalk

Mises à jour gérées de la plateforme

AWS Elastic Beanstalk publie régulièrement des mises à jour de la plateforme pour fournir des correctifs, des mises à jour logicielles et de nouvelles fonctionnalités. Grâce aux mises à jour gérées de la plateforme, vous pouvez configurer votre environnement pour effectuer automatiquement les mises à niveau vers la dernière version d'une plateforme au cours d'un créneau de maintenance planifié. Votre application reste en service pendant le processus de mise à jour, sans réduction de capacité. Les mises à jour gérées sont disponibles sur les environnements à l'instance unique et avec équilibrage de charge.

Note

Cette fonction n'est pas disponible dans les versions de la plateforme Windows Server antérieures à la version 2 (v2).

Vous pouvez configurer votre environnement pour appliquer automatiquement les mises à jour de version corrective ou les mises à jour des deux versions : mineure et corrective. Les mises à jour gérées de la plateforme ne prennent pas en charge les mises à jour entre les branches de la plateforme (mises à jour vers différentes versions majeures de composants de la plateforme tels que le système d'exploitation, l'exécution ou les composants Elastic Beanstalk), car elles peuvent introduire des modifications non rétrocompatibles.

Vous pouvez également configurer Elastic Beanstalk pour remplacer toutes les instances de votre environnement pendant la fenêtre de maintenance, même si aucune mise à jour de la plateforme n'est disponible. Le remplacement de toutes les instances de votre environnement est utile si votre application est confrontée à des bogues ou à des problèmes de mémoire lorsqu'elle est exécutée pendant une longue période.

Sur les environnements créés le 25 novembre 2019 ou ultérieurement à l'aide de la console Elastic Beanstalk, les mises à jour gérées sont activées par défaut dans la mesure du possible. Les mises à jour gérées nécessitent que l’état amélioré soit activé. L'état amélioré est activé par défaut lorsque vous sélectionnez un des paramètres prédéfinis de configuration, et désactivé lorsque vous sélectionnez Configuration personnalisée. La console ne peut pas activer les mises à jour gérées pour les anciennes versions de plate-forme qui ne prennent pas en charge l'état amélioré, ou lorsque l'état amélioré est désactivé. Lorsque la console active les mises à jour gérées pour un nouvel environnement, la fenêtre de mise à jour hebdomadaire est définie sur un jour aléatoire de la semaine à un moment aléatoire. Niveau de mise à jour est défini sur Mineures et correctifs et Remplacement d’instance est désactivé. Vous pouvez désactiver ou reconfigurer les mises à jour gérées avant l'étape finale de création de l'environnement.

Pour un environnement existant, utilisez la console Elastic Beanstalk à tout moment pour configurer les mises à jour des plateformes gérées.

Pour configurer les mises à jour des plates-formes gérées

  1. Ouvrez la console Elastic Beanstalk et, dans la liste Regions (Régions), sélectionnez votre région AWS.

  2. Dans le panneau de navigation, choisissez Environments (Environnements), puis choisissez le nom de votre environnement dans la liste.

    Note

    Si vous avez plusieurs environnements, utilisez la barre de recherche pour filtrer la liste des environnements.

  3. Dans le panneau de navigation, choisissez Configuration.

  4. Dans la catégorie Managed updates (Mises à jour gérées), choisissez Edit (Modifier).

  5. Désactivez ou activez Mises à jour gérées.

  6. Si les mises à jour gérées sont activées, sélectionnez une fenêtre de maintenance, puis un niveau de mise à jour.

  7. (Facultatif) Sélectionnez Remplacement de l'instance pour activer le remplacement d'instance hebdomadaire.

    
          Page Modifier la configuration des mises à jour gérées
  8. Choisissez Apply.

Les mises à jour gérées de la plateforme utilisent les rapports sur l'état de santé améliorés afin de déterminer si l'état de votre application est suffisamment satisfaisant pour estimer que la mise à jour de la plateforme a réussi. Pour obtenir des instructions, consultez Activation des rapports améliorés sur l'état Elastic Beanstalk.

Autorisations requises pour effectuer des mises à jour gérées de la plateforme

Elastic Beanstalk a besoin d'autorisations pour lancer une mise à jour de la plateforme en votre nom. Pour obtenir ces autorisations, Elastic Beanstalk assume le rôle de service de mises à jour gérées. Lorsque vous utilisez le rôle de service par défaut pour votre environnement, la console Elastic Beanstalk l'utilise également comme rôle de service de mises à jour gérées. La console affecte la politique gérée AWSElasticBeanstalkManagedUpdatesCustomerRolePolicy à votre fonction du service. Cette politique dispose de toutes les autorisations dont Elastic Beanstalk a besoin pour effectuer des mises à jour de la plateforme gérée.

Pour plus d'informations sur les autres méthodes de définition de la fonction du service de mises à jour gérées, consultez Gestion des rôles de service Elastic Beanstalk.

Note

Si vous utilisez des fichiers de configuration pour étendre votre environnement afin d'y inclure des ressources supplémentaires, vous pouvez avoir besoin d'ajouter des autorisations au rôle de service des mises à jour gérées de votre environnement. En général, vous devez ajouter des autorisations lorsque vous faites référence au nom de ces ressources dans d'autres sections ou fichiers.

En cas d'échec d'une mise à jour, vous pouvez trouver la raison de l'échec sur la page des mises à jour gérées.

Fenêtre de maintenance des mises à jour gérées

Lorsqu'AWS lance une nouvelle version de configuration de la plateforme de votre environnement, Elastic Beanstalk planifie une mise à jour gérée de la plateforme au cours de la prochaine fenêtre de maintenance hebdomadaire. Une fenêtre de maintenance dure deux heures. Elastic Beanstalk démarre une mise à jour planifiée pendant la fenêtre de maintenance. La mise à jour ne se termine avant la fin de la fenêtre.

Note

Dans la plupart des cas, Elastic Beanstalk planifie la mise à jour gérée de telle sorte qu'elle se produise pendant la fenêtre de maintenance hebdomadaire suivante. Le système considère différents aspects de sécurité et de disponibilité des services lors de la planification des mises à jour gérées. Dans de rares cas, une mise à jour peut ne pas être planifiée pour la première fenêtre de maintenance à venir. Si cela se produit, le système tente à nouveau durant la fenêtre de maintenance suivante. Pour procéder manuellement à une mise à jour gérée, choisissez Appliquer maintenant comme expliqué dans la section Gestion des mises à jour gérées sur cette page.

Mises à jour des versions mineures et correctives

Vous pouvez autoriser les mises à jour gérées de la plateforme à appliquer des mises à jour de version corrective uniquement, ou des mises à jour des deux versions : mineure et corrective. Les mises à jour de version corrective incluent des correctifs de bogues et des améliorations des performances. Elles peuvent aussi comporter des modifications mineures de configuration pour les logiciels sur les instances, les scripts et les options de configuration. Les mises à jour mineures de version prennent en charge les nouvelles fonctions d'Elastic Beanstalk. Dans le cadre des mises à jour gérées de la plateforme, vous ne pouvez pas appliquer de mises à jour de version majeure, lesquelles peuvent entraîner des modifications non rétrocompatibles.

Dans le numéro de version d'une plateforme, le deuxième numéro correspond à la mise à jour de version mineure, et le troisième numéro correspond à la version corrective. Par exemple, une plateforme version 2.0.7 a une version mineure de 0 et une version corrective de 7.

Mises à jour immuables de l'environnement

Les mises à jour gérées de la plateforme exécutent des mises à jour immuables de l'environnement pour mettre à niveau votre environnement vers une nouvelle version de la plateforme. Les mises à jour immuables mettent à jour votre environnement sans suspendre aucune instance ni modifier votre environnement, avant de vérifier que les instances qui exécutent la nouvelle version réussissent les vérifications de l'état.

Dans une mise à jour immuable, Elastic Beanstalk déploie autant d'instances qu'il y en a en cours d'exécution avec la nouvelle version de la plateforme. Les nouvelles instances commencent à accepter des demandes en même temps que celles qui exécutent l'ancienne version. Si le nouvel ensemble d'instances réussit toutes les vérifications de l'état, Elastic Beanstalk résilie l'ancien ensemble d'instances, en ne laissant que les instances associées à la nouvelle version.

Les mises à jour gérées de la plateforme effectuent toujours des mises à jour immuables, même lorsque vous les appliquez en dehors de la fenêtre de maintenance. Si vous modifiez la version de la plateforme dans le tableau de bord, Elastic Beanstalk applique la politique de mise à jour que vous avez choisie pour les mises à jour de configuration.

Avertissement

Certaines politiques remplacent toutes les instances pendant le déploiement ou la mise à jour. Cela entraîne la perte de tous les équilibres de rafale Amazon EC2 cumulés. Une telle situation se produit dans les cas suivants :

  • Mises à jour de la plate-forme gérée avec le remplacement d'instance activé

  • Mises à jour immuables

  • Déploiements avec mises à jour immuables ou fractionnement du trafic activé

Gestion des mises à jour gérées

La console Elastic Beanstalk présente des informations détaillées sur les mises à jour gérées sur la page Présentation des mises à jour gérées.

Pour afficher les informations relatives aux mises à jour gérées (console)

  1. Ouvrez la console Elastic Beanstalk et, dans la liste Regions (Régions), sélectionnez votre région AWS.

  2. Dans le panneau de navigation, choisissez Environments (Environnements), puis choisissez le nom de votre environnement dans la liste.

    Note

    Si vous avez plusieurs environnements, utilisez la barre de recherche pour filtrer la liste des environnements.

  3. Choisissez Managed updates (Mises à jour gérées).

La section Présentation des mises à jour gérées fournit des informations sur les mises à jour gérées planifiées et en attente. La section Historique répertorie les mises à jour ayant réussi et les tentatives ayant échoué.

Vous pouvez choisir d'appliquer une mise à jour planifiée immédiatement au lieu d'attendre la fenêtre de maintenance.

Pour appliquer une mise à jour gérée de la plateforme immédiatement (console)

  1. Ouvrez la console Elastic Beanstalk et, dans la liste Regions (Régions), sélectionnez votre région AWS.

  2. Dans le panneau de navigation, choisissez Environments (Environnements), puis choisissez le nom de votre environnement dans la liste.

    Note

    Si vous avez plusieurs environnements, utilisez la barre de recherche pour filtrer la liste des environnements.

  3. Choisissez Managed updates (Mises à jour gérées).

  4. Choisissez Appliquer maintenant.

  5. Vérifiez les détails de la mise à jour, puis choisissez Apply (Appliquer).

Lorsque vous appliquez une mise à jour gérée de la plateforme en dehors de la fenêtre de maintenance, Elastic Beanstalk effectue une mise à jour immuable. Si vous mettez à jour la plateforme de l'environnement dans le tableau de bord ou via un autre client, Elastic Beanstalk utilise le type de mise à jour que vous avez sélectionné pour les changements de configuration.

Si vous n'avez planifié aucune mise à jour gérée, il est possible que votre environnement exécute déjà la dernière version. Voici d'autres raisons possibles pour lesquelles aucune mise à jour n'est planifiée :

  • Une mise à jour de version mineure est disponible, mais votre environnement est configuré pour n'appliquer automatiquement que les mises à jour correctives de version.

  • Votre environnement n'a pas été analysé depuis la publication de la mise à jour. Elastic Beanstalk vérifie généralement les mises à jour toutes les heures.

  • Une mise à jour est en attente ou déjà en cours.

Lorsque la fenêtre de maintenance démarre ou que vous choisissez Appliquer maintenant, les mises à jour planifiées passent à l'état « en attente » avant l'exécution.

Espaces de noms avec options d'action gérée

Vous pouvez utiliser les options de configuration des espaces de noms aws:elasticbeanstalk:managedactions et aws:elasticbeanstalk:managedactions:platformupdate pour activer et configurer les mises à jour gérées de la plateforme.

L'option ManagedActionsEnabled active les mises à jour gérées de la plateforme. Définissez cette option sur true pour activer les mises à jour gérées de la plateforme, et utilisez les autres options pour configurer le comportement de mise à jour.

Utilisez PreferredStartTime pour configurer le début de la période de maintenance hebdomadaire au format jour:heure:minute.

Définissez UpdateLevel sur minor ou patch afin d'appliquer respectivement des mises à jour de version mineure et de version corrective, ou uniquement des mises à jour de version corrective.

Lorsque les mises à jour gérées de la plateforme sont activées, vous pouvez activer le remplacement d'instance en définissant l'option InstanceRefreshEnabled sur true. Lorsque ce paramètre est activé, Elastic Beanstalk exécute une mise à jour immuable de l'environnement chaque semaine, qu'une nouvelle version de la plateforme soit disponible ou non.

L'exemple suivant de fichier de configuration active les mises à jour gérées de la plateforme pour les mises à jour correctives de version, avec une fenêtre de maintenance commençant à 9 h UTC chaque mardi.

Exemple .ebextensions/managed-platform-update.config

option_settings: aws:elasticbeanstalk:managedactions: ManagedActionsEnabled: true PreferredStartTime: "Tue:09:00" aws:elasticbeanstalk:managedactions:platformupdate: UpdateLevel: patch InstanceRefreshEnabled: true