> For the complete documentation index, see [llms.txt](https://docs.verge.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.verge.io/automate-protect-and-extend/fr/automatisation/vm-recipes.md).

# Recettes VM

Les recettes VM offrent un moyen puissant de déployer rapidement des machines virtuelles spécifiques à une instance à partir d’une configuration standard. Cette page vous guidera dans le processus de création et d’utilisation des recettes VM.

## Qu’est-ce qu’une recette VM ?

Les recettes VM sont des modèles personnalisables pour lancer de nouvelles machines virtuelles uniques. Elles peuvent inclure des spécifications matérielles initiales, des affectations de pool de ressources et des options de configuration personnalisées via un magasin de paires clé-valeur créé lors de l’instanciation de la VM. Par exemple, une recette peut être configurée pour demander un nom d’utilisateur et un mot de passe de base de données, ou pour sélectionner un ensemble spécifique de paquets à installer. Les utilisateurs peuvent définir les options directement depuis l’interface utilisateur lors de la création de la nouvelle instance de VM. Les recettes peuvent également être exploitées avec l’API VergeOS afin de créer des interfaces utilisateur personnalisées et de rationaliser davantage le processus en s’intégrant aux systèmes existants, par exemple des portails de services.

**Intégration conforme aux normes du secteur**\
VergeOS prend en charge à la fois **Cloud-Init** (Linux) et **Cloudbase-Init** (Windows) pour personnaliser les VM lors du premier démarrage. Cela peut inclure des tâches comme la configuration des utilisateurs, l’installation de paquets ou l’exécution de scripts. Les recettes peuvent vous permettre de déployer rapidement des implémentations cloud-init/Cloudbase-init en fournissant l’interface utilisateur pour recueillir les entrées et en créant dynamiquement les fichiers de réponses associés. Voir [Utilisation avancée](#advanced-usage) ci-dessous pour plus d’informations.

**Avantages de l’utilisation des recettes VM**

* Déploiement rapide de nouvelles machines virtuelles
* Cohérence entre les configurations de VM
* Réduction du temps de configuration manuelle
* Personnalisable pour répondre aux besoins spécifiques des applications

## Recettes VM incluses

Un système VergeOS inclut automatiquement le **Référentiel du fournisseur de services (Marketplace)** composé de recettes VM qui peuvent être utilisées immédiatement pour créer de nouvelles machines virtuelles de nombreux types. La liste de ces recettes VM disponibles peut être consultée en naviguant vers **Référentiels > (double-cliquez) Référentiel MarketPlace > Recettes VM**.

![marketplaceVMlisting](/files/e6e3d49df66b91c45bda9fdb84989c4e7d11c4f8)

Vous pouvez double-cliquer sur une recette VM individuelle pour afficher sa configuration.

![included-recipe-config](/files/ad3230de4dc763b12a2864bf91b2cd9345e3e8a1)

## Créer une nouvelle recette VM

### Configuration de base

1. **Créer une VM** pour servir de **modèle de base** pour la recette. La VM doit être généralisée et adaptée au processus de réplication/personnalisation.
2. Depuis le menu supérieur, accédez à **Machines virtuelles** > **+ Nouvelle recette VM**.

{% hint style="info" %}
**Les recettes sont stockées dans** [**Catalogues**](/automate-protect-and-extend/fr/automatisation/recipes-organization.md#catalogs)**. Si vous n’avez pas encore créé de catalogue local, vous serez invité à en créer un nouveau d’abord.**
{% endhint %}

3. **Champs de la recette**

   * **Nom :** Utilisez un nom descriptif qui identifie adéquatement la recette et peut aider les utilisateurs à trouver les recettes appropriées.
   * **Description :** (facultatif) Vous pouvez stocker ici toute information supplémentaire sur cette recette. Cela peut être un bon endroit pour fournir une documentation de base sur l’objectif visé et des directives générales.
   * **Icône :** (facultatif) une *Font Awesome* icône peut être associée à la recette. Les icônes peuvent aider les utilisateurs à identifier facilement différentes recettes/types de recettes.
   * **Catalogue :** Sélectionnez un catalogue dans lequel stocker la recette. Les catalogues sont utiles pour organiser les recettes.
   * **Machine virtuelle :** Sélectionnez une VM modèle.
   * **Version :** Attribuez un numéro de version. Ce champ s’incrémentera automatiquement chaque fois que la recette est modifiée, afin de suivre les changements.

   <div data-gb-custom-block data-tag="hint" data-style="info" class="hint hint-info"><p><strong>Numérotation des versions</strong></p><p>Un numéro de version de 1.0.0 serait incrémenté en 1.0.0-1 puis 1.0.0-2, et ainsi de suite. De plus, vous pouvez modifier manuellement le numéro de version pour refléter des changements de version plus importants, par exemple passer la version à 2.0.0 après avoir apporté des modifications importantes à la recette.</p></div>

   * **Utiliser l’actif pour les noms de questions :** Lorsqu’elle est activée, les noms des questions de disque et de NIC sont basés sur le numéro d’actif attribué plutôt que sur un numéro ordinal.

   <div data-gb-custom-block data-tag="hint" data-style="success" class="hint hint-success"><p><strong>Lorsqu’une recette est basée sur une machine virtuelle, des questions de disque sont créées automatiquement pour chacun des disques de la VM, par exemple YB_DRIVE_1_SIZE, YB_DRIVE_3_NONPERSISTENT, YB_DRIVE_2_SERIAL, etc.</strong></p></div>

   * **Dépendances de version :** (Ne s’applique pas aux recettes qui ne seront utilisées que sur le système local et ses propres locataires). Des dépendances peuvent être spécifiées lorsque des fonctionnalités VergeOS sont requises pour que la recette fonctionne correctement (afin d’empêcher un système distant d’utiliser une recette qu’il ne peut pas prendre en charge).
4. Cliquez sur **Soumettre** pour enregistrer la configuration de base. Le tableau de bord de la recette VM affichera l’endroit où vous pouvez configurer vos sections et vos questions.

### Questions

Les questions de recette sont utilisées pour déterminer les valeurs clés. Lorsqu’une recette est créée, certaines questions sont incluses automatiquement. Certaines de ces questions sont désactivées par défaut et devront être activées si vous souhaitez les utiliser.

1. **(Facultatif) Activer la ou les questions désactivées par défaut :** Cliquez sur Questions (menu de gauche ou carte du tableau de bord), sélectionnez la ou les questions, puis cliquez sur Activer dans le menu de gauche.
2. Pour configurer des questions supplémentaires, cliquez sur **Questions** dans le menu de gauche, puis sur **Nouveau**.

**Champs de la question**:

* **Section :** chaque question appartient à une seule section. Les sections vous permettent de regrouper vos questions sur le formulaire de saisie. Certaines sections sont créées automatiquement. Vous pouvez éventuellement créer de nouvelles sections pour vos questions.
* **Nom :** sert de nom de variable pouvant être référencé dans des scripts ; utilisez un nom descriptif pour faciliter la maintenance et le dépannage des scripts ; caractères alphanumériques uniquement (pas d’espaces ni de caractères spéciaux)
* **Type :** détermine comment les données sont collectées : via la saisie utilisateur, l’interaction avec la base de données VergeOS, le téléchargement d’images cloud, etc.
* **ID de l’ordre :** utilisé pour déterminer l’ordre d’affichage des questions (dans la section sélectionnée)
* **Affichage :** texte affiché dans l’interface VergeOS pour que l’utilisateur réponde aux questions de la recette
* **Valeur par défaut :** (facultatif) définit une valeur de réponse initiale pour la question
* **Validation Regex :** (facultatif) chaîne d’expression régulière utilisée pour valider la saisie (syntaxe Regex standard)
* **Texte de remplacement :** (facultatif) texte grisé affiché pour donner à l’utilisateur un exemple de la saisie attendue
* **Texte d’info-bulle :** (facultatif) texte d’aide utilisateur affiché dans une fenêtre contextuelle lorsque le champ est survolé à la souris
* **Texte de note :** (facultatif) texte d’aide utilisateur affiché directement sous le champ de saisie pour fournir des indications supplémentaires.
* **À la modification :** permet de masquer/afficher d’autres questions lorsque ce champ est modifié. (Un exemple de code est affiché dans ce champ lors de la création d’une nouvelle question.)

  Des options de configuration supplémentaires peuvent être disponibles selon le type sélectionné.

## Simuler une recette VM

Vous pouvez simuler une recette VM pour la tester. La simulation de la recette vous permettra d’afficher le formulaire de saisie utilisateur, de tester la validation des champs et de créer des fichiers de réponses d’exemple afin de vérifier votre configuration. Vous ne pouvez simuler qu’une recette VM publiée dans votre catalogue local. Si vous le souhaitez, vous pouvez faire référence aux recettes Marketplace et les cloner dans le catalogue local.

* Pour simplement afficher le formulaire de saisie utilisateur : lorsque vous êtes sur le tableau de bord de la recette VM, cliquez sur **Simuler la recette** dans le menu de gauche.
* Depuis le formulaire de saisie simulé, vous pouvez tester la validation des champs et générer des fichiers de réponses de test en cliquant sur le bouton **Simuler** au bas du formulaire. Une liste de paires variable/valeur, ainsi qu’un aperçu des fichiers de résultat simulés, s’affichera.
* Pour procéder à la création d’une VM à partir des entrées, cliquez sur le bouton Créer.

## Modifier une recette VM

Lorsque des modifications sont apportées à une recette, celle-ci doit être republiée afin que ces changements soient pris en compte. Le haut du tableau de bord de la recette affichera un message indiquant qu’elle doit être republiée pour que les changements prennent effet. Vous pouvez utiliser le **Republier** lien dans ce message ou cliquer sur Republier dans le menu de gauche.

{% hint style="success" %}
**Lorsque vous apportez des modifications et republiez une recette, les systèmes distants et les locataires sont informés qu’une mise à jour est disponible (notification en haut du tableau de bord de la recette VM et case à cocher de mise à jour disponible) ; ils doivent mettre à jour la recette pour accéder aux modifications.**
{% endhint %}

## Utiliser une recette VM

Les recettes VM sont disponibles pour être utilisées lors de la création d’une nouvelle machine virtuelle. Tous les catalogues accessibles (locaux et distants) sont répertoriés à gauche de l’écran de nouvelle VM ; sélectionnez un catalogue pour afficher les recettes individuelles disponibles.

## Instances de recette

Une instance désigne une machine virtuelle associée à une recette VM. Lorsqu’une machine virtuelle est créée avec une recette, elle est considérée comme une instance de la recette jusqu’à ce qu’elle soit supprimée ou détachée de la recette.

Cliquez sur **Instances** dans le menu de gauche d’un tableau de bord de recette VM pour accéder rapidement à la liste des VM associées. Une recette VM ne peut pas être supprimée s’il existe des instances de VM associées.

## Utilisation avancée

### Intégration de Cloud-Init et Cloudbase-init

**À utiliser avec un modèle de VM :**

* Définissez le **Champ Cloud-init Datasource =&#x20;*****Config Drive v2***.
* Installez Cloud-init et les scripts associés dans le modèle de VM.

**Pour utiliser une image système en ligne :**\
Les recettes VergeOS permettent de tirer parti des nombreuses images système cloud-init préinstallées et disponibles au téléchargement pour la plupart des systèmes d’exploitation Linux et FreeBSD. Pour utiliser une image téléchargée spécifique, vous pouvez créer une question de recette configurée comme suit :

* **Nom=*****"OS\_DL\_URL"***
* **Type=*****Masqué***
* **Valeur par défaut**: l’URL de téléchargement (par exemple `https://cloud-images.example.com/releases/jammy/release/ubuntu-22.04-server-cloudimg-amd64-disk-kvm.img`, `http://download.rockylinux.org/pub/rocky/8/images/x86_64/Rocky-8-GenericCloud.latest.x86_64.qcow2`)

Pour diffuser une image cloud via le web, vous pouvez créer une question de recette configurée comme suit :

* **Nom=*****"OS\_URL"***
* **Type=*****Masqué***
* **Valeur par défaut**: l’URL de l’image (par exemple `https://cloud/debian.org/images/cloud/bullseye/latest/debian-11-generic-amd64.qcow2`)

**Exemples de référence :**\
[Les recettes Marketplace](#included-vm-recipes) offrent de bons exemples pour utiliser des images OS cloud-init/cloudbase-init dans une recette.

L’intégration avec Cloud-init/Cloudbase-init permet de nombreuses solutions avec une variété d’approches possibles. Contactez le support VergeOS si vous avez besoin d’aide supplémentaire.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.verge.io/automate-protect-and-extend/fr/automatisation/vm-recipes.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
