Az - Virtual Machines & Network
Informations de base
À partir de la documentation : Les machines virtuelles Azure sont l'un des plusieurs types de ressources informatiques évolutives à la demande qu'Azure propose. En général, vous choisissez une machine virtuelle lorsque vous avez besoin de plus de contrôle sur l'environnement informatique que ce que les autres choix offrent. Cet article vous donne des informations sur ce que vous devez considérer avant de créer une machine virtuelle, comment la créer et comment la gérer.
Informations sur le réseau Azure
Les réseaux Azure contiennent différentes entités et façons de le configurer. Vous pouvez trouver des descriptions succinctes, des exemples et des commandes d'énumération des différentes entités réseau Azure dans :
Az - Azure NetworkAzure Bastion
Azure Bastion offre une solution d'accès sécurisée et entièrement gérée au protocole RDP (Remote Desktop Protocol) et SSH (Secure Shell) via SSL à travers le portail Azure. Il est intégré dans un réseau virtuel Azure, permettant une connectivité RDP et SSH aux machines virtuelles en utilisant des adresses IP privées, évitant ainsi le besoin d'adresses IP publiques. Cela en fait une alternative plus sûre et plus pratique aux méthodes traditionnelles impliquant des attributions d'adresses IP publiques et des configurations de règles NSG pour l'accès aux machines virtuelles. Les développeurs et le personnel informatique peuvent accéder de manière sécurisée aux machines virtuelles depuis le portail Azure en utilisant leurs navigateurs web, simplifiant ainsi le processus pour les environnements de développement et de test.
Pour lister tous les hôtes Azure Bastion dans votre abonnement, vous pouvez utiliser la commande suivante :
Énumération des VM
Exécuter des commandes dans une VM
Connexion AAD dans une VM
Il est possible de permettre l'accès aux utilisateurs authentifiés via AzureAD. Par exemple, en essayant d'accéder à une VM Linux: ssh username@azure-corp.com@1.1.1.1
(il est important d'utiliser l'e-mail avec azurecorp utilisé lors de la tentative de connexion), vous pourriez obtenir une erreur comme:
Il vous suffit de suivre ces instructions en allant sur https://microsoft.com/devicelogin et en indiquant le code, utilisez l'e-mail et le mot de passe comme identifiants et vous pourrez vous connecter via SSH (si cet utilisateur a suffisamment de permissions pour le faire : rôle Connexion administrateur de machine virtuelle
ou Connexion utilisateur de machine virtuelle
).
Exécuter la commande
Exécuter l'extension de script personnalisé
Les extensions de machine virtuelle (VM) Azure sont de petites applications qui fournissent une configuration post-déploiement et des tâches d'automatisation sur les VM Azure. Par exemple, si une machine virtuelle nécessite une installation de logiciel, une protection antivirus ou la capacité d'exécuter un script à l'intérieur, vous pouvez utiliser une extension de VM.
Par conséquent, si vous avez accès pour l'écrire, vous pouvez exécuter du code arbitraire:
État de configuration souhaité (DSC)
L'état de configuration souhaité (DSC) est un outil PowerShell similaire à Ansible, utilisé pour configurer un hôte via du code. DSC s'intègre avec Azure, permettant le téléchargement de fichiers de configuration spécifiques. Ces fichiers doivent respecter une syntaxe stricte. Notamment, l'extension DSC dans Azure peut exécuter des commandes à partir de fichiers qui répondent à certains critères de formatage, même si la syntaxe n'est pas correcte selon les normes DSC, comme illustré dans la figure fournie.
L'exécution de ces commandes est facilitée par la fonction Publish-AzVMDscConfiguration
dans Az PowerShell. Les exigences incluent un fichier .PS1 avec une fonction définie et le fichier doit être compressé dans un fichier .zip. Même si la syntaxe peut ne pas être précise pour DSC, le code s'exécutera toujours. Cependant, l'extension marquera l'état d'exécution comme "échec", et aucune sortie de la commande ne sera visible en raison de l'écrasement du statut par le message d'échec.
Définitions d'applications VM
Les définitions d'applications VM permettent le déploiement répétable d'applications versionnées sur une VM Azure. Cette ressource prend en charge le déploiement et la mise à jour d'applications sur des VM. Pour configurer cela, plusieurs étapes sont nécessaires, impliquant des commandes telles que New-AzGalleryApplication
et New-AzGalleryApplicationVersion
dans Az PowerShell.
L'exécution d'applications ou de commandes par cette méthode implique le "VMAppExtension", qui est installé automatiquement lorsqu'une application est appliquée à une VM. L'extension récupère le fichier à partir de l'URI spécifié et le nomme exactement comme l'application, sans extension. Pour exécuter correctement le fichier, le champ "ManageActions" dans l'appel API REST doit être configuré pour renommer le fichier avec l'extension appropriée. La configuration de cette méthode, une fois terminée, ressemblera à la structure illustrée dans la figure fournie.
Cependant, cette méthode d'exécution est relativement lente, prenant environ 3 à 4 minutes pour exécuter une application ou une commande. Les fichiers liés à ce processus sont stockés dans des répertoires spécifiques (C:\Packages\Plugins\Microsoft.CPlat.Core.VMApplicationManagerWindows\1.0.4\Downloads\
pour la copie de l'application et C:\Packages\Plugins\Microsoft.CPlat.Core.VMApplicationManagerWindows\1.0.4\Status\
pour l'état d'exécution).
Les deux techniques offrent des moyens uniques d'exécuter des commandes et de déployer des applications dans des environnements Azure, chacune avec ses propres exigences, étapes et considérations.
Groupes de travailleurs hybrides (HWGs) dans Azure
Les groupes de travailleurs hybrides (HWGs) sont une fonctionnalité dans Azure qui permet aux Runbooks, configurés dans un compte Automation, d'être exécutés sur une machine virtuelle Azure (VM) faisant partie du HWG désigné. Cette exécution est facilitée par une extension installée sur la VM, qui déploie le code Runbook sur la VM. Un aspect important de ce processus est que les informations d'identification réelles ne sont pas un facteur dans l'exécution car le code s'exécute avec des privilèges élevés, spécifiquement en tant que SYSTEM ou root, comme illustré dans la figure fournie.
Un détail crucial pour ceux utilisant des VM Windows 10 est la nécessité de spécifier la version de PowerShell pour le Runbook. Il doit être configuré pour s'exécuter en tant que Version PowerShell 5.1 au lieu de 7.1. Cette exigence découle du fait que PowerShell 7.1 n'est pas installé par défaut sur ces VM, ce qui entraînerait un échec de l'exécution du script si la version 7.1 est spécifiée.
Cette fonctionnalité d'Azure offre une méthode robuste pour automatiser et gérer des tâches dans des environnements hybrides, permettant une gestion centralisée et l'exécution de tâches sur des VM Azure.
Références
Last updated