Comprendre les déploiements automatiques IoT Edge pour un seul ou de nombreux appareilsUnderstand IoT Edge automatic deployments for single devices or at scale

S’applique à : icône oui IoT Edge 1.1 icône oui IoT Edge 1.2 (préversion)Applies to: yes icon IoT Edge 1.1 yes icon IoT Edge 1.2 (preview)

Les déploiements automatiques et les déploiements en couches facilitent la gestion et la configuration de nombreux modules sur les appareils IoT Edge.Automatic deployments and layered deployment help you manage and configure modules on large numbers of IoT Edge devices.

Azure IoT Edge propose deux méthodes de configuration des modules à exécuter sur des appareils IoT Edge.Azure IoT Edge provides two ways to configure the modules to run on IoT Edge devices. La première consiste à déployer les modules sur la base de chaque appareil.The first method is to deploy modules on a per-device basis. Vous créez un manifeste de déploiement, puis vous l’appliquez à un appareil donné par nom.You create a deployment manifest and then apply it to a particular device by name. La seconde méthode consiste à déployer automatiquement les modules sur tous les appareils inscrits répondant à un ensemble de conditions définies.The second method is to deploy modules automatically to any registered device that meets a set of defined conditions. Vous créez un manifeste de déploiement, puis définissez les appareils auxquels il s’applique en fonction des indicateurs dans le jumeau d'appareil.You create a deployment manifest and then define which devices it applies to based on tags in the device twin.

Cet article se concentre sur la configuration et la supervision de flottes d’appareils, collectivement appelées déploiements automatiques IoT Edge.This article focuses on configuring and monitoring fleets of devices, collectively referred to as IoT Edge automatic deployments.  Les étapes de déploiement de base sont les suivantes :The basic deployment steps are as follows:

  1. Un opérateur définit un déploiement décrivant un ensemble de modules, ainsi que les appareils cibles.An operator defines a deployment that describes a set of modules and the target devices.  Chaque déploiement possède un manifeste de déploiement qui reflète ces informations.Each deployment has a deployment manifest that reflects this information.
  2. Le service de IoT Hub communique avec tous les appareils ciblés pour les configurer avec les modules souhaités.The IoT Hub service communicates with all targeted devices to configure them with the declared modules.
  3. Le service IoT Hub récupère l’état des appareils IoT Edge et les met à la disposition de l’opérateur.The IoT Hub service retrieves status from the IoT Edge devices and makes them available to the operator.   Par exemple, un opérateur voit quand un appareil Edge n’est pas correctement configuré ou si un module échoue en cours de runtime.For example, an operator can see when an Edge device isn't configured successfully or if a module fails during runtime.
  4. À tout moment, les nouveaux appareils IoT Edge qui remplissent les conditions de ciblage sont configurés pour le déploiement.At any time, new IoT Edge devices that meet the targeting conditions are configured for the deployment.

Cet article décrit chaque composant impliqué dans la configuration et la surveillance d’un déploiement.This article describes each component involved in configuring and monitoring a deployment. Pour connaître la procédure de création et de mise à jour d’un déploiement, consultez Déployer et surveiller des modules IoT Edge à l’échelle.For a walkthrough of creating and updating a deployment, see Deploy and monitor IoT Edge modules at scale.

DéploiementDeployment

Un déploiement automatique IoT Edge assigne des images de module IoT Edge à exécuter en tant qu’instances sur un ensemble ciblé d’appareils IoT Edge.An IoT Edge automatic deployment assigns IoT Edge module images to run as instances on a targeted set of IoT Edge devices. Il fonctionne en configurant un manifeste de déploiement IoT Edge pour inclure une liste de modules comprenant les paramètres d’initialisation correspondants.It works by configuring an IoT Edge deployment manifest to include a list of modules with the corresponding initialization parameters.  Un déploiement peut être affecté à un appareil unique (basé sur l’ID de l’appareil) ou à un groupe d’appareils (basé sur des balises).A deployment can be assigned to a single device (based on Device ID) or to a group of devices (based on tags).  Lorsqu’un appareil IoT Edge reçoit un manifeste de déploiement, il télécharge et installe les images conteneurs dans les référentiels conteneurs respectifs, puis les configure en conséquence.Once an IoT Edge device receives a deployment manifest, it downloads and installs the container images from the respective container repositories, and configures them accordingly.  Une fois qu’un déploiement est créé, un opérateur peut surveiller l’état de déploiement pour voir si les appareils ciblés sont configurés correctement.Once a deployment is created, an operator can monitor the deployment status to see whether targeted devices are correctly configured.

Seuls les appareils IoT Edge peuvent être configurés avec un déploiement.Only IoT Edge devices can be configured with a deployment. L’appareil destiné à recevoir le déploiement doit satisfaire aux prérequis suivants :The following prerequisites must be on the device before it can receive the deployment:

  • Le système d’exploitation de baseThe base operating system
  • Un système de gestion de conteneur, comme Moby ou DockerA container management system, like Moby or Docker
  • L’approvisionnement du runtime IoT EdgeProvisioning of the IoT Edge runtime

Manifeste de déploiementDeployment manifest

Un manifeste de déploiement est un document JSON qui décrit les modules devant être configurés sur les appareils IoT Edge ciblés.A deployment manifest is a JSON document that describes the modules to be configured on the targeted IoT Edge devices. Il contient les métadonnées de configuration pour tous les modules, y compris les modules système requis (en particulier l’agent de IoT Edge et l’hub IoT Edge).It contains the configuration metadata for all the modules, including the required system modules (specifically the IoT Edge agent and IoT Edge hub).

Les métadonnées de configuration pour chaque module incluent :The configuration metadata for each module includes:

  • VersionVersion
  • TypeType
  • État (par exemple, en cours d’exécution ou arrêté)Status (for example, running or stopped)
  • Stratégie de redémarrageRestart policy
  • Registre d’images et de conteneursImage and container registry
  • Itinéraires pour les données en entrée et en sortieRoutes for data input and output

Si l’image du module est stockée dans un registre de conteneurs privé, l’agent IoT Edge conserve les informations d’identification du registre.If the module image is stored in a private container registry, the IoT Edge agent holds the registry credentials.

Condition cibleTarget condition

La condition cible est évaluée en permanence sur toute la durée de vie du déploiement.The target condition is continuously evaluated throughout the lifetime of the deployment. Les nouveaux appareils qui répondent aux exigences sont inclus ; tous les appareils existants qui n’y satisfont plus sont supprimés.Any new devices that meet the requirements are included, and any existing devices that no longer do are removed. Le déploiement est réactivé si le service détecte une modification de la condition cible.The deployment is reactivated if the service detects any target condition change.

Prenons l’exemple d’un déploiement comportant une condition cible tags.environment = ’prod’.For example, you have a deployment with a target condition tags.environment = 'prod'. Au lancement du déploiement, il y a 10 appareils de production.When you kick off the deployment, there are 10 production devices. Les modules sont correctement installés sur ces 10 appareils.The modules are successfully installed in these 10 devices. L’état de l’agent IoT Edge affiche 10 appareils au total, 10 réponses correctes, 0 réponse erronée et 0 réponse en attente.The IoT Edge agent status shows 10 total devices, 10 successful responses, 0 failure responses, and 0 pending responses. On ajoute maintenant cinq appareils avec tags.environment = 'prod'.Now you add five more devices with tags.environment = 'prod'. Le service détecte la modification, et l’état de l’agent IoT Edge devient : 15 appareils au total, 10 réponses correctes, 0 réponse erronée et 5 réponses en attente quand il déploie sur cinq nouveaux appareils.The service detects the change and the IoT Edge agent status becomes 15 total devices, 10 successful responses, 0 failure responses, and 5 pending responses while it deploys to the five new devices.

Utilisez une condition booléenne sur des balises de jumeaux d’appareils, propriétés signalées de jumeaux d'appareils ou deviceId pour sélectionner les appareils cibles.Use any Boolean condition on device twin tags, device twin reported properties, or deviceId to select the target devices. Si vous souhaitez utiliser une condition avec des balises, vous devez ajouter les propriétés "tags":{} dans le jumeau d’appareil au même niveau.If you want to use condition with tags, you need to add "tags":{} section in the device twin under the same level as properties. En savoir plus sur les balises dans le jumeau d’appareilLearn more about tags in device twin

Exemples de conditions cibles :Examples of target conditions:

  • deviceId =’linuxprod1’deviceId ='linuxprod1'
  • tags.environment =’prod’tags.environment ='prod'
  • tags.environment = ’prod’ AND tags.location = ’westus’tags.environment = 'prod' AND tags.location = 'westus'
  • tags.environment = ’prod’ OR tags.location = ’westus’tags.environment = 'prod' OR tags.location = 'westus'
  • tags.operator = 'John' AND tags.environment = 'prod' AND NOT deviceId = 'linuxprod1'tags.operator = 'John' AND tags.environment = 'prod' AND NOT deviceId = 'linuxprod1'
  • properties.reported.devicemodel = '4000x'properties.reported.devicemodel = '4000x'

Prenez en compte les contraintes suivantes lorsque vous créez une condition cible :Consider these constraints when you construct a target condition:

  • Dans le jumeau d’appareil, seuls les balises, propriétés signalées et deviceId permettent de créer une condition cible.In device twin, you can only build a target condition using tags, reported properties, or deviceId.
  • Les guillemets doubles ne sont autorisés nulle part dans la condition cible.Double quotes aren't allowed in any portion of the target condition. Utilisez des guillemets simples.Use single quotes.
  • Les guillemets simples représentent les valeurs de la condition cible.Single quotes represent the values of the target condition. Par conséquent, vous devez échapper le guillemet simple avec un autre guillemet simple s’il fait partie du nom de l’appareil.Therefore, you must escape the single quote with another single quote if it's part of the device name. Par exemple, pour cibler un appareil nommé operator'sDevice, écrivez deviceId='operator''sDevice'.For example, to target a device called operator'sDevice, write deviceId='operator''sDevice'.
  • Les nombres, les lettres et les caractères suivants sont autorisés dans les valeurs de la condition cible : -:.+%_#*?!(),=@;$.Numbers, letters, and the following characters are allowed in target condition values: -:.+%_#*?!(),=@;$.

PriorityPriority

Une priorité définit si un déploiement doit être appliqué à un appareil ciblé par rapport à d’autres déploiements.A priority defines whether a deployment should be applied to a targeted device relative to other deployments. Une priorité de déploiement est un entier positif. Plus le nombre est élevé, plus la priorité est supérieure.A deployment priority is a positive integer, with larger numbers denoting higher priority. Si un périphérique IoT Edge est ciblé par plusieurs déploiements, le déploiement avec la priorité la plus élevée s’applique.If an IoT Edge device is targeted by more than one deployment, the deployment with the highest priority applies.   Les déploiements avec une priorité plus faible ne sont pas appliqués, ni fusionnés.Deployments with lower priorities are not applied, nor are they merged.   Si un périphérique est ciblé par au moins deux déploiements de priorité égale, c’est le déploiement créé le plus récemment (déterminé par l’horodatage de création) qui s’applique.If a device is targeted with two or more deployments with equal priority, the most recently created deployment (determined by the creation timestamp) applies.

ÉtiquettesLabels

Les étiquettes sont des paires clé-valeur de type chaîne que vous pouvez utiliser pour filtrer et grouper les déploiements.Labels are string key/value pairs that you can use to filter and group deployments.  Un déploiement peut avoir plusieurs étiquettes.A deployment may have multiple labels. Les étiquettes sont facultatives et n’ont aucun impact sur la configuration des appareils IoT Edge.Labels are optional and don't impact the actual configuration of IoT Edge devices.

MesuresMetrics

Par défaut, tous les déploiements rapportent quatre métriques :By default, all deployments report on four metrics:

  • Ciblé affiche les périphériques IoT Edge qui correspondent à la condition de ciblage du déploiement.Targeted shows the IoT Edge devices that match the Deployment targeting condition.
  • Appliqué affiche les appareils IoT Edge ciblés qui ne sont pas ciblés par un autre déploiement de priorité plus élevée.Applied shows the targeted IoT Edge devices that are not targeted by another deployment of higher priority.
  • Signalement d'une réussite affiche les appareils IoT Edge ayant signalé le bon déploiement des modules.Reporting Success shows the IoT Edge devices that have reported that the modules have been deployed successfully.
  • Signalement d’un échec affiche les appareils IoT Edge ayant signalé l'échec de déploiement d'un ou plusieurs modules.Reporting Failure shows the IoT Edge devices that have reported that one or more modules haven't been deployed successfully. Pour examiner l’erreur plus en détail, connectez-vous à distance à ces appareils et consultez les fichiers journaux.To further investigate the error, connect remotely to those devices and view the log files.

En outre, vous pouvez définir vos propres mesures personnalisées pour faciliter la surveillance et la gestion du déploiement.Additionally, you can define your own custom metrics to help monitor and manage the deployment.

Les métriques fournissent des nombres récapitulatifs des différents états qu’un appareil peut signaler après l’application d’une configuration de déploiement.Metrics provide summary counts of the various states that devices may report back as a result of applying a deployment configuration. Les métriques peuvent interroger des propriétés signalées du jumeau de module edgeHub, telles que lastDesiredStatus ou lastConnectTime.Metrics can query edgeHub module twin reported properties, like lastDesiredStatus or lastConnectTime. Par exemple :For example:

SELECT deviceId FROM devices
  WHERE properties.reported.lastDesiredStatus.code = 200

L'ajout de vos propres métriques est facultatif et n’a aucun impact sur la configuration des appareils IoT Edge.Adding your own metrics is optional, and doesn't impact the actual configuration of IoT Edge devices.

Déploiement en couchesLayered deployment

Les déploiements en couches sont des déploiements automatiques qui peuvent être combinés afin de réduire le nombre de déploiements uniques à créer.Layered deployments are automatic deployments that can be combined together to reduce the number of unique deployments that need to be created. Les déploiements en couches s'avèrent utiles dans les scénarios où les mêmes modules sont réutilisés selon différentes combinaisons dans de nombreux déploiements automatiques.Layered deployments are useful in scenarios where the same modules are reused in different combinations in many automatic deployments.

Les déploiements en couches possèdent les mêmes composants de base que n’importe quel déploiement automatique.Layered deployments have the same basic components as any automatic deployment. Ils ciblent les appareils en fonction des balises présentes dans les jumeaux d'appareil et fournissent les mêmes fonctionnalités en termes d'étiquettes, de métriques et de rapports d’état.They target devices based on tags in the device twins, and provide the same functionality around labels, metrics, and status reporting. Les déploiements en couches sont également associés à des priorités et celles-ci sont utilisées pour déterminer le classement de plusieurs déploiements sur un appareil, et non le déploiement à lui appliquer.Layered deployments also have priorities assigned to them, but instead of using the priority to determine which deployment is applied to a device, the priority determines how multiple deployments are ranked on a device. Par exemple, si deux déploiements en couches présentent un module ou un itinéraire portant le même nom, le déploiement en couches doté de la priorité la plus élevée est appliqué et remplace la priorité la plus faible.For example, if two layered deployments have a module or a route with the same name, the layered deployment with the higher priority will be applied while the lower priority is overwritten.

Les modules d’exécution du système, edgeAgent et edgeHub, ne sont pas configurés dans le cadre d’un déploiement en couches.The system runtime modules, edgeAgent and edgeHub, are not configured as part of a layered deployment. Tout appareil IoT Edge ciblé par un déploiement en couches doit d'abord faire l'objet d'un déploiement automatique standard.Any IoT Edge device targeted by a layered deployment needs a standard automatic deployment applied to it first. Ce déploiement automatique fait office de base sur laquelle ajouter les déploiements en couches.The automatic deployment provides the base upon which layered deployments can be added.

Un appareil IoT Edge ne peut appliquer qu'un seul déploiement automatique standard, mais peut appliquer plusieurs déploiements automatiques en couches.An IoT Edge device can apply one and only one standard automatic deployment, but it can apply multiple layered automatic deployments. Les déploiements en couches ciblant un appareil doivent avoir une priorité plus élevée que le déploiement automatique pour cet appareil.Any layered deployments targeting a device must have a higher priority than the automatic deployment for that device.

Prenons pour exemple une entreprise gérant des bâtiments.For example, consider the following scenario of a company that manages buildings. Cette dernière a développé des modules IoT Edge pour collecter des données à partir de caméras de sécurité, de capteurs de mouvement et d’ascenseurs.They developed IoT Edge modules for collecting data from security cameras, motion sensors, and elevators. Cela étant, tous ses bâtiments ne peuvent pas utiliser les trois modules.However, not all their buildings can use all three modules. Avec les déploiements automatiques standard, l’entreprise doit créer des déploiements individuels pour toutes les combinaisons de modules dont ses bâtiments ont besoin.With standard automatic deployments, the company needs to create individual deployments for all the module combinations that their buildings need.

Les déploiements automatiques standard doivent s’adapter à chaque combinaison de modules.

Toutefois, lorsque l'entreprise bascule vers des déploiements automatiques en couches, elle peut créer les mêmes combinaisons de modules pour ses bâtiments, tout en réduisant ses déploiements à gérer.However, once the company switches to layered automatic deployments they find that they can create the same module combinations for their buildings with fewer deployments to manage. Chaque module possède son propre déploiement en couches, et les balises des appareils identifient les modules ajoutés à chaque bâtiment.Each module has its own layered deployment, and the device tags identify which modules get added to each building.

Le déploiement automatique en couches simplifie les scénarios dans lesquels les mêmes modules sont combinés de différentes façons

Configuration de jumeau de moduleModule twin configuration

Lorsque vous utilisez les déploiements en couches, vous pouvez, intentionnellement ou non, avoir deux déploiements avec le même module ciblant un appareil.When you work with layered deployments, you may, intentionally or otherwise, have two deployments with the same module targeting a device. Dans ces cas, vous pouvez décider si le déploiement doté d’une priorité plus élevée doit remplacer le jumeau de module ou s’y ajouter.In those cases, you can decide whether the higher priority deployment should overwrite the module twin or append to it. Par exemple, vous pouvez avoir un déploiement qui applique le même module à 100 appareils différents.For example, you may have a deployment that applies the same module to 100 different devices. Pour autant, dix de ces appareils se trouvent dans des installations sécurisées et nécessitent une configuration supplémentaire pour pouvoir communiquer via les serveurs proxy.However, 10 of those devices are in secure facilities and need additional configuration in order to communicate through proxy servers. Vous pouvez utiliser un déploiement en couches pour ajouter des propriétés de jumeau de module permettant à ces dix appareils de communiquer en toute sécurité, sans remplacer les informations de jumeau de module existantes du déploiement de base.You can use a layered deployment to add module twin properties that enable those 10 devices to communicate securely without overwriting the existing module twin information from the base deployment.

Vous pouvez ajouter les propriétés de jumeau de module souhaitées dans le manifeste de déploiement.You can append module twin desired properties in the deployment manifest. Alors que dans un déploiement standard, vous ajoutez des propriétés à la section properties.desired du jumeau de module, dans un déploiement en couches, vous pouvez déclarer un nouveau sous-ensemble de propriétés souhaitées.Where in a standard deployment you would add properties in the properties.desired section of the module twin, in a layered deployment you can declare a new subset of desired properties.

Par exemple, dans un déploiement standard, vous pouvez ajouter le module de capteur de température simulé avec les propriétés souhaitées suivantes pour lui indiquer d’envoyer les données à intervalles de 5 secondes :For example, in a standard deployment you might add the simulated temperature sensor module with the following desired properties that tell it to send data in 5-second intervals:

"SimulatedTemperatureSensor": {
  "properties.desired": {
    "SendData": true,
    "SendInterval": 5
  }
}

Dans un déploiement en couches ciblant tout ou partie des appareils identiques, vous pouvez ajouter une propriété indiquant au capteur simulé d’envoyer 1 000 messages, puis de s’arrêter.In a layered deployment that targets some or all of the same devices, you could add a property that tells the simulated sensor to send 1000 messages and then stop. Pour ne pas remplacer les propriétés existantes, vous créez une section dans les propriétés souhaitées appelée layeredProperties, contenant la nouvelle propriété :You don't want to overwrite the existing properties, so you create a new section within the desired properties called layeredProperties, which contains the new property:

"SimulatedTemperatureSensor": {
  "properties.desired.layeredProperties": {
    "StopAfterCount": 1000
  }
}

Un appareil auquel les deux déploiements sont appliqués indique les propriétés suivantes dans le jumeau de module pour le capteur de température simulé :A device that has both deployments applied will reflect the following properties in the module twin for the simulated temperature sensor:

"properties": {
  "desired": {
    "SendData": true,
    "SendInterval": 5,
    "layeredProperties": {
      "StopAfterCount": 1000
    }
  }
}

Si vous définissez le champ properties.desired du jumeau de module dans un déploiement en couches, les propriétés souhaitées pour ce module sont remplacées dans les déploiements de priorité inférieure.If you do set the properties.desired field of the module twin in a layered deployment, it will overwrite the desired properties for that module in any lower priority deployments.

Déploiement progressifPhased rollout

Un déploiement progressif est un processus global par lequel un opérateur déploie les modifications sur un ensemble étendu d’appareils IoT Edge.A phased rollout is an overall process whereby an operator deploys changes to a broadening set of IoT Edge devices. L’objectif est d’apporter des modifications progressivement afin de réduire le risque d’étendre les modifications avec rupture à une plus grande échelle.The goal is to make changes gradually to reduce the risk of making wide scale breaking changes. Les déploiements automatiques facilitent la gestion des déploiements progressifs sur une flotte d'appareils IoT Edge.Automatic deployments help manage phased rollouts across a fleet of IoT Edge devices.

Un déploiement progressif est exécuté dans les phases et étapes suivantes :A phased rollout is executed in the following phases and steps:

  1. Établissez un environnement de tests d’appareils IoT Edge en les approvisionnant et en paramétrant une balise de jumeau d’appareil comme tag.environment='test'.Establish a test environment of IoT Edge devices by provisioning them and setting a device twin tag like tag.environment='test'.  L’environnement de test doit refléter l’environnement de production que le déploiement va cibler.The test environment should mirror the production environment that the deployment will eventually target.
  2. Créez un déploiement comprenant les modules et les configurations souhaités.Create a deployment including the desired modules and configurations. La condition de ciblage doit cibler l’environnement de test des appareils IoT Edge.The targeting condition should target the test IoT Edge device environment.
  3. Validez la nouvelle configuration du module dans l’environnement de test.Validate the new module configuration in the test environment.
  4. Mettez à jour le déploiement pour inclure un sous-ensemble d’appareils de production IoT Edge en ajoutant une nouvelle balise à la condition de ciblage.Update the deployment to include a subset of production IoT Edge devices by adding a new tag to the targeting condition. En outre, assurez-vous que la priorité pour le déploiement est supérieure aux autres déploiements actuellement ciblés sur ces appareils.Also, ensure that the priority for the deployment is higher than other deployments currently targeted to those devices
  5. Vérifiez que le déploiement a réussi sur les appareils IoT ciblés en consultant l’état du déploiement.Verify that the deployment succeeded on the targeted IoT Devices by viewing the deployment status.
  6. Mettez à jour le déploiement afin de cibler tous les appareils de production IoT Edge restants.Update the deployment to target all remaining production IoT Edge devices.

RestaurationRollback

Les déploiements peuvent être restaurés en cas d’erreur ou de mauvaise configuration.Deployments can be rolled back if you receive errors or misconfigurations.  Étant donné qu’un déploiement définit la configuration de module absolue pour un appareil IoT Edge, un déploiement supplémentaire doit cibler le même appareil à une priorité inférieure, même si l’objectif est de supprimer tous les modules.Because a deployment defines the absolute module configuration for an IoT Edge device, an additional deployment must also be targeted to the same device at a lower priority even if the goal is to remove all modules.

La suppression d’un déploiement ne supprime pas les modules des appareils ciblés.Deleting a deployment doesn't remove the modules from targeted devices. Un autre déploiement doit définir une nouvelle configuration pour les appareils, même s’il s’agit d’un déploiement vide.There must be another deployment that defines a new configuration for the devices, even if it's an empty deployment.

Effectuez des restaurations dans l’ordre suivant :Perform rollbacks in the following sequence:

  1. Confirmez qu’un deuxième déploiement cible également le même ensemble d’appareils.Confirm that a second deployment is also targeted at the same device set. Si l’objectif de la restauration est de supprimer tous les modules, le deuxième déploiement ne doit pas contenir de module.If the goal of the rollback is to remove all modules, the second deployment should not include any modules.
  2. Modifiez ou supprimez l’expression de la condition cible du déploiement que vous souhaitez restaurer de façon à ce que les appareils ne répondent pas à la condition de ciblage.Modify or remove the target condition expression of the deployment you wish to roll back so that the devices no longer meet the targeting condition.
  3. Vérifiez que la restauration a réussi en consultant l’état du déploiement.Verify that the rollback succeeded by viewing the deployment status.
    • Le déploiement restauré ne doit plus afficher d’état pour les appareils qui ont été restaurés.The rolled-back deployment should no longer show status for the devices that were rolled back.
    • Le deuxième déploiement doit désormais inclure l’état de déploiement pour les appareils qui ont été restaurés.The second deployment should now include deployment status for the devices that were rolled back.

Étapes suivantesNext steps