Préparer votre cluster Kubernetes avec Azure 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.
Un cluster Kubernetes avec Azure Arc est un prérequis pour le déploiement d’Opérations Azure IoT (préversion). Cet article explique comment préparer un cluster avant de Déployer Opérations Azure IoT (préversion) sur un cluster Kubernetes avec Arc. Cet article contient des conseils pour Ubuntu et Windows.
Conseil
Les étapes décrites dans cet article préparent votre cluster pour un déploiement de paramètres sécurisés, qui est un processus plus long mais prêt pour la production. Si vous souhaitez déployer rapidement Opérations Azure IoT et exécuter un exemple de charge de travail avec uniquement des paramètres de test, consultez plutôt Démarrage rapide : exécuter Opérations Azure IoT (préversion) dans GitHub Codespaces avec K3s.
Pour plus d’informations sur les paramètres de test et les paramètres sécurisés, consultez Détails du déploiement > Choisir vos fonctionnalités.
Prérequis
Opérations Azure IoT devrait fonctionner sur n’importe quel cluster Kubernetes avec Arc répondant à la configuration requise pour Kubernetes avec Azure Arc. Actuellement, Opérations Azure IoT ne prend pas en charge les architectures Arm64.
Microsoft prend en charge Azure Kubernetes Service (AKS) Edge Essentials pour les déploiements sur Windows et K3s pour les déploiements sur Ubuntu. Pour obtenir la liste des combinaisons matérielles et logicielles spécifiques testées et validées, consultez Environnements validés.
Si vous souhaitez déployer Opérations Azure IoT sur une solution à plusieurs nœuds, utilisez K3s sur Ubuntu.
Pour préparer votre cluster Kubernetes avec Azure Arc, vous devez disposer des éléments suivants :
Un abonnement Azure. Si vous n’avez pas d’abonnement Azure, créez-en un gratuitement avant de commencer.
Azure CLI version 2.64.0 ou ultérieure installée sur votre ordinateur de développement. 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.La dernière version des extensions suivantes pour Azure CLI :
az extension add --upgrade --name azure-iot-ops az extension add --upgrade --name connectedk8s
Matériel qui répond à la configuration requise :
- Vérifiez que votre machine dispose d’un minimum de 16 Go de RAM disponible, de 8 processeurs virtuels disponibles et d’un espace disque libre de 52 Go réservé pour Opérations Azure IoT.
- Configuration requise pour Kubernetes avec Azure Arc.
- Configuration requise et la matrice de prise en charge d’AKS Edge Essentials.
- Aide sur la mise en réseau AKS Edge Essentials.
Créer un cluster
Cette section fournit des étapes pour créer des clusters dans des environnements validés sur Linux et Windows.
Azure Kubernetes Service Edge Essentials est une implémentation Kubernetes locale d’Azure Kubernetes Service (AKS), qui automatise l’exécution d’applications conteneurisées à grande échelle. AKS Edge Essentials inclut une plateforme Kubernetes prise en charge par Microsoft qui inclut une distribution Kubernetes légère avec une petite empreinte et une expérience d’installation simple qui prend en charge un matériel de périphérie « léger » ou de classe PC.
Le script AksEdgeQuickStartForAio.ps1 automatise le processus de création et de connexion d’un cluster, et est le chemin recommandé pour le déploiement d’Opérations Azure IoT sur AKS Edge Essentials.
Ouvrez une fenêtre PowerShell avec élévation de privilèges et remplacez le répertoire par un dossier de travail.
Récupérez l’élément
objectId
de l’application Microsoft Entra ID utilisée par le service Azure Arc dans votre tenant. Exécutez la commande suivante exactement comme elle est écrite, sans changer la valeur GUID.az ad sp show --id bc313c14-388c-4e7d-a58e-70017303ee3b --query id -o tsv
Exécutez les commandes suivantes, en remplaçant les valeurs d’espace réservé par vos informations :
Paramètre substituable Valeur SUBSCRIPTION_ID ID de votre abonnement Azure. Si vous ne connaissez pas votre ID d’abonnement, consultez Trouver votre abonnement Azure. TENANT_ID ID de votre locataire Microsoft Entra. Si vous ne connaissez pas votre ID de locataire, consultez Trouver votre locataire Microsoft Entra. RESOURCE_GROUP_NAME Nom d’un groupe de ressources existant ou d’un groupe de ressources à créer. LOCATION Une région Azure proche de vous. Pour obtenir la liste des régions Azure actuellement prises en charge, consultez Régions prises en charge. CLUSTER_NAME Nom du cluster à créer. ARC_APP_OBJECT_ID Valeur d’ID d’objet que vous avez récupérée à l’étape précédente. $url = "https://raw.githubusercontent.com/Azure/AKS-Edge/main/tools/scripts/AksEdgeQuickStart/AksEdgeQuickStartForAio.ps1" Invoke-WebRequest -Uri $url -OutFile .\AksEdgeQuickStartForAio.ps1 Unblock-File .\AksEdgeQuickStartForAio.ps1 Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process -Force .\AksEdgeQuickStartForAio.ps1 -SubscriptionId "<SUBSCRIPTION_ID>" -TenantId "<TENANT_ID>" -ResourceGroupName "<RESOURCE_GROUP_NAME>" -Location "<LOCATION>" -ClusterName "<CLUSTER_NAME>" -CustomLocationOid "<ARC_APP_OBJECT_ID>"
S’il existe des problèmes pendant le déploiement, notamment si votre ordinateur redémarre dans le cadre de ce processus, réexécutez l’ensemble des commandes.
Exécutez les commandes suivantes pour vérifier que le déploiement a réussi :
Import-Module AksEdge Get-AksEdgeDeploymentInfo
Dans la sortie de la commande
Get-AksEdgeDeploymentInfo
, vous devez voir que l’état Arc du cluster estConnected
.
Activer votre cluster avec Arc
Connectez votre cluster à Azure Arc afin qu’il puisse être géré à distance.
Le script AksEdgeQuickStartForAio.ps1 que vous avez exécuté dans la section précédente a géré les étapes de connexion de votre cluster. Vous n’avez pas besoin d’effectuer des étapes supplémentaires pour activer Arc.
Vérifier votre cluster
Pour vérifier que votre cluster est prêt pour le déploiement d’Opérations Azure IoT, vous pouvez utiliser la commande d’assistance verify-host dans l’extension Opérations Azure IoT pour Azure CLI. Lorsqu’elle est exécutée sur l’hôte de cluster, cette commande d’assistance vérifie la connectivité aux points de terminaison Azure Resource Manager et Microsoft Container Registry.
az iot ops verify-host
Pour vérifier que votre cluster Kubernetes est activé pour Azure Arc, exécutez la commande suivante :
kubectl get deployments,pods -n azure-arc
La sortie ressemble à l’exemple suivant :
NAME READY UP-TO-DATE AVAILABLE AGE
deployment.apps/clusterconnect-agent 1/1 1 1 10m
deployment.apps/extension-manager 1/1 1 1 10m
deployment.apps/clusteridentityoperator 1/1 1 1 10m
deployment.apps/controller-manager 1/1 1 1 10m
deployment.apps/flux-logs-agent 1/1 1 1 10m
deployment.apps/cluster-metadata-operator 1/1 1 1 10m
deployment.apps/extension-events-collector 1/1 1 1 10m
deployment.apps/config-agent 1/1 1 1 10m
deployment.apps/kube-aad-proxy 1/1 1 1 10m
deployment.apps/resource-sync-agent 1/1 1 1 10m
deployment.apps/metrics-agent 1/1 1 1 10m
NAME READY STATUS RESTARTS AGE
pod/clusterconnect-agent-5948cdfb4c-vzfst 3/3 Running 0 10m
pod/extension-manager-65b8f7f4cb-tp7pp 3/3 Running 0 10m
pod/clusteridentityoperator-6d64fdb886-p5m25 2/2 Running 0 10m
pod/controller-manager-567c9647db-qkprs 2/2 Running 0 10m
pod/flux-logs-agent-7bf6f4bf8c-mr5df 1/1 Running 0 10m
pod/cluster-metadata-operator-7cc4c554d4-nck9z 2/2 Running 0 10m
pod/extension-events-collector-58dfb78cb5-vxbzq 2/2 Running 0 10m
pod/config-agent-7579f558d9-5jnwq 2/2 Running 0 10m
pod/kube-aad-proxy-56d9f754d8-9gthm 2/2 Running 0 10m
pod/resource-sync-agent-769bb66b79-z9n46 2/2 Running 0 10m
pod/metrics-agent-6588f97dc-455j8 2/2 Running 0 10m
Étapes suivantes
Maintenant que vous disposez d’un cluster Kubernetes avec Azure Arc, vous pouvez déployer Opérations Azure IoT.