Déployer Opérations Azure IoT sur un cluster Kubernetes avec Arc
Important
Opérations Azure IoT Préversion avec Azure Arc est actuellement en préversion. Vous ne devez pas utiliser ce logiciel en préversion dans des environnements de production.
Lorsqu’une version en disponibilité générale sera publiée, vous devrez déployer une nouvelle installation d’Opérations Azure IoT. Vous ne pourrez pas mettre à niveau une installation en préversion.
Pour connaître les conditions juridiques qui s’appliquent aux fonctionnalités Azure en version bêta, en préversion ou plus généralement non encore en disponibilité générale, consultez l’Avenant aux conditions d’utilisation des préversions de Microsoft Azure.
Découvrez comment déployer Opérations Azure IoT (préversion) sur un cluster Kubernetes en utilisant Azure CLI ou le Portail Azure.
Dans cet article, nous abordons les déploiements et les instances Opérations Azure IoT, qui sont deux concepts différents :
Un déploiement Opérations Azure IoT décrit tous les composants et ressources qui activent le scénario Opérations Azure IoT. Ces composants et ressources sont les suivants :
- Une instance Opérations Azure IoT
- Des extensions Arc
- Localisations personnalisées
- Les règles de synchronisation des ressources
- Les ressources que vous pouvez configurer dans votre solution Opérations Azure IoT, comme les ressources et les points de terminaison de ressources.
Une instance Opérations Azure IoT est la ressource parente qui regroupe la suite de services définis dans Présentation d’Opérations Azure IoT (préversion), comme l’Agent MQTT, les flux de données et le Connecteur OPC UA.
Lorsque nous parlons du déploiement d’Opérations Azure IoT, nous faisons référence à l’ensemble complet de composants qui forment un déploiement. Une fois que le déploiement existe, vous pouvez afficher, gérer et mettre à jour l’instance.
Prérequis
Ressources cloud :
Un abonnement Azure.
Un coffre de clés Azure. Pour créer un coffre de clés, utilisez la commande az keyvault create :
az keyvault create --enable-rbac-authorization --name "<NEW_KEYVAULT_NAME>" --resource-group "<RESOURCE_GROUP>"
Autorisations d’accès Azure. Pour plus d’informations, consultez Détails du déploiement > Autorisations requises.
Ressources de développement :
Azure CLI installé sur votre ordinateur de développement. Ce scénario nécessite Azure CLI version 2.64.0 ou ultérieure. Utilisez
az --version
pour vérifier votre version etaz upgrade
pour effectuer une mise à jour si nécessaire. Si vous souhaitez en savoir plus, veuillez consulter la rubrique Installation de l’interface de ligne de commande Azure.Extension Opérations Azure IoT pour Azure CLI. Utilisez la commande suivante pour ajouter l’extension ou la mettre à jour vers la dernière version :
az extension add --upgrade --name azure-iot-ops
Un hôte de cluster :
Un cluster Kubernetes avec Azure Arc sur lequel les fonctionnalités d’emplacement personnalisé et d’identité de charge de travail sont activées. Si vous n’en avez pas, suivez les étapes décrites dans Préparer votre cluster Kubernetes activé avec Azure Arc.
Si vous avez précédemment déployé Opérations Azure IoT sur votre cluster, désinstallez ces ressources avant de continuer. Pour obtenir plus d’informations, consultez Mettre à jour Opérations Azure IoT.
Vérifiez que votre hôte de cluster est correctement configuré pour le déploiement en exécutant la commande verify-host sur cet hôte :
az iot ops verify-host
(Facultatif) Avant de déployer Opérations Azure IoT, préparez votre cluster pour l’observabilité : configurez l’observabilité.
Déployer
Utilisez le portail Azure ou Azure CLI pour déployer Opérations Azure IoT sur votre cluster Kubernetes activé avec Arc.
L’expérience de déploiement du portail Azure est un outil d’assistance qui génère une commande de déploiement basée sur vos ressources et votre configuration. La dernière étape consiste à exécuter une commande Azure CLI. Vous avez donc toujours besoin des prérequis Azure CLI décrits dans la section précédente.
Dans le portail Azure, recherchez et sélectionnez Opérations Azure IoT.
Sélectionnez Créer.
Sous l’onglet De base, fournissez les informations suivantes :
Paramètre Valeur Abonnement Sélectionnez l’abonnement qui contient votre cluster avec Arc. Groupe de ressources Sélectionnez le groupe de ressources qui contient votre cluster avec Arc. Nom du cluster Sélectionnez le cluster sur lequel vous souhaitez déployer Opérations Azure IoT. Nom de l’emplacement personnalisé Facultatif : remplacez le nom par défaut de l’emplacement personnalisé. Sélectionnez Suivant : Configuration.
Sous l’onglet Configuration , fournissez les informations suivantes :
Paramètre Valeur Nom Opérations Azure IoT Facultatif : remplacez le nom par défaut de l’instance Opérations Azure IoT. Configuration du répartiteur MQTT Facultatif : modifiez les paramètres par défaut de l’Agent MQTT. Pour plus d’informations, consultez Configurer les paramètres principaux du répartiteur MQTT. Configuration du profil de flux de données Facultatif : modifiez les paramètres par défaut des flux de données. Pour plus d’informations, consultez Configurer le profil de flux de données. Sélectionnez Suivant : Gestion des dépendances.
Sous l’onglet Gestion des dépendances, sélectionnez un registre de schémas existant ou effectuez les étapes suivantes pour en créer un :
Sélectionnez Créer nouveau.
Indiquez un Nom de registre de schémas et un Espace de noms de registre de schémas.
Sélectionnez Sélectionner un conteneur de stockage Azure.
Choisissez un compte de stockage dans la liste des comptes avec espace de noms hiérarchique ou sélectionnez Créer pour en créer un.
Le registre de schémas nécessite un compte de stockage Azure sur lequel l’espace de noms hiérarchique et l’accès au réseau public sont activés. Lors de la création d’un compte de stockage, choisissez un type de compte de stockage Usage général v2 et définissez Espace de noms hiérarchique sur Activé.
Sélectionnez un conteneur dans votre compte de stockage ou sélectionnez Conteneur pour en créer un.
Sélectionnez Appliquer pour confirmer les configurations du registre de schémas.
Sous l’onglet Gestion des dépendances, sélectionnez l’option de déploiement Paramètres sécurisés.
Dans la section Options de déploiement, indiquez les informations suivantes :
Paramètre Valeur Abonnement Sélectionnez l’abonnement qui contient votre coffre de clés Azure. Azure Key Vault Sélectionnez un coffre de clés Azure, puis Créer nouveau.
Vérifiez que le modèle d’autorisation de votre coffre de clés est Stratégie d’accès au coffre. Pour vérifier ce paramètre, sélectionnez Gérer le coffre sélectionné>Paramètres>Configuration de l’accès.Identité managée affectée par l’utilisateur pour les secrets Sélectionnez une identité ou Créer nouveau. Identité managée affectée par l’utilisateur pour les composants AIO Sélectionnez une identité ou Créer nouveau. N’utilisez pas la même identité managée que celle que vous avez sélectionnée pour les secrets. Sélectionnez Suivant : Automation.
Exécutez une par une les commandes Azure CLI sous l’onglet Automatisation dans un terminal :
Connectez-vous à Azure CLI de manière interactive avec un navigateur, même si vous vous êtes déjà connecté avant. Si vous ne vous connectez pas de manière interactive, vous risquez d’obtenir une erreur indiquant que votre appareil doit être géré pour accéder à votre ressource lorsque vous passez à l’étape suivante pour déployer les Opérations Azure IoT.
az login
Si vous n’avez pas préparé votre environnement Azure CLI comme décrit dans les prérequis, faites-le maintenant dans un terminal de votre choix :
az upgrade az extension add --upgrade --name azure-iot-ops
Si vous avez choisi de créer un registre de schémas sous l’onglet précédent, copiez et exécutez la commande
az iot ops schema registry create
.Préparez votre cluster pour le déploiement d’Opérations Azure IoT en déployant les dépendances et les services fondamentaux, y compris le registre de schémas. Copiez et exécutez la commande
az iot ops init
.Conseil
La commande
init
ne doit être exécutée qu’une seule fois par cluster. Si vous réutilisez un cluster où Opérations Azure IoT version 0.7.0 était déjà déployé, vous pouvez ignorer cette étape.L’exécution de cette commande peut prendre plusieurs minutes. Vous pouvez observer la progression grâce à l’affichage de la progression du déploiement dans le terminal.
Déployez Opérations Azure IoT sur votre cluster. Copiez et exécutez la commande
az iot ops create
.L’exécution de cette commande peut prendre plusieurs minutes. Vous pouvez observer la progression grâce à l’affichage de la progression du déploiement dans le terminal.
Activez la synchronisation des secrets sur votre instance Opérations Azure IoT. Copiez et exécutez la commande
az iot ops secretsync enable
. Cette commande :- Crée des informations d’identification d’identité fédérée en utilisant l’identité managée affectée par l’utilisateur.
- Ajoute une attribution de rôle à l’identité managée affectée par l’utilisateur pour l’accès au coffre de clés Azure.
- Ajoute une classe de fournisseur de secrets minimale associée à l’instance Opérations Azure IoT.
Attribuez une identité managée affectée par l’utilisateur à votre instance Opérations Azure IoT. Copiez et exécutez la commande
az iot ops identity assign
.Cette commande crée également des informations d’identification d’identité fédérée en utilisant l’émetteur OIDC du cluster connecté indiqué et le compte de service Opérations Azure IoT.
Une fois toutes les commandes Azure CLI exécutées, vous pouvez fermer l’Assistant Installer Opérations Azure IoT.
Pendant que le déploiement est en cours, vous pouvez surveiller les ressources appliquées à votre cluster. Si votre terminal les prend en charge, les commandes init
et create
affichent la progression du déploiement.
Sinon, si vous choisissez de désactiver l’interface de progression en ajoutant --no-progress
aux commandes, vous pouvez utiliser des commandes kubectl pour afficher les pods sur votre cluster :
kubectl get pods -n azure-iot-operations
La fin du déploiement peut prendre plusieurs minutes. Réexécutez la commande get pods
pour actualiser votre vue.
Une fois le déploiement terminé, utilisez az iot ops check afin d’évaluer le déploiement du service Opérations IoT pour l’intégrité, la configuration et la facilité d’utilisation. La commande check peut vous aider à trouver des problèmes dans votre déploiement et dans votre configuration.
az iot ops check
Vous pouvez également vérifier les configurations des mappages de rubriques, QoS et itinéraires de message en ajoutant le paramètre --detail-level 2
pour une vue détaillée.
Étapes suivantes
Si vos composants doivent se connecter à des points de terminaison Azure tels que SQL ou Fabric, découvrez comment Gérer les secrets pour votre déploiement Opérations Azure IoT (préversion).