Projet

Général

Profil

Automatisation » Historique » Version 11

Gilles Grandgérard, 13/04/2021 15:31

1 2 Daniel Dehennin
{{>toc}}
2 2 Daniel Dehennin
3 1 Gilles Grandgérard
h1. Automatisation
4 1 Gilles Grandgérard
5 2 Daniel Dehennin
Dans le cas de l'utilisation d'un serveur Hapy, l'utilisateur doit créer ses VM *à la main*.
6 1 Gilles Grandgérard
Un article détaille un exemple de processus https://pcll.ac-dijon.fr/eole/utiliser-hapy-virtualiser-modules-eole/
7 1 Gilles Grandgérard
8 2 Daniel Dehennin
L'idée est de pouvoir proposer une *automatisation* de ce type de déploiement.
9 1 Gilles Grandgérard
10 3 Daniel Dehennin
À la suite de l'étude faite par Cadoles :
11 1 Gilles Grandgérard
12 2 Daniel Dehennin
* Nous imposons l'utilisation d'un Zéphir
13 2 Daniel Dehennin
* Nous ne proposons pas de modèle d'infrastructure (Amon + Scribe, Amon + Seth AD + Seth filer, ...) (l'idée serait à travailler plus tard)
14 1 Gilles Grandgérard
15 2 Daniel Dehennin
h1. Pré requis pour utiliser cette fonctionnalité
16 1 Gilles Grandgérard
17 2 Daniel Dehennin
* Avoir un Zéphir pour manager les Hâpy et les VM installées sur ces Hâpy
18 2 Daniel Dehennin
* Avoir au moins un Hâpy instancié et configuré.
19 11 Gilles Grandgérard
* l'accès vers le dépôt des images Eole/Hâpy doit être possible (proxy,...) (et le dépot préparé) 
20 11 Gilles Grandgérard
* Les images devront être Cloudifiées (cloud-init ou one-context). Voir #32118
21 2 Daniel Dehennin
22 1 Gilles Grandgérard
h1. Préparation d'Hâpy
23 1 Gilles Grandgérard
24 5 Daniel Dehennin
* Dans Zéphir
25 5 Daniel Dehennin
** Création d'un établissement
26 5 Daniel Dehennin
** Création du serveur Hâpy dans l'établissement
27 5 Daniel Dehennin
* Dans l’établissement
28 5 Daniel Dehennin
** Installation d'Hâpy sur une machine physique avec l'ISO
29 5 Daniel Dehennin
** Enregistrement Zéphir
30 5 Daniel Dehennin
** Création des serveurs de l'établissement
31 2 Daniel Dehennin
32 5 Daniel Dehennin
33 1 Gilles Grandgérard
h1. Exigences de fonctionnement
34 1 Gilles Grandgérard
35 2 Daniel Dehennin
* Toutes les VM *managées* utilisent des images persistantes
36 2 Daniel Dehennin
* Toutes les VM sont enregistrées sur Zéphir
37 2 Daniel Dehennin
* Si la VM existe déjà sur l'Hapy, on ne la recrée pas (attention: seul le template peut être actualisé)
38 1 Gilles Grandgérard
39 2 Daniel Dehennin
h1. Comment fonctionne l'automatisation
40 1 Gilles Grandgérard
41 1 Gilles Grandgérard
h2. Il faut créer la configuration des VM dans Zéphir (dont les caractéristiques de la VM)
42 1 Gilles Grandgérard
43 6 Daniel Dehennin
Voir #32117
44 4 Gilles Grandgérard
45 7 Daniel Dehennin
(si le paquet *@eole-modele-vm@* n'est pas installé, faire *@apt-eole install eole-modele-vm@*)
46 1 Gilles Grandgérard
47 2 Daniel Dehennin
Pour cela, vous devez *activer_modele_vm*. Renseigner les variables suivantes :
48 1 Gilles Grandgérard
49 2 Daniel Dehennin
* mémoire     : la mémoire en Go (par defaut : la préconisation EOLE pour le module)
50 2 Daniel Dehennin
* vcpu        : 
51 2 Daniel Dehennin
* Disque Os   : nom du disque OS de la VM (par défaut: *@<eole-module>-<eole-release>@*) + Taille
52 2 Daniel Dehennin
* Disque Data : nom du disque Data + Taille
53 2 Daniel Dehennin
* Interface 1 : nom du réseau déclaré sur Hapy
54 2 Daniel Dehennin
* Interface 2 : nom du réseau déclaré sur Hapy
55 2 Daniel Dehennin
* Interface 3 : nom du réseau déclaré sur Hapy
56 2 Daniel Dehennin
* Interface X : nom du réseau déclaré sur Hapy
57 1 Gilles Grandgérard
58 1 Gilles Grandgérard
Ceci peut être fait lors de la création des variantes et la création des serveurs. Ce travail reste manuel.
59 1 Gilles Grandgérard
60 8 Daniel Dehennin
61 8 Daniel Dehennin
DaD:
62 8 Daniel Dehennin
* 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 ?@*)
63 8 Daniel Dehennin
64 10 Gilles Grandgérard
h2. Dans la configuration de l'Hapy,
65 1 Gilles Grandgérard
66 10 Gilles Grandgérard
Voir #32118
67 10 Gilles Grandgérard
68 10 Gilles Grandgérard
Activer *activer_deploiement_automatique*
69 10 Gilles Grandgérard
Saisir la liste des VMs :
70 1 Gilles Grandgérard
71 2 Daniel Dehennin
* Renseigner les Id Zéphir des serveurs devant être déployées sur cet Hapy (id zéphir ou nom de la vm ?)
72 2 Daniel Dehennin
* La liste est ordonnée : les VM sont démarrée dans cette ordre.
73 2 Daniel Dehennin
74 1 Gilles Grandgérard
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.
75 1 Gilles Grandgérard
76 2 Daniel Dehennin
h2. Depuis Zéphir, appliquer la configuration sur le serveur Hâpy
77 1 Gilles Grandgérard
78 2 Daniel Dehennin
* La nouvelle configuration est déployé sur la machine Hapy
79 2 Daniel Dehennin
* Le reconfigure est exécuté
80 2 Daniel Dehennin
* les VM vont être installées, instanciées et prêtes à l'usage dans l'ordre de déclaration de la liste des VM
81 1 Gilles Grandgérard
82 1 Gilles Grandgérard
h1. Procédure poste service hapy
83 1 Gilles Grandgérard
84 2 Daniel Dehennin
La création des interfaces aura été faite lors de l’instance/reconfigure de l'Hapy.
85 1 Gilles Grandgérard
Idem pour les datastores....
86 1 Gilles Grandgérard
Idem pour la déclaration du marketplace EOLE/Hapy
87 1 Gilles Grandgérard
88 2 Daniel Dehennin
# Si *@activer_deploiement_automatique@* = *@non@*, stop
89 2 Daniel Dehennin
# Pour chaque *@IdZéphir@*
90 2 Daniel Dehennin
## récupérer toute la configuration de la VM dans un *@tar.gz@*
91 2 Daniel Dehennin
### Vérifier la cohérence des informations Hapy/VMs. Si échec, alors on s'arrête en erreur
92 2 Daniel Dehennin
## créer/mettre à jour un FILE dans hapy pour chaque configuration de VM 
93 2 Daniel Dehennin
## télécharger les images Apps sur l'Hapy
94 2 Daniel Dehennin
## créer les images nécessaires Os (et Data si besoin)
95 2 Daniel Dehennin
## Créer/mettre à jour un TEMPLATE (Avec une contextualisation active, +Le fichier de Configuration, +Le script de post installation)
96 2 Daniel Dehennin
## Démarrer la VM
97 2 Daniel Dehennin
## Si l'instance n'est pas faite: 
98 2 Daniel Dehennin
*** réponse aux questions de façon automatique
99 2 Daniel Dehennin
*** gestion des secrets
100 1 Gilles Grandgérard
## Monitorer la fin d'instance avant de passer à la suivante.