À propos des mises à jour ota

Mises à jour sont une partie importante du modèle de sécurité Azure Sphere, car ils incarnent la propriété de la sécurité renouvelable. Le fait de s’assurer que les mises à jour ont lieu régulièrement permet de maintenir la conformité de vos appareils aux propriétés 7 . Les appareils Azure Sphere case activée pour les mises à jour lorsqu’ils se connectent pour la première fois à Internet après avoir mis sous tension ou après l’appui sur le bouton Réinitialiser. Par la suite, les vérifications ont lieu à intervalles réguliers (actuellement 20 heures).

Il existe trois types de mises à jour : les mises à jour préalables, les mises à jour du système d’exploitation et les mises à jour de déploiement. Les mises à jour préalables sont utilisées pour s’assurer que les composants sur lesquels repose le processus de mise à jour (actuellement le magasin de clés de confiance et le magasin de certificats) sont à jour. Le service TKS est utilisé pour authentifier les images à télécharger et à installer, tandis que le magasin de certificats valide les connexions Internet. Une mise à jour du système d’exploitation cible le logiciel fourni par Microsoft sur l’appareil, y compris le système d’exploitation normal dans lequel vos applications s’exécutent, mais également le microprogramme de niveau inférieur, comme le sous-système Pluton et le Moniteur de sécurité. Les mises à jour de déploiement ciblent vos propres logiciels: vos applications de haut niveau et en temps réel et vos images de configuration de carte (le cas échéant). Les prérequis et les mises à jour du système d’exploitation sont gérés par Azure Sphere ; Les mises à jour des applications sont coordonnées par Azure Sphere en fonction des déploiements créés par votre organization.

Pour que n’importe quel appareil reçoive les mises à jour requises ou de système d’exploitation :

Pour permettre à n’importe quel appareil de mettre à jour ses images de configuration d’application et de carte :

  • Il ne doit pas avoir la capacité de développement d’applications.
  • Elle doit être revendiquée par un catalogue.
  • Il doit appartenir à un groupe d’appareils.
  • Le groupe d’appareils auquel il appartient doit être ciblé par un déploiement.
  • Le déploiement doit contenir des images d’application (et éventuellement une image de configuration de carte) créées par ou pour le compte de votre organization.
  • Le groupe d’appareils doit avoir la stratégie UpdateAll update. Vous pouvez désactiver les mises à jour d’applications pour un groupe d’appareils particulier à l’aide de la commande az sphere device-group update .

Pour tous les appareils d’un groupe d’appareils donné, les déploiements ciblant ce groupe d’appareils sont considérés comme la source de vérité pour la création d’images de ces appareils. Toutes les images sur l’appareil qui n’existent pas dans le déploiement seront supprimées de l’appareil. La seule exception, à compter d’Azure Sphere OS 21.04, est que les images de configuration de carte ne sont pas supprimées, sauf si elles sont remplacées par une nouvelle image de configuration de carte.

La mise à jour de l’appareil case activée se produit en trois phases correspondant aux trois types de mises à jour :

  • Dans la première phase, Azure Sphere obtient un manifeste répertoriant les versions actuelles de TKS et du magasin de certificats. Si le magasin de certificats tks et le magasin de certificats sur l’appareil sont à jour, la mise à jour se poursuit avec la deuxième phase. Si ce n’est pas le cas, les images actuelles sont téléchargées et installées.
  • Dans la deuxième phase, Azure Sphere obtient un manifeste répertoriant les versions actuelles des différentes images de composants de système d’exploitation. Si des images de l’appareil sont obsolètes, les images actuelles sont téléchargées avec des images de restauration qui peuvent être utilisées pour restaurer l’appareil à un état correct connu en cas d’échec du processus de mise à jour. Les images du système d’exploitation et de restauration sont téléchargées et stockées dans une zone intermédiaire sur l’appareil, puis les images du système d’exploitation sont installées et l’appareil redémarre.
  • Dans la troisième phase, Azure Sphere recherche les mises à jour de déploiement si le groupe d’appareils les accepte. Comme pour la mise à jour du système d’exploitation, les images de restauration pour les applications sont également intermédiaires en fonction des besoins. Les images d’application et de restauration sont téléchargées et stockées dans la zone de préproduction, puis les images d’application sont installées.

Restauration des mises à jour

Chaque partie du processus de mise à jour comprend une option de restauration. Dans la mise à jour requise, l’image de restauration est simplement une sauvegarde de l’état de pré-mise à jour. Si la mise à jour échoue, l’état de pré-mise à jour est restauré.

La restauration à n’importe quel niveau force la restauration à tous les niveaux supérieurs : si une image de microprogramme ne parvient pas à démarrer, les partitions du microprogramme et de l’application sont restaurées.

Pour la mise à jour du système d’exploitation, un échec de vérification de la signature ou des difficultés d’exécution peuvent déclencher une restauration. En cas d’échec de la vérification de la signature, une tentative de correction de l’image est effectuée ; En cas d’échec, une restauration complète est déclenchée. Dans une restauration complète, les images de restauration intermédiaire sont installées pour le système d’exploitation et les applications.

Les mises à jour et les déploiements du système d’exploitation ont des cycles de publication indépendants. Il est donc possible que plusieurs déploiements se produisent entre les mises à jour du système d’exploitation. Si cela se produit, il est important de noter que les cibles de restauration pour le déploiement ne sont pas le déploiement le plus récent, mais plutôt le déploiement au moment de la dernière mise à jour du système d’exploitation. Cela garantit que le système d’exploitation et l’application fonctionnent ensemble dans l’état restauré.

Mises à jour interrompues

Si une mise à jour est interrompue, par exemple en raison d’une panne de courant ou d’une perte de connectivité, il existe quatre scénarios possibles pour chaque type de mise à jour :

  • Si un ensemble complet d’images a été correctement téléchargé et intermédiaire, mais pas encore installé, l’installation se termine lorsque l’alimentation est restaurée.
  • Si certaines images, mais pas toutes, ont été téléchargées et intermédiaires, la mise à jour continue à télécharger les images manquantes, puis passe à l’installation.
  • Si une mise à jour est interrompue pendant l’installation une fois le téléchargement terminé, l’installation redémarre au démarrage.
  • Si aucune image n’a été entièrement téléchargée, le processus de mise à jour commence à zéro lorsque l’alimentation est restaurée, car rien n’est prêt à être installé.

Mises à jour dans les scénarios de mise hors tension

Azure Sphere prend en charge les scénarios de faible consommation d’énergie qui permettent aux appareils d’être mis hors tension pendant des périodes prolongées afin d’économiser l’autonomie de la batterie. Dans de tels scénarios, il est important que l’appareil soit autorisé à case activée régulièrement pour les mises à jour. L’exemple d’application Power Down montre comment réduire correctement la consommation d’énergie tout en veillant à ce que l’appareil reste régulièrement éveillé pour case activée pour les mises à jour du système d’exploitation et de l’application.

Mises à jour différées

Pour empêcher les tâches critiques d’être interrompues par des mises à jour, les applications de haut niveau peuvent incorporer des mises à jour différées. Cette fonctionnalité permet à l’application d’effectuer ses tâches critiques, puis de se préparer à l’arrêt pour permettre à la mise à jour de continuer. L’exemple DeferredUpdate montre comment implémenter une telle mise à jour différée.