Procédure pas à pas de mise en service des VM Azure
Cet exemple vous guide à travers les composants de cette fonction lors de Mise en service et gouvernance du cloud la mise en service d’un ordinateur virtuel dans un centre de données Azure. Les sujets abordés incluent les plans, les blocs de ressources, l’API dans le cloud (CAPI) et Serveur MID les includes de script.
Avant de commencer
Pourquoi et quand exécuter cette tâche
Cette procédure pas à pas commence avec un ordinateur virtuel Linux qu’un utilisateur a déjà mis en service dans Azure. Ensuite, il vous guide à travers le plan avec la machine virtuelle, les blocs de ressources, puis les appels CAPI spécifiés à partir des blocs de ressources. Enfin, la procédure pas à pas vous montre comment un Serveur MID include de script finit par effectuer, via plusieurs appels CAPI, les appels REST réels vers l’API Azure.
Cet exemple utilise les blocs de ressources et les includes de script par défaut disponibles dans votre instance. Par conséquent, même si vous n’avez pas d’ordinateur virtuel mis en service sur votre instance, vous pouvez toujours suivre ces étapes et afficher les composants utilisés dans cet exemple pour comprendre comment les composants fonctionnent.
Pour obtenir un exemple d’ordinateur virtuel dans AWS, reportez-vous à la section Procédure pas à pas AWS VM Provisioning.
Procédure
-
Examinez une machine virtuelle mise en service dans le portail de l’utilisateur dans le cloud et concentrez-vous sur certains détails concernant la machine virtuelle :
- Dans l’interface de l’instance système de base , ouvrez le bouton Portail de l'utilisateur dans le cloud (Portail de l'utilisateur dans le cloud).
-
Sur le Portail de l'utilisateur dans le cloud, affichez une machine virtuelle mise en service dans une pile, telle que cette machine virtuelle, en cliquant sur Piles, puis sur le nom de la pile.
Dans cet exemple, la pile est nommée MyAzureVM.
-
Sous Ressources, cliquez sur l’ordinateur virtuel dans la pile.
-
Affichez les propriétés de l’ordinateur virtuel et notez qu’il se trouve dans un centre de données Azure dans la région eastus.
-
Regardez le plan sur lequel l’ordinateur virtuel est basé :
-
Accédez à la Conception > Plans, puis ouvrez un plan avec un serveur virtuel dans le centre de données Azure. L’onglet Modèle de déploiement s’affiche par défaut et vous montre les différents composants du plan.
Cet exemple de plan comporte trois composants : le conteneur, le serveur virtuel, qui est l’ordinateur virtuel réel qui est mis en service, et le centre de données Azure.
-
Cliquez sur l’onglet Opérations en bas, puis sur Mettre en service.
L’opération de mise en service est l’opération que le système a déclenchée lors de la création de l’ordinateur virtuel. D’autres opérations par défaut sont disponibles, mais cet exemple se concentre sur l’opération de mise en service.
-
Cliquez sur le bloc Mettre en service pour la ressource de conteneur Blueprint.
-
Sur la droite, notez que l’un des paramètres de la liste Entrées est Location.
Ce paramètre contient la valeur eastus, qui correspond à l’emplacement où se trouve l’ordinateur virtuel dans le centre de données.
Les entrées peuvent être spécifiées sur le conteneur, comme dans cet exemple, ou sur n’importe quel autre bloc de ressources. Par défaut, le Location paramètre est déjà spécifié pour vous dans le bloc de ressources Conteneur de plan afin que vous puissiez l’utiliser dans chaque plan comme celui-ci. Si vous passez le plan en Brouillon, vous pouvez ajouter d’autres paramètres au bloc de ressources Conteneur de plan. Vous ne pouvez pas ajouter de paramètres au bloc de ressources du serveur virtuel. Pour cette procédure pas à pas, aucun paramètre supplémentaire n’est nécessaire.
-
Accédez à la Conception > Plans, puis ouvrez un plan avec un serveur virtuel dans le centre de données Azure. L’onglet Modèle de déploiement s’affiche par défaut et vous montre les différents composants du plan.
-
Affichez les blocs de ressources de serveur virtuel et de centre de données utilisés dans ce plan :
- Dans , Portail d'administration du cloud accédez à Conception > Blocs de ressources.
-
Recherchez et ouvrez le bloc de ressources Serveur virtuel , fourni par défaut avec Mise en service et gouvernance du cloud.
- Dans le formulaire Bloc de ressources, cliquez sur la liste connexe Ressource hôte pour afficher la liste des blocs de ressources hôtes pris en charge.
-
Notez l’interface hôte et la ressource hôte qui sont déjà spécifiées :
- Le champ Interface hôte spécifie l’interface qui doit correspondre à l’interface d’invité dans le bloc de ressources qui héberge cette machine virtuelle. Dans ce cas, l’interface hôte est l’interface de calcul, qui est également l’interface invitée sur le bloc de ressources du centre de données Azure. Par défaut, les blocs de ressources de centre de données fournissent plusieurs interfaces d’invité que d’autres blocs de ressources comme le stockage virtuel peuvent utiliser pour se connecter au centre de données.
- La colonne HostResource de la liste connexe Ressource hôte spécifie déjà le centre de données Azure, ce qui signifie que le bloc de ressources du centre de données Azure est un hôte valide pour cet ordinateur virtuel.
-
Cliquez sur l’onglet Opérations , puis sur le sous-onglet Étapes .
-
Sélectionnez Mettre en service dans la liste Opération .
N’oubliez pas que l’opération de mise en service est l’opération que le système a utilisée pour créer l’ordinateur virtuel. D’autres opérations par défaut sont disponibles, mais cet exemple se concentre sur l’opération de mise en service.
-
Notez l’étape qui apparaît dans la liste et la description complète de l’étape qui s’affiche au-dessus des paramètres d’entrée :
- Opération de ressource hôte : indique que cette étape appelle une opération sur la ressource hôte (le centre de données Azure dans cet exemple).
- L’interface de calcul est l’interface invitée sur le centre de données Azure que cette étape utilise.
- ConnectAndCreateVirtualMachine est l’opération dans le centre de données Azure que cette étape appelle.
Remarque :Dans ce cas, l’étape appelle une opération à partir d’un autre bloc de ressources : le centre de données Azure. Steps peut également appeler CAPI directement, puis CAPI peut exécuter des appels REST à l’API du fournisseur dans le cloud. Vous pouvez le constater lorsque vous examinez le bloc de ressources du centre de données Azure. - Revenir à Conception > Blocs de ressources.
- Ouvrez le bloc de ressources Centre de données Azure , qui est le bloc de ressources hôte auquel le serveur virtuel est connecté.
-
Notez les interfaces d’invité prises en charge dans la liste connexe Interface d’invité :
Ces interfaces d’invité sont les interfaces que le centre de données Azure met à la disposition d’autres blocs de ressources. L’interface de calcul est fournie pour que le bloc de ressources du serveur virtuel, qui spécifie l’interface de calcul comme interface hôte, puisse se connecter au centre de données.
-
Cliquez sur l’onglet Opérations , puis sur le sous-onglet Étapes .
-
Dans la liste Interface , sélectionnez Interface de calcul si elle n’est pas déjà sélectionnée.
N’oubliez pas que cette interface est spécifiée dans le bloc de ressources Serveur virtuel.
-
Dans la liste Opération , recherchez et sélectionnez ConnectAndCreateVirtualMachine.
N’oubliez pas que cette opération est spécifiée dans le bloc de ressources Serveur virtuel.
-
Notez l’appel CAPI utilisé dans la seule étape pour l’opération ConnectAndCreateVirtualMachine :
- API cloud : indique que cette étape appelle CAPI, afin que CAPI puisse exécuter un appel REST vers le fournisseur cloud, qui dans ce cas est Azure.
- L’interface de calcul spécifie l’interface CAPI que cette étape appelle.
- CreateNode indique la méthode exécutée. Comme son nom l’indique, cette méthode indique au fournisseur de cloud de créer la machine virtuelle.
-
Pour ouvrir la configuration de l’étape : Avec le bloc de ressources à l’état Brouillon , pointez sur l’étape en surbrillance (bleue), puis cliquez sur l’icône Modifier l’étape qui s’affiche.
-
Regardez la configuration de l’étape et notez les paramètres qui s’intègrent à CAPI :
Champ Description Type d'exploitation Appeler l’API dans le cloud spécifie que cette étape doit appeler la CAPI via le fournisseur, l’interface et la méthode spécifiés. Fournisseur d’API (qui est en fait le produit) Microsoft.Compute est un produit (pas le fournisseur réel) qui appartient au fournisseur Azure tel que défini dans CAPI. API Interface L’interface de calcul est un produit qui appartient au fournisseur Azure tel que défini dans CAPI. Méthode API CreateNode est la méthode qui appelle Azure pour créer l’ordinateur virtuel. Remarque :La définition d’API CAPI relie le fournisseur (Azure), le produit (Microsoft.Compute), l’interface (Compute Interface) et la méthode (CreateNode). - Fermer la fenêtre.
-
Une fois l’étape Compute Interface.CreateNode sélectionnée, cliquez sur l’onglet Processeur de réponses et notez le script Create_Virtual_Server_Response_Processor .
Ce script est le processeur de réponses qui met à jour la CMDB dans votre instance après la création de l’ordinateur virtuel.
-
Consultez une explication du script et l’exemple qui fait partie de la rubrique sur Créer un processeur de réponses.
Lorsque vous avez terminé de réviser cette rubrique, revenez à celle-ci.
-
Examinez les composants CAPI qui fonctionnent ensemble pour mettre en service l’ordinateur virtuel :
- Dans le portail d’administration du cloud, accédez à Conception > Cloud API.
- Cliquez sur l’onglet API , puis recherchez une API Azure Compute ouverte.
-
Regardez comment cette API CAPI relie une interface et un produit :
Champ Description Interface de l’API dans le cloud L’interface de calcul est la même que celle que vous pouvez voir spécifiée dans le bloc de ressources. L’interface contient la définition des méthodes, y compris la CreateStack méthode. Connecteur Connecteur de script indique que ce CAPI fournit un include de Serveur MID script pour chaque opération. L’include de script appelle l’API. Vous pouvez modifier l’include de script ou même en créer un nouveau. Version 1.0 indique la version de l’API. Vous pouvez avoir plusieurs versions de cette API avec des numéros de version différents. N’oubliez pas que dans l’étape du bloc de ressources de centre de données qui crée l’ordinateur virtuel, un champ Version est fourni. Bien qu’il soit vide dans cet exemple, car il n’existe qu’une seule version de cette API, vous pouvez spécifier un numéro de version différent. Produit Microsoft.Compute est le produit qui appartient au fournisseur dans CAPI. Ce produit est fourni par défaut avec Mise en service et gouvernance du cloud et est l’un des produits les plus couramment utilisés pour créer des machines virtuelles sur Azure. -
Dans la liste connexe des mappeurs de méthode CAPI, cliquez sur l’icône d’aperçu de l’enregistrement de l’enregistrement, puis cliquez sur Ouvrir l’enregistrementCreateNode.
-
Regardez le mappeur de CreateNode méthode :
Notez que l’opération de point de terminaison est Execute Script, ce qui indique qu’un include de script personnalisable est utilisé pour appeler des fonctions dans CAPI, qui finit par effectuer des appels REST vers Azure. L’include azure-compute-1.0-CreateNode Serveur MID de script est spécifié dans le champ Script de demande .
Ce graphique illustre comment les composants, du bloc de ressources à l’include de script, sont connectés :
-
Cliquez sur l’icône d’enregistrement (
) pour le script de demande.
L’include azure-compute-1.0-CreateNode Serveur MID de script s’ouvre.
-
Examinez le contenu du script.
createNode(); function createNode(){ var acp = new AzureComputeVirtualMachine(this.parameters, this.headers); var vm = acp.createVirtualMachine(); return vm; }Le script appelle la createVirtualMachine fonction dans la AzureComputeVirtualMachine classe. Renvoie l’ordinateur virtuel créé. La AzureComputeVirtualMachine classe s’étend AzureCloudAPIBase, qui est l’une des API de base dans Mise en service et gouvernance du cloud.
- Pour afficher la AzureComputeVirtualMachine classe, qui est une Serveur MID inclusion de script, ouvrez l’interface de l’instance système de base (et non le Portail d'administration du cloud), puis accédez à Serveur MID > Inclusions de script.
-
Recherchez et ouvrez AzureComputeVirtualMachine.
-
Passez en revue la fonction
createVirtualMachine:La fonction définit de nombreuses variables requises pour créer une machine virtuelle, notamment le Location (centre de données) et le nom de la machine virtuelle, etc.
var location = this.parameters.get('Location'); var vmName = this.parameters.get('NodeName'); ...Cette ligne de code appelle la fonction
_performVMOperationdans ce même include de script et transmet les paramètres nécessaires. Notezqu’une valeur vide ''est transmise pour le paramètred’action:var response = this._performVMOperation(subscriptionId, resourceGroup, vmName, '', 'PUT', jsonObj.encode(params));La fonction
_performVMOperationappelle la fonction_invokeRequest, qui se trouve dans la AzureCloudAPIBase classe :return this._invokeRequest(this.pathDefault, param, method, requestBody) ;La méthode PUT pour l’appel REST est spécifiée dans le method paramètre.
Regardez l’include de AzureCloudAPIBase Serveur MID script. La fonction
_invokeRequestappelle d’abord la fonction_getEndpointpour obtenir le point de terminaison et la fonction_getAPIInvokerpour identifier la AzureAPIInvoker classe comme la classe qui appelle l’appel PUT réel :var apiInvoker = this._getAPIInvoker(apiEndpoint, this.apiVersion) ;AzureAPIInvoker est étendu à partir de CloudRESTAPIInvoker, qui fournit les fonctions de base pour tous les appelants. Une fois la classe invoker correcte identifiée, une response variable est créée pour contenir la valeur renvoyée par la fonction
invokePutdans le CloudRESTAPIInvoker:response = apiInvoker.invokePut(requestBody);Regardez la CloudRESTAPIInvoker, qui est la classe de base pour tous les appelants. La invokePut fonction spécifie la méthode PUT et appelle
getRequest, et elle renvoie la réponse de la getResponse fonction, qui obtient un code d’état et la réponse d’Azure. Cette classe d’invocateur est l’endroit où la connexion à Azure est établie.Revenez à l’include de AzureComputeVirtualMachine Serveur MID script et recherchez ces lignes :
var response = this._performVMOperation(subscriptionId, resourceGroup, vmName, '', 'PUT', jsonObj.encode(params)); this._compareVMState(response.id, 'PowerState/running'); var nodeResponse = this.getVirtualMachine(response.id);Rappelez-vous que la variable response est renvoyée par l’appel à
_performVMOperation, qui a la réponse de l’invocateur d’API qui a déclenché la méthode PUT. La nodeResponse variable contient la réponse de la fonctiongetVirtualMachine, à laquelle l’ID de l’ordinateur virtuel se trouve dans la réponse est transmis. La fonctiongetVirtualMachineappelle_getVMInfo, qui appelle la même fonction_invokeRequestque celle appelée précédemment. Cet appel est une autre connexion à l’appelant, qui effectue les appels REST réels. Dans ce cas, l’appel REST est un appel REST GET à Azure pour obtenir l’identifiant du VM.La ligne
de retour nodeResponse ;renvoie nodeResponse la fonctioncreateVirtualMachine, qui a été appelée à partir de l’include Serveur MID de script sur l’opération createNode .Ce graphique illustre les classes impliquées :
- Revenez au formulaire de l’API de calcul Azure.
-
Cliquez sur la liste connexe Remplacements de configuration d’API et passez en revue les éléments requis pour l’authentification.
Paramètre de configuration et valeur de remplacement Description ClientID
$(CloudCredential.client_id)
L’ID client est nécessaire pour identifier l’application dans Azure. URL du point de terminaison
$(CloudCredential.URL)
L’URL du point de terminaison est l’entrée d’autorisation dans Azure. SecretKey
$(CloudCredential.secret_key)
La clé secrète est utilisée pour autoriser le client. TenantID
$(CloudCredential.tenant_id)
L’ID de locataire est l’identificateur unique global de votre locataire. Numéro d’inscription
$(CloudCredential.sn_cmp_ea_credential.enrollment_number)
Jeton d’inscription
$(CloudCredential.sn_cmp_ea_credential.access_key)
Numéro d’inscription Azure et jeton permettant d’accéder au compte d’inscription. Consultez Stocker les informations d’identification Azure du principal du service dans l’instance pour plus d’informations sur les informations Azure utilisées dans ces remplacements.
- Revenir à Conception > Cloud API, puis cliquez sur l’onglet Interface .
- Recherchez et ouvrez Compute Interface.
-
Passez en revue le contenu de l’interface.
Notez que l’interface fournit des structures de réponse REST pour des méthodes telles que CreateNode. Vous n’avez généralement pas besoin de modifier les interfaces existantes.Notez la catégorie de service et les opérations :
Champ ou liste connexe Description Catégorie de service La catégorie de service classe l’interface. La catégorie de l’interface de calcul est également Compute. Exploitations de l’interface CAPI Les exploitations d’interface définissent la structure JSON de l’appel REST et les paramètres requis pour l’interface. -
Cliquez sur l’opération d’interface CreateNode CAPI.
Cette opération est l’opération qui fournit le cadre de travail pour la création du serveur virtuel EC2.
-
Passez en revue les composants de l’opération :
Champ ou liste connexe Description Structure de la réponse La structure de réponse est le cadre de travail JSON pour l’appel d’API REST. Il fournit une liste d’attributs que le fournisseur peut utiliser pour créer la ressource virtuelle avec des valeurs vides.
Paramètres d’exploitation d’interface Ces paramètres sont également les paramètres dont l’interface CAPI a besoin du système pour pouvoir les transmettre dans l’appel REST au fournisseur de cloud.
- Revenir à Conception > Cloud API puis cliquez sur l’onglet Fournisseur .
-
Ouvrez le fournisseur Azure .
Le formulaire Fournisseur Azure Cloud s’ouvre, vous montrant que ce fournisseur est basé sur une classe CMDB existante : Centre de données Azure [cmdb_ci_azure_datacenter].
-
Cliquez sur la liste connexe Produits dans le cloud et triez la liste en fonction de la colonne Nom .
Notez que plusieurs produits Azure sont disponibles par défaut. L’un des produits Azure les plus couramment utilisés à partir de modèles est Microsoft.Compute.
-
Cliquez sur Microsoft.Compute dans la colonne Nom .
Notez que le produit spécifie de nombreux types de ressources, chacun étant mappé à une classe CI.
Ces types de ressources indiquent certains des CI, mais pas tous, qui sont liés à l’ordinateur virtuel. Le processeur de réponse du bloc de ressources remplit les CI avec des données lorsque le fournisseur de cloud met en service l’ordinateur virtuel.
-
Pour afficher les CI importants associés à l’ordinateur virtuel :
- Portail de l'utilisateur dans le cloud Cliquez sur Piles, puis ouvrez la pile contenant l’ordinateur virtuel.
-
Cliquez sur l’icône Afficher la dépendance .
La carte de dépendance affiche le CI de la pile en haut, l’ordinateur virtuel au milieu et les différents CI connexes, tels que l’image, en bas.
-
Pour afficher le formulaire de l’ordinateur virtuel dans la CMDB, cliquez avec le bouton droit sur la flèche en regard d’un CI.
-
Dans le menu, sélectionnez Afficher le formulaire.
Le formulaire CI s’ouvre, vous montrant qu’une Portail de l'utilisateur dans le cloud grande partie des informations sont déjà disponibles lorsque vous affichez les propriétés de l’ordinateur virtuel.
Formulaire CI d’ordinateur virtuel Propriétés de l’ordinateur virtuel dans Portail de l'utilisateur dans le cloud