Architecture de référence Azure IoT

Azure Functions
Azure IoT Hub
Azure Stream Analytics
Azure Digital Twins

Vous pouvez créer des solutions IoT personnalisées en assemblant des composants de plateforme Azure en tant que service (PaaS), comme le décrit cet article. L’article et ce diagramme décrivent les composants et services Azure que les solutions IoT utilisent couramment, mais aucune solution n’utilise tous ces composants.

Architecture

Diagramme qui présente l'architecture pour les applications IoT qui utilisent des composants Azure PaaS.

Téléchargez un fichier Visio de cette architecture.

Workflow

Le workflow suivant correspond au diagramme précédent :

  • Les éléments, il s’agit généralement des appareils qui génèrent des données.
  • Les insights que vous formez sur les données.
  • Les actions que vous effectuez en fonction des insights.

Prenons l’exemple d’un moteur qui envoie des données de température. Vous pouvez utiliser ces données pour déterminer si le moteur fonctionne comme prévu. Vous utilisez les insights sur les performances du moteur pour hiérarchiser son calendrier de maintenance.

.

Azure IoT prend en charge un large éventail d’appareils, des microcontrôleurs exécutant Azure Sphere aux cartes pour développeurs telles que MXCHIP et Raspberry Pi. Azure IoT prend également en charge les passerelles de serveurs intelligents capables d'exécuter du code personnalisé. Les appareils peuvent effectuer un traitement local par le biais d'un service tel qu'Azure IoT Edge, ou se connecter directement à Azure afin de pouvoir envoyer des données à la solution IoT et en recevoir de celle-ci.

Lorsque les appareils sont connectés au cloud, plusieurs services facilitent l'ingestion des données. Azure IoT Hub est un service de passerelle cloud qui permet de connecter et de gérer des appareils en toute sécurité. Le Service IoT Hub Device Provisioning Azure permet un approvisionnement sans contact et juste-à-temps pour inscrire un grand nombre d'appareils de manière sécurisée et évolutive. Azure Digital Twins permet de créer des modèles virtuels de systèmes du monde réel.

Informations

Une fois que les appareils sont connectés au cloud, vous pouvez traiter et explorer leurs données pour obtenir des insights personnalisés sur leur environnement. De façon générale, il existe trois façons de traiter les données : le chemin à chaud, le chemin intermédiaire et le chemin à froid. Les chemins d’accès diffèrent dans leurs exigences en matière de latence et d’accès aux données.

  • Le chemin chaud analyse les données en quasi temps réel, à mesure qu'elles arrivent. Les données de télémétrie du chemin à chaud doivent être traitées avec une latence faible. En général, le chemin à chaud utilise un moteur de traitement de flux. Vous pouvez utiliser des services tels qu’Azure Stream Analytics ou Azure HDInsight. La sortie peut déclencher une alerte, ou être écrite dans un format structuré qui peut être interrogé en utilisant des outils d’analyse.
  • Le chemin intermédiaire analyse les données qui peuvent prendre en charge des délais plus longs pour un traitement plus détaillé. Pour stocker et analyser de gros volumes de données, vous pouvez utiliser Azure Data Explorer.
  • Le chemin à froid effectue un traitement par lots à des intervalles plus longs, c’est-à-dire toutes les heures ou chaque jour. Le chemin à froid fonctionne généralement sur des volumes importants de données pouvant être stockés dans Azure Data Lake Storage. Les résultats n’ont pas besoin d’être aussi rapides qu’avec les chemins chauds ou intermédiaires. Pour analyser des données froides, vous pouvez utiliser Azure Machine Learning ou Azure Databricks.

Actions

Vous pouvez utiliser les insights que vous avez recueillis sur données pour gérer et contrôler votre environnement. Les actions d’intégration métier peuvent inclure :

  • Stockage des messages d'information
  • Déclenchement des alarmes
  • Envoi d’e-mails ou de SMS
  • Intégration avec des applications métiers telles que les solutions logicielles de gestion de la relation client (CRM) et de planification des ressources de l'entreprise (ERP).

Vous pouvez utiliser les services suivants sont disponibles pour la gestion et l’intégration métier :

  • Power BI se connecte à vos données, les modélise et les visualise. Power BI vous permet de collaborer sur les données, et d'utiliser l'intelligence artificielle pour prendre des décisions pilotées par les données.
  • Azure Maps crée des applications web et mobiles prenant en charge l’emplacement à l’aide d’API géospatiales, de kits de développement logiciel (SDK) et de services tels que la recherche, les cartes, le routage, le suivi et le trafic.
  • Recherche Azure AI fournit une récupération sécurisée des informations à grande échelle sur le contenu appartenant à l’utilisateur dans les applications de recherche d'IA traditionnelles et génératives. AI Search dispose de capacités d'indexation, d'enrichissement de l'IA et de recherche.
  • Azure API Management vous permet de gérer l'ensemble de vos API.
  • Azure App Service déploie des applications web qui évoluent en même temps que votre organisation.
  • Azure Mobile Apps crée des applications natives et multiplateformes pour iOS, Android, Windows ou macOS.
  • Dynamics 365 combine des solutions logicielles de gestion de la relation client et d'ERP dans le cloud.
  • Microsoft Power Automate est une offre de logiciel en tant que service (Saas) pour l'automatisation des workflows dans les applications et autres services SaaS.
  • Azure Logic Apps crée et automatise les workflows qui s’intègrent à vos applications, données, services et systèmes.

Azure fournit également différents services pour vous aider à surveiller l’ensemble de votre solution IoT et à en assurer la sécurité. Les services de diagnostic incluent Azure Monitor. Les services de sécurité tels que Microsoft Entra ID et Microsoft Defender pour IoT vous aident à contrôler, visualiser et gérer les paramètres de sécurité, ainsi que la détection des menaces et la réponse à celles-ci.

Composants

Considérations

Ces considérations implémentent les piliers d’Azure Well-Architected Framework qui est un ensemble de principes directeurs qui permettent d’améliorer la qualité d’une charge de travail. Pour plus d’informations, consultez Microsoft Azure Well-Architected Framework.

Simplicité de gestion

Vous pouvez utiliser Azure Digital Twins pour contrôler et surveiller les environnements connectés. Un jumeau numérique est un modèle virtuel d'un environnement du monde réel qui est piloté par des données issues de systèmes d'entreprise et d'appareils IoT. Les entreprises et les organisations utilisent des jumeaux numériques pour activer les insights et les actions. Les développeurs et les architectes utilisent des solutions de jumeau numérique pour implémenter des environnements intelligents et connectés tels que :

  • Maintenance prédictive dans le secteur de l’industrie.
  • Visibilité de la chaîne d’approvisionnement.
  • Étagères intelligentes pour un inventaire en temps réel.
  • Maisons connectées et bâtiments intelligents.

Fiabilité

La fiabilité permet de s’assurer que votre application tient vos engagements auprès de vos clients. Pour en savoir plus, consultez Liste de contrôle de l'examen de la conception pour la fiabilité.

La continuité d'activité et reprise d'activité constitue un domaine clé à prendre en compte pour des solutions IoT résilientes. La conception pour la haute disponibilité (HA) et la reprise après sinistre (DR) peut vous aider à définir et à atteindre les objectifs de temps de disponibilité requis pour votre solution.

Différents services Azure offrent différentes options de redondance et de basculement pour vous aider à atteindre les objectifs de durée de bon fonctionnement qui conviennent le mieux à vos objectifs stratégiques. L’intégration de ces alternatives de haute disponibilité/récupération d’urgence dans votre solution IoT suppose d’évaluer minutieusement les compromis entre :

  • le niveau de résilience dont vous avez besoin ;
  • la complexité d’implémentation et de maintenance ;
  • Impact du coût des marchandises vendues (COGS).

Vous trouverez des informations sur les performances spécifiques aux services dans la documentation de chaque service Azure IoT.

Sécurité

La sécurité fournit des garanties contre les attaques délibérées, et contre l’utilisation abusive de vos données et systèmes importants. Pour en savoir plus, consultez Liste de contrôle de l'examen de la conception pour la sécurité.

Modèle de sécurité Confiance Zéro

Confiance Zéro est un modèle de sécurité qui suppose que des violations se produiront et qui traite chaque tentative d’accès comme si elle provenait d’un réseau ouvert. Confiance Zéro part du principe que vous avez implémenté les bases, comme la sécurisation des identités et la limitation des accès.

Les bases de la sécurité impliquent de vérifier explicitement les utilisateurs, d’avoir une visibilité sur leurs appareils et de pouvoir prendre des décisions d’accès dynamiques en utilisant la détection des risques en temps réel. Une fois les bases mises en place, vous pouvez vous concentrer sur les exigences suivantes en matière de Confiance Zéro pour les solutions IoT :

  • Utilisez une identité forte pour authentifier les appareils.
  • Utilisez le droit d'accès minimal pour réduire le rayon d'impact.
  • Surveillez l'intégrité des appareils pour leur interdire l'accès ou les signaler afin qu'ils soient corrigés.
  • Effectuez des mises à jour pour maintenir l'intégrité des appareils.
  • Exercez une surveillance pour détecter les menaces émergentes et y répondre.

Communication fiable et sécurisée

Toutes les informations reçues d’un appareil et envoyées vers celui-ci doivent être dignes de confiance. À moins qu’un appareil puisse prendre en charge les fonctionnalités de chiffrement suivantes, il doit être limité aux réseaux locaux et toutes les communications d’interconnexion doivent passer par une passerelle locale :

  • Chiffrement des données et signatures numériques avec un algorithme de chiffrement à clé symétrique publiquement analysé, largement implémenté et dont la sécurité a été prouvée.
  • Prise en charge soit de TLS 1.2 pour TCP ou d’autres chemins de communication basés sur les flux de données, soit de DTLS 1.2 pour les chemins de communication basés sur un datagramme. La prise en charge de la gestion des certificats X.509 est facultative. Vous pouvez remplacer les certificats X.509 par le mode de clé prépartagée plus efficace en ce qui concerne le calcul et la communication pour TLS. Ce mode peut être implémenté avec une prise en charge des algorithmes AES et SHA-2.
  • Clés par appareil et magasin de clés pouvant être mis à jour. Chaque appareil doit disposer d'une clé ou d'un jeton unique qui l'identifie auprès du système. Les appareils doivent stocker la clé de manière sécurisée sur l’appareil (par exemple, à l’aide d’un magasin de clés sécurisé). L’appareil doit être en mesure de mettre à jour les clés ou les jetons régulièrement ou de façon réactive dans des situations d’urgence comme une intrusion dans le système.
  • Les microprogrammes et les logiciels d’application sur l’appareil doivent autoriser les mises à jour pour permettre la réparation des failles de sécurité détectées.

De nombreux appareils comportent trop de contraintes pour prendre en charge ces exigences. Dans ce cas, vous devez utiliser une passerelle locale. Les appareils se connectent de manière sécurisée à la passerelle locale via un réseau local, et la passerelle permet une communication sécurisée vers le cloud.

Protection contre la falsification physique

Nous recommandons que la conception de l’appareil intègre des fonctionnalités qui assurent une protection contre les tentatives de manipulation physique, afin de garantir l’intégrité et la fiabilité de la sécurité du système global.

Par exemple :

  • Choisissez des microcontrôleurs/microprocesseurs ou du matériel auxiliaire qui fourni un stockage sécurisé et l’utilisation d’un élément de clé de chiffrement, comme l’intégration d’un module de plateforme sécurisée (TPM).
  • Chargeur de démarrage sécurisé d’ancre et chargement de logiciel sécurisé dans le TPM.
  • Utilisez des capteurs pour détecter les tentatives d’intrusion et les tentatives de manipulation de l’environnement de l’appareil, avec alerte et « autodestruction numérique » potentielle de l’appareil.

Optimisation des coûts

L’optimisation des coûts consiste à examiner les moyens de réduire les dépenses inutiles et d’améliorer l’efficacité opérationnelle. Pour plus d'informations, consultez Liste de contrôle de la révision de la conception pour l'optimisation des coûts.

En règle générale, utilisez la calculatrice de prix Azure pour estimer les coûts. D'autres considérations sont décrites dans la section Coûts de Microsoft Azure Well-Architected Framework.

Efficacité des performances

L’efficacité des performances est la capacité de votre charge de travail à s’adapter à la demande des utilisateurs de façon efficace. Pour en savoir plus, consultez Liste de vérification de l'examen de la conception pour l'efficacité des performances

Générez la solution que vous souhaitez déployer à l'échelle mondiale. Pour une scalabilité optimale, créez votre application IoT avec des services séparés pouvant faire l’objet d’une mise à l’échelle indépendante. Cette section décrit les considérations relatives à la scalabilité pour différents services Azure.

IoT Hub

Chaque hub IoT est approvisionné avec un certain nombre d'unités dans un niveau de prix et d'échelle spécifique. Le niveau et le nombre d’unités déterminent le quota quotidien maximal de messages que les appareils peuvent envoyer au hub. Pour plus d'informations, consultez Quotas et limitations IoT Hub. Vous pouvez effectuer un scale up d’un hub sans interrompre les opérations existantes.

Pour IoT Hub, tenez compte des facteurs d’échelle suivants :

  • Le quota quotidien maximal de messages dans IoT Hub.
  • Le quota d’appareils connectés dans une instance IoT Hub.
  • Débit d’ingestion : vitesse à laquelle IoT Hub peut ingérer des messages.
  • Débit de traitement : vitesse à laquelle les messages entrants sont traités.

IoT Hub partitionne automatiquement les messages d’appareil en fonction de l’ID de l’appareil. Tous les messages provenant d’un appareil particulier arrivent toujours sur la même partition, mais une seule et même partition a des messages provenant de plusieurs appareils. Par conséquent, l’unité de parallélisation est l’ID de la partition.

Azure Functions

Lorsque Azure Functions lit à partir d’un point de terminaison Azure Event Hubs, il existe un nombre maximal d’instances de fonction par partition Event Hub. La vitesse de traitement maximale est déterminée par la rapidité à laquelle une instance de fonction peut traiter les événements d’une partition unique. La fonction doit traiter les messages par lots.

Stream Analytics

Les tâches Stream Analytics supportent mieux la mise à l’échelle si elles sont parallèles sur tous les points du pipeline Stream Analytics, depuis l’entrée à interroger jusqu’à la sortie. Une tâche entièrement parallèle permet à Stream Analytics de répartir le travail entre plusieurs nœuds de calcul. Pour plus d’informations, consultez Profiter de la parallélisation de requête dans Azure Stream Analytics.

Contributeurs

Cet article est géré par Microsoft. Il a été écrit à l’origine par les contributeurs suivants.

Auteur principal :

Autre contributeur :

Pour afficher les profils LinkedIn non publics, connectez-vous à LinkedIn.

Étapes suivantes