Automatisation » Historique » Version 8
Version 7 (Daniel Dehennin, 13/04/2021 15:07) → Version 8/43 (Daniel Dehennin, 13/04/2021 15:13)
{{>toc}}
h1. Automatisation
Dans le cas de l'utilisation d'un serveur Hapy, l'utilisateur doit créer ses VM *à la main*.
Un article détaille un exemple de processus https://pcll.ac-dijon.fr/eole/utiliser-hapy-virtualiser-modules-eole/
L'idée est de pouvoir proposer une *automatisation* de ce type de déploiement.
À la suite de l'étude faite par Cadoles :
* Nous imposons l'utilisation d'un Zéphir
* Nous ne proposons pas de modèle d'infrastructure (Amon + Scribe, Amon + Seth AD + Seth filer, ...) (l'idée serait à travailler plus tard)
h1. Pré requis pour utiliser cette fonctionnalité
* Avoir un Zéphir pour manager les Hâpy et les VM installées sur ces Hâpy
* Avoir au moins un Hâpy instancié et configuré.
* l'accès vers le dépôt des images Eole/Hâpy doit être possible (proxy,...) (et le dépot préparé)
* Les images devront être Cloudifiées (cloud-init ou one-context).
h1. Préparation d'Hâpy
* Dans Zéphir
** Création d'un établissement
** Création du serveur Hâpy dans l'établissement
* Dans l’établissement
** Installation d'Hâpy sur une machine physique avec l'ISO
** Enregistrement Zéphir
** Création des serveurs de l'établissement
h1. Exigences de fonctionnement
* Toutes les VM *managées* utilisent des images persistantes
* Toutes les VM sont enregistrées sur Zéphir
* Si la VM existe déjà sur l'Hapy, on ne la recrée pas (attention: seul le template peut être actualisé)
h1. Comment fonctionne l'automatisation
h2. Il faut créer la configuration des VM dans Zéphir (dont les caractéristiques de la VM)
Voir #32117
(si le paquet *@eole-modele-vm@* n'est pas installé, faire *@apt-eole install eole-modele-vm@*)
Pour cela, vous devez *activer_modele_vm*. Renseigner les variables suivantes :
* mémoire : la mémoire en Go (par defaut : la préconisation EOLE pour le module)
* vcpu :
* Disque Os : nom du disque OS de la VM (par défaut: *@<eole-module>-<eole-release>@*) + Taille
* Disque Data : nom du disque Data + Taille
* Interface 1 : nom du réseau déclaré sur Hapy
* Interface 2 : nom du réseau déclaré sur Hapy
* Interface 3 : nom du réseau déclaré sur Hapy
* Interface X : nom du réseau déclaré sur Hapy
Ceci peut être fait lors de la création des variantes et la création des serveurs. Ce travail reste manuel.
DaD:
* Je pense qu’au lieu d’avoir *@Disque OS@* et *@Disque Data@* il faudrait une liste ordonnée de disque (*@nom de l’image@* + *@taille de l’image@* + *@bootable ?@*)
h2. Dans la configuration de l'Hapy, vous devez *activer_deploiement_automatique*
Dans la liste des VMs :
* Renseigner les Id Zéphir des serveurs devant être déployées sur cet Hapy (id zéphir ou nom de la vm ?)
* La liste est ordonnée : les VM sont démarrée dans cette ordre.
RQ: il n'y a pas de contrôle entre la liste des Interfaces déclarées sur Hapy et les Interfaces venant des configurations de VM.
h2. Depuis Zéphir, appliquer la configuration sur le serveur Hâpy
* La nouvelle configuration est déployé sur la machine Hapy
* Le reconfigure est exécuté
* les VM vont être installées, instanciées et prêtes à l'usage dans l'ordre de déclaration de la liste des VM
h1. Procédure poste service hapy
La création des interfaces aura été faite lors de l’instance/reconfigure de l'Hapy.
Idem pour les datastores....
Idem pour la déclaration du marketplace EOLE/Hapy
# Si *@activer_deploiement_automatique@* = *@non@*, stop
# Pour chaque *@IdZéphir@*
## récupérer toute la configuration de la VM dans un *@tar.gz@*
### Vérifier la cohérence des informations Hapy/VMs. Si échec, alors on s'arrête en erreur
## créer/mettre à jour un FILE dans hapy pour chaque configuration de VM
## télécharger les images Apps sur l'Hapy
## créer les images nécessaires Os (et Data si besoin)
## Créer/mettre à jour un TEMPLATE (Avec une contextualisation active, +Le fichier de Configuration, +Le script de post installation)
## Démarrer la VM
## Si l'instance n'est pas faite:
*** réponse aux questions de façon automatique
*** gestion des secrets
## Monitorer la fin d'instance avant de passer à la suivante.
h1. Automatisation
Dans le cas de l'utilisation d'un serveur Hapy, l'utilisateur doit créer ses VM *à la main*.
Un article détaille un exemple de processus https://pcll.ac-dijon.fr/eole/utiliser-hapy-virtualiser-modules-eole/
L'idée est de pouvoir proposer une *automatisation* de ce type de déploiement.
À la suite de l'étude faite par Cadoles :
* Nous imposons l'utilisation d'un Zéphir
* Nous ne proposons pas de modèle d'infrastructure (Amon + Scribe, Amon + Seth AD + Seth filer, ...) (l'idée serait à travailler plus tard)
h1. Pré requis pour utiliser cette fonctionnalité
* Avoir un Zéphir pour manager les Hâpy et les VM installées sur ces Hâpy
* Avoir au moins un Hâpy instancié et configuré.
* l'accès vers le dépôt des images Eole/Hâpy doit être possible (proxy,...) (et le dépot préparé)
* Les images devront être Cloudifiées (cloud-init ou one-context).
h1. Préparation d'Hâpy
* Dans Zéphir
** Création d'un établissement
** Création du serveur Hâpy dans l'établissement
* Dans l’établissement
** Installation d'Hâpy sur une machine physique avec l'ISO
** Enregistrement Zéphir
** Création des serveurs de l'établissement
h1. Exigences de fonctionnement
* Toutes les VM *managées* utilisent des images persistantes
* Toutes les VM sont enregistrées sur Zéphir
* Si la VM existe déjà sur l'Hapy, on ne la recrée pas (attention: seul le template peut être actualisé)
h1. Comment fonctionne l'automatisation
h2. Il faut créer la configuration des VM dans Zéphir (dont les caractéristiques de la VM)
Voir #32117
(si le paquet *@eole-modele-vm@* n'est pas installé, faire *@apt-eole install eole-modele-vm@*)
Pour cela, vous devez *activer_modele_vm*. Renseigner les variables suivantes :
* mémoire : la mémoire en Go (par defaut : la préconisation EOLE pour le module)
* vcpu :
* Disque Os : nom du disque OS de la VM (par défaut: *@<eole-module>-<eole-release>@*) + Taille
* Disque Data : nom du disque Data + Taille
* Interface 1 : nom du réseau déclaré sur Hapy
* Interface 2 : nom du réseau déclaré sur Hapy
* Interface 3 : nom du réseau déclaré sur Hapy
* Interface X : nom du réseau déclaré sur Hapy
Ceci peut être fait lors de la création des variantes et la création des serveurs. Ce travail reste manuel.
DaD:
* Je pense qu’au lieu d’avoir *@Disque OS@* et *@Disque Data@* il faudrait une liste ordonnée de disque (*@nom de l’image@* + *@taille de l’image@* + *@bootable ?@*)
h2. Dans la configuration de l'Hapy, vous devez *activer_deploiement_automatique*
Dans la liste des VMs :
* Renseigner les Id Zéphir des serveurs devant être déployées sur cet Hapy (id zéphir ou nom de la vm ?)
* La liste est ordonnée : les VM sont démarrée dans cette ordre.
RQ: il n'y a pas de contrôle entre la liste des Interfaces déclarées sur Hapy et les Interfaces venant des configurations de VM.
h2. Depuis Zéphir, appliquer la configuration sur le serveur Hâpy
* La nouvelle configuration est déployé sur la machine Hapy
* Le reconfigure est exécuté
* les VM vont être installées, instanciées et prêtes à l'usage dans l'ordre de déclaration de la liste des VM
h1. Procédure poste service hapy
La création des interfaces aura été faite lors de l’instance/reconfigure de l'Hapy.
Idem pour les datastores....
Idem pour la déclaration du marketplace EOLE/Hapy
# Si *@activer_deploiement_automatique@* = *@non@*, stop
# Pour chaque *@IdZéphir@*
## récupérer toute la configuration de la VM dans un *@tar.gz@*
### Vérifier la cohérence des informations Hapy/VMs. Si échec, alors on s'arrête en erreur
## créer/mettre à jour un FILE dans hapy pour chaque configuration de VM
## télécharger les images Apps sur l'Hapy
## créer les images nécessaires Os (et Data si besoin)
## Créer/mettre à jour un TEMPLATE (Avec une contextualisation active, +Le fichier de Configuration, +Le script de post installation)
## Démarrer la VM
## Si l'instance n'est pas faite:
*** réponse aux questions de façon automatique
*** gestion des secrets
## Monitorer la fin d'instance avant de passer à la suivante.