Décrire les options permettant de créer et de gérer les machines virtuelles Azure
Le portail Azure est le moyen le plus simple de créer des ressources telles que des machines virtuelles lorsque vous démarrez. Toutefois, il n’est pas nécessairement le moyen le plus efficace ou le plus rapide d’utiliser Azure, en particulier si vous devez créer plusieurs ressources ensemble. Dans notre cas, nous créons finalement des dizaines de machines virtuelles pour gérer différentes tâches. La création manuelle dans le portail Azure ne serait pas une tâche amusante !
Examinons d’autres façons de créer et d’administrer des ressources dans Azure :
- Modèles Azure Resource Manager
- Azure PowerShell
- Azure CLI (Interface de ligne de commande Azure)
- API REST Azure
- Kit de développement logiciel (SDK) client Azure
- Extensions de machine virtuelle Azure
- Azure Automation Services
Modèles Resource Manager
Supposons que vous souhaitez créer une copie d’une machine virtuelle avec les mêmes paramètres. Vous pouvez créer une image de machine virtuelle, la charger sur Azure et la référencer comme base pour votre nouvelle machine virtuelle. Ce processus est inefficace et fastidieux. Azure vous offre la possibilité de créer un modèle à partir duquel créer une copie exacte d’une machine virtuelle.
Les modèles Resource Manager sont des fichiers JSON qui définissent les ressources que vous devez déployer pour votre solution.
Vous pouvez créer un modèle de ressource pour votre machine virtuelle. Dans le menu de la machine virtuelle, sous Automation , sélectionnez Exporter le modèle.
Remarque
Les stratégies des ressources incluses dans le bac à sable pour ce module Learn vous empêchent d’exporter la machine virtuelle que vous venez de créer ; cela dit, un modèle exporté est un fichier JSON facile à modifier. Vous avez la possibilité de télécharger ou d’enregistrer un modèle pour une utilisation ultérieure, ou de déployer immédiatement une nouvelle machine virtuelle basée sur le modèle. Par exemple, vous pouvez créer une machine virtuelle à partir d’un modèle dans un environnement de test et trouver qu’elle ne fonctionne pas assez pour remplacer votre ordinateur local. Vous pouvez supprimer le groupe de ressources, qui supprime toutes les ressources, ajuster le modèle, puis réessayer. Si vous souhaitez uniquement apporter des modifications aux ressources déployées existantes, vous pouvez modifier le modèle utilisé pour le créer et le redéployer. Resource Manager modifie les ressources pour qu’elles correspondent au nouveau modèle.
Une fois que vous l’avez utilisé comme vous le souhaitez, vous pouvez utiliser ce modèle pour répliquer facilement plusieurs versions de votre infrastructure, telles que la préproduction et la production. Vous pouvez paramétrer des champs tels que le nom de la machine virtuelle, le nom du réseau, le nom du compte de stockage, etc. et charger le modèle à plusieurs reprises, en utilisant des paramètres différents pour personnaliser chaque environnement.
Pour plus d’informations sur l’utilisation de modèles, consultez Démarrage rapide : Créer une machine virtuelle Ubuntu Linux à l’aide d’un modèle ARM.
Azure CLI (Interface de ligne de commande Azure)
Une option permettant d’écrire des scripts et d’interagir avec Azure en ligne de commande est Azure CLI.
Azure CLI est l’outil en ligne de commande multiplateforme de Microsoft pour gérer des ressources Azure telles que des machines virtuelles et des disques à partir de la ligne de commande. Il est disponible pour Linux, macOS, Windows ou dans un navigateur à l’aide de Cloud Shell.
Par exemple, à partir de l’interface CLI, vous pouvez créer une machine virtuelle Azure avec la az vm create commande.
az vm create \
--resource-group TestResourceGroup \
--name test-wp1-eus-vm \
--image Ubuntu2204 \
--admin-username azureuser \
--generate-ssh-keys
Azure CLI peut être utilisé avec d’autres langages de script, comme Ruby et Python.
En savoir plus sur la création et la gestion de machines virtuelles dans la gestion des machines virtuelles avec le module outil Azure CLI .
Pour plus d’informations sur l’utilisation d’Azure CLI pour créer des machines virtuelles, consultez Démarrage rapide : Créer une machine virtuelle Linux à l’aide de l’interface CLI.
Azure PowerShell
Azure PowerShell est idéal pour les tâches interactives ponctuelles et/ou l’automatisation des tâches répétées.
Remarque
PowerShell est un interpréteur de commandes multiplateforme qui fournit des services comme la fenêtre d’interpréteur de commandes et l’analyse des commandes. Azure PowerShell est un package complémentaire facultatif qui ajoute les commandes spécifiques à Azure ( appelées applets de commande). Vous pouvez en savoir plus sur l’installation et l’utilisation d’Azure PowerShell dans un module d’entraînement distinct.
Par exemple, vous pouvez utiliser l’applet New-AzVM de commande pour créer une machine virtuelle Azure basée sur Debian.
New-AzVm `
-ResourceGroupName "TestResourceGroup" `
-Name "test-wp1-eus-vm" `
-Location "East US" `
-Image Debian11 `
-VirtualNetworkName "test-wp1-eus-network" `
-SubnetName "default" `
-SecurityGroupName "test-wp1-eus-nsg" `
-PublicIpAddressName "test-wp1-eus-pubip" `
-GenerateSshKey `
-SshKeyName myPSKey
-OpenPorts 22
Comme indiqué ici, vous fournissez différents paramètres pour gérer le grand nombre de paramètres de configuration de machine virtuelle disponibles. La plupart des paramètres ont des valeurs raisonnables ; vous devez uniquement spécifier les paramètres requis. En savoir plus sur la création et la gestion de machines virtuelles avec Azure PowerShell dans les tâches Automatiser Azure à l’aide de scripts avec le module PowerShell .
Pour plus d’informations sur l’utilisation de PowerShell pour créer des machines virtuelles, consultez Démarrage rapide : Créer une machine virtuelle Linux à l’aide de PowerShell.
Terraformation
Azure dispose également d’un fournisseur Terraform. Vous pouvez donc facilement utiliser Terraform pour créer et gérer vos machines virtuelles. Terraform active la définition, la préversion et le déploiement de l’infrastructure cloud. À l’aide de Terraform, vous créez des fichiers de configuration à l’aide de la syntaxe HCL. La syntaxe HCL vous permet de spécifier le fournisseur de cloud , tel qu’Azure, et les éléments qui composent votre infrastructure cloud. Après avoir créé vos fichiers de configuration, vous créez un plan d’exécution qui vous permet d’afficher un aperçu de vos modifications d’infrastructure avant leur déploiement. Une fois que vous avez vérifié les modifications, vous appliquez le plan d’exécution pour déployer l’infrastructure.
Pour plus d’informations, consultez le fournisseur Azure Terraform et le guide de démarrage rapide : Utiliser Terraform pour créer une machine virtuelle.
Programmatique (APIs)
En règle générale, Azure PowerShell et Azure CLI sont de bonnes options si vous avez des scripts simples à exécuter et que vous souhaitez coller aux outils en ligne de commande. Lorsqu’il s’agit de scénarios plus complexes, où la création et la gestion de machines virtuelles font partie d’une application plus grande avec une logique complexe, une autre approche est nécessaire.
Vous pouvez interagir avec chaque type de ressource dans Azure par programmation.
API REST Azure
L’API REST Azure fournit aux développeurs des opérations classées par ressource et la possibilité de créer et de gérer des machines virtuelles. Les opérations sont exposées en tant qu’URI avec les méthodes HTTP correspondantes (GET, , PUT, POSTDELETEet PATCH) et une réponse correspondante.
Les API De calcul Azure vous permettent d’accéder par programmation aux machines virtuelles et à leurs ressources de prise en charge.
Pour plus d’informations, consultez la référence de l’API REST des machines virtuelles.
Kit de développement logiciel (SDK) client Azure
Même si l’API REST est indépendante de la plateforme et du langage, les développeurs recherchent souvent un niveau d’abstraction plus élevé. Le Kit de développement logiciel (SDK) client Azure encapsule l’API REST Azure, ce qui facilite l’interaction des développeurs avec Azure.
Les SDK clients Azure sont disponibles pour différents langages et frameworks, notamment pour les langages basés sur .NET comme C#, Java, Node.js, PHP, Python, Ruby et Go.
Voici un exemple d’extrait de code C# pour créer une machine virtuelle Azure à l’aide du Microsoft.Azure.Management.Fluent package NuGet.
var azure = Azure
.Configure()
.WithLogLevel(HttpLoggingDelegatingHandler.Level.Basic)
.Authenticate(credentials)
.WithDefaultSubscription();
// ...
var vmName = "test-wp1-eus-vm";
azure.VirtualMachines.Define(vmName)
.WithRegion(Region.USEast)
.WithExistingResourceGroup("TestResourceGroup")
.WithExistingPrimaryNetworkInterface(networkInterface)
.WithLatestWindowsImage("MicrosoftWindowsServer", "WindowsServer", "2012-R2-Datacenter")
.WithAdminUsername("jonc")
.WithAdminPassword("aReallyGoodPasswordHere")
.WithComputerName(vmName)
.WithSize(VirtualMachineSizeTypes.StandardDS1)
.Create();
Voici le même extrait de code en Java à l’aide du Kit de développement logiciel (SDK) Java Azure.
String vmName = "test-wp1-eus-vm";
// ...
VirtualMachine virtualMachine = azure.virtualMachines()
.define(vmName)
.withRegion(Region.US_EAST)
.withExistingResourceGroup("TestResourceGroup")
.withExistingPrimaryNetworkInterface(networkInterface)
.withLatestWindowsImage("MicrosoftWindowsServer", "WindowsServer", "2012-R2-Datacenter")
.withAdminUsername("jonc")
.withAdminPassword("aReallyGoodPasswordHere")
.withComputerName(vmName)
.withSize("Standard_DS1")
.create();
Extensions de machine virtuelle Azure
Supposons que vous souhaitez configurer et installer davantage de logiciels sur votre machine virtuelle après le déploiement initial. Vous souhaitez que cette tâche utilise une configuration spécifique, surveillée et exécutée automatiquement.
Les extensions de machine virtuelle Azure sont de petites applications qui vous permettent de configurer et d’automatiser des tâches sur des machines virtuelles Azure après le déploiement initial.
Pour plus d’informations, consultez les extensions et fonctionnalités de machine virtuelle Azure.
Services Azure Automation
Gagner du temps, réduire les erreurs et augmenter l’efficacité sont certains des défis de gestion opérationnelle les plus importants rencontrés lors de la gestion de l’infrastructure distante. Si vous avez de nombreux services d’infrastructure, vous pouvez envisager d’utiliser des services de niveau supérieur dans Azure pour vous aider à opérer à partir d’un niveau supérieur.
Azure Automation vous permet d’intégrer des services qui vous permettent d’automatiser facilement les tâches de gestion fréquentes, fastidieuses et sujettes aux erreurs. Ces services incluent l’automatisation des processus, la gestion de la configuration et la gestion des mises à jour.
Automatisation des processus. Supposons que vous disposez d’une machine virtuelle surveillée pour un événement d’erreur spécifique. Vous souhaitez prendre des mesures et résoudre le problème dès qu’il est signalé. L’automatisation des processus vous permet de configurer des tâches d’observateur qui peuvent répondre aux événements qui peuvent se produire dans votre centre de données.
Gestion de la configuration. Vous souhaitez peut-être suivre les mises à jour logicielles qui deviennent disponibles pour le système d’exploitation qui s’exécute sur votre machine virtuelle. Il existe des mises à jour spécifiques que vous souhaiterez peut-être inclure ou exclure. La gestion de la configuration vous permet de suivre ces mises à jour et de prendre des mesures en fonction des besoins. Vous utilisez Microsoft Endpoint Configuration Manager pour gérer le PC, les serveurs et les appareils mobiles de votre entreprise. Vous pouvez étendre cette prise en charge à vos machines virtuelles Azure avec Configuration Manager.
Update Management. Utilisez ce service pour gérer les mises à jour et les correctifs pour vos machines virtuelles. Avec ce service, vous pouvez évaluer l’état des mises à jour disponibles, planifier l’installation et passer en revue les résultats du déploiement pour vérifier que les mises à jour sont appliquées avec succès. La gestion des mises à jour intègre des services qui fournissent une gestion des processus et de la configuration. Vous activez la gestion des mises à jour pour une machine virtuelle directement à partir de votre compte Azure Automation . Vous pouvez également activer la gestion des mises à jour pour une seule machine virtuelle à partir du volet de la machine virtuelle dans le portail.
Arrêt automatique
L’arrêt automatique est une fonctionnalité dans Azure qui vous permet d’arrêter automatiquement vos machines virtuelles selon une planification. Utilisez l’arrêt automatique pour économiser des coûts en vous assurant que vos machines virtuelles ne s’exécutent pas lorsqu’elles ne sont pas nécessaires. Vous pouvez définir la planification de l’arrêt automatique pour qu’elle se produise tous les jours ou toutes les semaines, et vous pouvez également spécifier le fuseau horaire de la planification.
Pour accéder à la fonctionnalité d’arrêt automatique dans une machine virtuelle dans le portail Azure, accédez au panneau de la machine virtuelle dans le portail, cliquez sur « Arrêt automatique » sous la section « Opérations », puis configurez les paramètres d’arrêt automatique en fonction de vos préférences.
Pour plus d’informations, consultez Arrêt automatique.
Comme vous pouvez le voir, Azure fournit différents outils pour créer et administrer des ressources afin de pouvoir intégrer des opérations de gestion dans un processus qui fonctionne pour vous. Examinons certains des autres services Azure pour vous assurer que vos ressources d’infrastructure s’exécutent en douceur.