Évaluer des serveurs avec Azure Arc sur une machine virtuelle Azure
Les serveurs compatibles avec Azure Arc sont conçus pour vous aider à connecter des serveurs qui s’exécutent localement ou dans d’autres clouds à Azure. Vous ne connectez normalement pas une machine virtuelle Azure à Azure Arc, car les mêmes fonctionnalités sont disponibles en mode natif pour ces machines virtuelles. Les machines virtuelles Azure disposent déjà d’une représentation dans Azure Resource Manager, dans les extensions de machines virtuelles, dans les identités managées et dans Azure Policy. Si vous tentez d’installer des serveurs avec Azure Arc sur une machine virtuelle Azure, vous recevrez un message d’erreur indiquant que l’opération n’est pas prise en charge.
Bien que vous ne soyez pas en mesure d’installer des serveurs avec Azure Arc sur une machine virtuelle Azure pour des scénarios de production, il est possible de configurer des serveurs avec Azure Arc pour qu’ils s’exécutent sur une machine virtuelle Azure à des fins d’évaluation et de test uniquement. Cet article vous guide pas à pas pour préparer une machine virtuelle Azure afin qu’elle s’apparente à un serveur local destiné à des tests.
Remarque
Les étapes décrites dans cet article sont destinées aux machines virtuelles hébergées dans le cloud Azure. Les serveurs Azure Arc ne sont pas pris en charge sur les machines virtuelles s’exécutant sur Azure Stack Hub ou Azure Stack Edge.
Prérequis
- Votre compte est affecté au rôle Contributeur de machine virtuelle.
- La machine virtuelle Azure exécute un système d’exploitation pris en charge par les serveurs avec Azure Arc. Si vous n’avez pas de machine virtuelle Azure, vous pouvez déployer une machine virtuelle Windows simple ou une machine virtuelle Ubuntu Linux 18.04 LTS simple.
- Votre machine virtuelle Azure peut communiquer en sortie pour télécharger le package d’agent Azure Connected Machine pour Windows à partir du Centre de téléchargement Microsoft, et pour Linux à partir du dépôt de packages Microsoft. Si la connectivité sortante à Internet est limitée à la suite de votre stratégie de sécurité informatique, vous pouvez télécharger le package de l’agent manuellement et le copier dans un dossier sur la machine virtuelle Azure.
- Un compte avec des privilèges élevés (c’est-à-dire un administrateur ou root) sur la machine virtuelle, et un accès RDP ou SSH à la machine virtuelle.
- Pour inscrire et gérer la machine virtuelle Azure avec des serveurs avec Azure Arc, vous devez être membre du rôle Administrateur des ressources de la machine connectée à Azure ou Contributeur dans le groupe de ressources.
Planifier
Pour commencer à gérer votre machine virtuelle Azure en tant que serveur avec Azure Arc, vous devez apporter les modifications suivantes à la machine virtuelle Azure avant de pouvoir y installer et configurer des serveurs avec Azure Arc.
Supprimez toutes les extensions de machine virtuelle déployées sur la machine virtuelle Azure, telles que l’agent Azure Monitor. Bien que les serveurs avec Azure Arc prennent en charge un grand nombre des mêmes extensions que les machines virtuelles Azure, l’agent Azure Connected Machine ne peut pas gérer les extensions de machine virtuelle déjà déployées sur la machine virtuelle.
Désactivez l’agent invité Azure Windows ou Linux. L’agent invité de machine virtuelle Azure remplit un rôle similaire à Azure Connected Machine Agent. Pour éviter les conflits entre les deux, l’agent de machine virtuelle Azure doit être désactivé. Une fois désactivé, vous ne pouvez pas utiliser les extensions de machine virtuelle ou certains services Azure.
Créez une règle de sécurité pour refuser l’accès à Azure Instance Metadata Service (IMDS). IMDS est une API REST que les applications peuvent appeler pour obtenir des informations sur la représentation des machines virtuelles dans Azure, y compris son ID de ressource et son emplacement. IMDS fournit également l’accès à toutes les identités managées affectées à la machine. Les serveurs compatibles avec Azure Arc fournissent leur propre implémentation d’IMDS et retournent des informations sur la représentation Azure Arc de la machine virtuelle. Pour éviter les situations où les deux points de terminaison IMDS sont disponibles et que les applications doivent choisir entre les deux, vous bloquez l’accès à IMDS des machines virtuelles Azure afin que l’implémentation IMDS du serveur compatible avec Azure Arc soit la seule disponible.
Une fois ces modifications apportées, votre machine virtuelle Azure se comporte comme n’importe quelle machine ou n’importe quel serveur en dehors d’Azure, et se trouve au point de départ nécessaire pour installer et évaluer des serveurs avec Azure Arc.
Lorsque les serveurs avec Azure Arc sont configurés sur la machine virtuelle, vous voyez deux représentations de celle-ci dans Azure. L’une est la ressource de machine virtuelle Azure, avec un type de ressource Microsoft.Compute/virtualMachines
, et l’autre est une ressource Azure Arc, avec un type de ressource Microsoft.HybridCompute/machines
. En raison de la prévention de la gestion du système d’exploitation invité à partir du serveur hôte physique partagé, la meilleure façon de voir les deux ressources est de considérer la ressource de machine virtuelle Azure comme le matériel virtuel de votre machine virtuelle, et vous permet de contrôler l’état de l’alimentation et d’afficher des informations sur ses configurations de référence SKU, de réseau et de stockage. De son côté, la ressource Azure Arc gère le système d’exploitation invité de cette machine virtuelle et peut être utilisée pour installer des extensions, afficher les données de conformité pour Azure Policy et effectuer toute autre tâche prise en charge par les serveurs avec Azure Arc.
Reconfigurer une machine virtuelle Azure
Remarque
Pour Windows, définissez la variable d’environnement pour substituer l’ARC sur une installation de machine virtuelle Azure.
[System.Environment]::SetEnvironmentVariable("MSFT_ARC_TEST",'true', [System.EnvironmentVariableTarget]::Machine)
Supprimez toutes les extensions de machine virtuelle sur la machine virtuelle Azure.
Dans le portail Azure, accédez à votre ressource de machine virtuelle Azure puis, dans le volet gauche, sélectionnez Extensions. Si des extensions sont installées sur la machine virtuelle, sélectionnez chaque extension individuellement, puis Désinstaller. Attendez la fin de la désinstallation de toutes les extensions avant de passer à l’étape 2.
Désactivez l’agent invité de machine virtuelle Azure.
Pour désactiver l’agent invité de machine virtuelle Azure, connectez votre machine virtuelle en utilisant Connexion Bureau à distance (Windows) ou SSH (Linux), puis exécutez les commandes suivantes pour désactiver l’agent invité.
Pour Windows, exécutez les commandes PowerShell suivantes :
Set-Service WindowsAzureGuestAgent -StartupType Disabled -Verbose Stop-Service WindowsAzureGuestAgent -Force -Verbose
Pour Linux, exécutez les commandes ci-dessous :
sudo systemctl stop walinuxagent sudo systemctl disable walinuxagent
Bloquer l’accès au point de terminaison Azure IMDS.
Remarque
Les configurations ci-dessous doivent être appliquées pour 169.254.169.254 et 169.254.169.253. Il s’agit respectivement de points de terminaison utilisés pour IMDS dans Azure et Azure Stack HCI.
Tout en étant toujours connecté au serveur, exécutez les commandes suivantes pour bloquer l’accès au point de terminaison Azure IMDS. Pour Windows, exécutez la commande PowerShell suivante :
New-NetFirewallRule -Name BlockAzureIMDS -DisplayName "Block access to Azure IMDS" -Enabled True -Profile Any -Direction Outbound -Action Block -RemoteAddress 169.254.169.254
Pour Linux, consultez la documentation de votre distribution pour la meilleure façon de bloquer l’accès sortant à
169.254.169.254/32
sur le port TCP 80. Normalement, vous bloquez l’accès sortant à l’aide du pare-feu intégré, mais vous pouvez également le bloquer temporairement avec iptables ou nftables.Si votre machine virtuelle Azure exécute Ubuntu, procédez comme suit pour configurer Uncomplicated Firewall (UFW) :
sudo ufw --force enable sudo ufw deny out from any to 169.254.169.254 sudo ufw default allow incoming
Si votre machine virtuelle Azure fonctionne sous Red Hat ou SUSE Linux Enterprise Server (SLES), procédez comme suit pour configurer firewalld :
sudo firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 1 -p tcp -d 169.254.169.254 -j REJECT sudo firewall-cmd --reload
Pour les autres distributions, consultez la documentation de votre pare-feu ou configurez une règle iptables générique avec la commande suivante :
sudo iptables -I OUTPUT 1 -d 169.254.169.254 -j REJECT
Remarque
Cette configuration iptables doit être définie après chaque redémarrage, sauf si une solution iptables persistante est utilisée.
Installez et configurez l’agent Azure Connected Machine.
La machine virtuelle est maintenant prête pour que vous puissiez évaluer les serveurs avec Azure Arc. Pour installer et configurer l’agent Azure Connected Machine, consultez Connecter des machines hybrides à l’aide du Portail Azure et suivez les étapes pour générer un script d’installation et effectuer l’installation à l’aide de la méthode avec script.
Remarque
Si la connectivité sortante à Internet est restreinte pour votre machine virtuelle Azure, vous pouvez télécharger le package de l’agent manuellement. Copiez le package de l’agent sur la machine virtuelle Azure, puis modifiez le script d’installation des serveurs avec Azure Arc pour référencer le dossier source.
Si vous avez manqué l’une des étapes, le script d’installation détecte qu’il s’exécute sur une machine virtuelle Azure et se conclut sur une erreur. Vérifiez que vous avez terminé les étapes 1-3, puis réexécutez le script.
Vérifier la connexion avec Azure Arc
Après avoir installé et configuré l’agent de manière à inscrire les serveurs compatibles avec Azure Arc, accédez au Portail Azure pour vérifier que le serveur a déjà été correctement connecté. Affichez vos machines dans le portail Azure.
Étapes suivantes
Découvrez comment planifier et activer un grand nombre de machines sur des serveurs compatibles avec Azure Arc afin de simplifier la configuration de fonctionnalités essentielles de sécurité, de gestion et de surveillance dans Azure.
Découvrez nos extensions de machine virtuelle Azure prises en charge disponibles pour simplifier le déploiement avec d’autres services Azure, tels qu’Automation, KeyVault et d’autres pour votre machine Windows ou Linux.
Une fois les tests terminés, désinstallez l’agent Azure Connected Machine.