Projet

Général

Profil

Installation Gateway dans nebula » Historique » Version 75

Daniel Dehennin, 04/02/2015 17:02

1 47 Gilles Grandgérard
{{toc}}
2 47 Gilles Grandgérard
3 61 Klaas TJEBBES
http://dev-eole.ac-dijon.fr/projects/eole-ci-tests/wiki/ModeleReseaux
4 61 Klaas TJEBBES
5 50 Gilles Grandgérard
h1. A) Installation pour utilisation d'une gateway
6 3 Gilles Grandgérard
7 40 Gilles Grandgérard
h2. A.1) Récupération du dépot eole-ci-test
8 1 Gilles Grandgérard
9 4 Gilles Grandgérard
Faire :
10 4 Gilles Grandgérard
<pre>
11 29 Gérald Schwartzmann
git clone https://dev-eole.ac-dijon.fr/git/eole-ci-tests.git
12 4 Gilles Grandgérard
</pre>
13 1 Gilles Grandgérard
14 40 Gilles Grandgérard
h2. A.2) Ajout de la gateway dans le eole-ci-tests
15 1 Gilles Grandgérard
16 42 Gilles Grandgérard
il faut créer un script dans 'configuration/gateway/' dont le nom sera 'routeur_<user_nebula>.sh'. (Tips: copier un fichier existant !)
17 25 Gilles Grandgérard
Penser à mettre les droits d'execution.
18 1 Gilles Grandgérard
19 22 Gilles Grandgérard
<pre>
20 22 Gilles Grandgérard
IP_EOLE=<fin de l'Ip sur le reseau EOLE>
21 69 Gilles Grandgérard
IP_ONE=<fin de l'Ip sur le reseau ONE>
22 62 Gilles Grandgérard
IP_UTILISATEUR=<ip du poste de travail>
23 22 Gilles Grandgérard
</pre>
24 22 Gilles Grandgérard
25 62 Gilles Grandgérard
nb:
26 62 Gilles Grandgérard
IP_UTILISATEUR est facultative, la variable est utilisée pour envoyer des send-notify au travers du réseau...
27 62 Gilles Grandgérard
28 26 Gilles Grandgérard
Voir : 
29 26 Gilles Grandgérard
* http://dev-eole.ac-dijon.fr/projects/eole-interne/wiki/Adressage_ip 
30 26 Gilles Grandgérard
* Attention à ce que l'adresse soit disponible 
31 1 Gilles Grandgérard
32 62 Gilles Grandgérard
33 40 Gilles Grandgérard
h2. A.3) Ajout de la clef publique ssh dans eole-ci-tests/security/authorized_keys
34 1 Gilles Grandgérard
35 30 Gérald Schwartzmann
Les clefs publiques SSH présentes dans eole-ci-tests/security/authorized_keys sont automatiquement concatenées dans /root/.ssh/authorized_keys au 1er démarrage de la VM.
36 1 Gilles Grandgérard
L'acces a chaque VM peut se faire sans mot de passe.
37 1 Gilles Grandgérard
38 1 Gilles Grandgérard
Utiliser le nom 'user@hostname' pour votre fichier de cle.
39 1 Gilles Grandgérard
40 40 Gilles Grandgérard
h2. A.4) Commit
41 1 Gilles Grandgérard
42 1 Gilles Grandgérard
<pre>
43 31 Gérald Schwartzmann
git add -a
44 31 Gérald Schwartzmann
git commit -m "ajout de l'utisateur <user>"
45 1 Gilles Grandgérard
git push
46 1 Gilles Grandgérard
</pre>
47 1 Gilles Grandgérard
48 42 Gilles Grandgérard
h2. A.5) Publication de la clef et du fichier routeur
49 42 Gilles Grandgérard
50 42 Gilles Grandgérard
Attendre que Jenkins publie le commit vers les VM (15 minutes)
51 42 Gilles Grandgérard
52 42 Gilles Grandgérard
OU, faire :
53 52 Fabrice Barconnière
* Ouvrir votre navigateur, et Aller http://jenkins.eole.lan/view/Dev/job/git-clone-eole-ci-tests-to-all-vm/
54 42 Gilles Grandgérard
* Se connecter (compte smb.eole.lan)
55 42 Gilles Grandgérard
* Saisir le nom d'utilisateur et le mot de passe
56 54 Fabrice Barconnière
* Cliquer sur *Lancer un build*
57 42 Gilles Grandgérard
* Dans l"historique des builds" un build apparait. Cliquer sur le lien
58 42 Gilles Grandgérard
* Le message de commit 'git' doit apparaitre dans la sortie
59 26 Gilles Grandgérard
60 43 Gilles Grandgérard
h2. A.6) Initialiser les réseaux dans Nebula
61 1 Gilles Grandgérard
62 36 Gilles Grandgérard
* Ouvrir votre navigateur, et Aller http://jenkins.eole.lan/view/Dev/job/genere-modele-reseau-dans-nebula/build?delay=0sec
63 37 Gilles Grandgérard
* Se connecter (compte smb.eole.lan)
64 37 Gilles Grandgérard
* Saisir le nom d'utilisateur et le mot de passe
65 60 Klaas TJEBBES
* Cliquer sur *Build*
66 60 Klaas TJEBBES
* Dans "historique des builds" un build apparait. Cliquer sur le lien
67 38 Gilles Grandgérard
* Cliquer ensuite sur le lien 'Console Output'
68 37 Gilles Grandgérard
* Le texte affiche la sortie standard du processus de création des réseaux virtuels
69 37 Gilles Grandgérard
 
70 36 Gilles Grandgérard
71 43 Gilles Grandgérard
h2. A.7) Lancer la gateway
72 36 Gilles Grandgérard
73 70 Gilles Grandgérard
* Aller dans OpenNebula (https://bogdanov.eole.lan/)
74 35 Gérald Schwartzmann
* Aller dans 'Virtual Resources', puis 'Templates'
75 35 Gérald Schwartzmann
* Chercher 'gateway'
76 35 Gérald Schwartzmann
* Cliquer sur 'Instantiate'.La VM démarre.
77 28 Gilles Grandgérard
78 35 Gérald Schwartzmann
* Vérification
79 35 Gérald Schwartzmann
** Se connecter en VNC avec 'eole/$eole&123456'
80 35 Gérald Schwartzmann
** Taper 'ip addr' ==> vérifier l'IP SW EOLE
81 32 Gérald Schwartzmann
* lancer :
82 32 Gérald Schwartzmann
<pre>
83 32 Gérald Schwartzmann
 ssh root@<ipgateway>  ==> la connexion doit être sans mot de passe car la clef
84 32 Gérald Schwartzmann
</pre>
85 26 Gilles Grandgérard
86 40 Gilles Grandgérard
h1. B) Préparation du poste de travail
87 26 Gilles Grandgérard
88 40 Gilles Grandgérard
h2. B.1) Modifier /etc/hosts
89 26 Gilles Grandgérard
90 35 Gérald Schwartzmann
* Ajouter votre gateway : 
91 26 Gilles Grandgérard
<pre>
92 55 Fabrice Barconnière
192.168.230.<IP> gateway.ac-test.fr gateway
93 1 Gilles Grandgérard
</pre>
94 26 Gilles Grandgérard
95 26 Gilles Grandgérard
* Vérification
96 26 Gilles Grandgérard
<pre>
97 35 Gérald Schwartzmann
ping gateway
98 26 Gilles Grandgérard
ping gateway.ac-test.fr
99 26 Gilles Grandgérard
</pre>
100 26 Gilles Grandgérard
101 40 Gilles Grandgérard
h2. B.2) Ajouter tous les noms des machines ac-test.fr dans /etc/hosts
102 40 Gilles Grandgérard
103 73 Daniel Dehennin
*ATTENTION* : Cette étape n’est nécessaire que si vous n’utilisez pas le DNS EOLE (192.168.232.2)
104 73 Daniel Dehennin
105 58 Fabrice Barconnière
* Concatener le fichier (eole-ci-tests.git)/scripts/host dans /etc/hosts (connecté root)
106 56 Fabrice Barconnière
<pre>
107 1 Gilles Grandgérard
cd (eole-ci-tests.git)/scripts/
108 1 Gilles Grandgérard
cat hosts >> /etc/hosts
109 33 Gérald Schwartzmann
</pre>
110 1 Gilles Grandgérard
111 40 Gilles Grandgérard
h2. B.3) Activation des routes
112 40 Gilles Grandgérard
113 64 Gilles Grandgérard
* Executer le fichier :
114 64 Gilles Grandgérard
<pre>
115 64 Gilles Grandgérard
# cd <depot eole-ci-tests.git>
116 64 Gilles Grandgérard
# ./scripts/gateway-up.sh
117 64 Gilles Grandgérard
</pre>
118 33 Gérald Schwartzmann
Les routes sont inscrites...
119 1 Gilles Grandgérard
120 67 Gilles Grandgérard
REMARQUES:
121 67 Gilles Grandgérard
* Ce script devra être lancé à chaque redémarrage de votre machine !*
122 64 Gilles Grandgérard
123 1 Gilles Grandgérard
h2. B.4) Lancement du daemon send notify
124 64 Gilles Grandgérard
125 66 Gilles Grandgérard
* Si vous le souhaitez, Executer le fichier :
126 64 Gilles Grandgérard
<pre>
127 64 Gilles Grandgérard
# cd <depot eole-ci-tests.git>
128 72 Gilles Grandgérard
# nohup python ./scripts/server_notify_network.py &
129 64 Gilles Grandgérard
</pre>
130 64 Gilles Grandgérard
131 65 Gilles Grandgérard
REMARQUES:
132 65 Gilles Grandgérard
* Ce script devra être lancé à chaque redémarrage de votre machine !*
133 72 Gilles Grandgérard
* Le port 50000 est ouvert en UDP sur le poste client. Il attend des messages UDP pour les afficher avec send-notify *
134 1 Gilles Grandgérard
135 65 Gilles Grandgérard
h2. B.5) Selection de l'identitée SSH ( Si besoin)
136 1 Gilles Grandgérard
137 74 Daniel Dehennin
* Dans le cas, ou vous utilisez plusieurs clef publique ssh, Modifier le fichier *@~/.ssh/config@* en ajoutant :
138 39 Benjamin Bohard
<pre>
139 40 Gilles Grandgérard
Host *.ac-test.fr
140 1 Gilles Grandgérard
   IdentityFile ~/.ssh/<fichier de la cle copiée dans eole-ci-tests>
141 1 Gilles Grandgérard
</pre>
142 39 Benjamin Bohard
143 65 Gilles Grandgérard
h2. B.6) Astuce SSH knows hosts
144 51 Gilles Grandgérard
145 75 Daniel Dehennin
* Pour éviter les message know_hosts, vous pouvez modifier le fichier *@.ssh/config@* en ajoutant :
146 51 Gilles Grandgérard
<pre>
147 51 Gilles Grandgérard
# Use daily destroyed file to avoid pain with VMs
148 51 Gilles Grandgérard
Host *.ac-test.fr 192.168.230.1?? 192.168.230.2??
149 51 Gilles Grandgérard
  CheckHostIP no
150 1 Gilles Grandgérard
  UserKnownHostsFile /tmp/ac-test.fr
151 51 Gilles Grandgérard
  StrictHostKeyChecking no
152 51 Gilles Grandgérard
</pre>
153 51 Gilles Grandgérard
154 65 Gilles Grandgérard
h2. B.7) Vérification
155 27 Gilles Grandgérard
156 72 Gilles Grandgérard
* Aller dans OpenNebual (https://bogdanov.eole.lan/)
157 44 Gilles Grandgérard
* Aller dans 'Virtual Resources', puis 'Templates'
158 44 Gilles Grandgérard
* Chercher 'aca.eolebase'
159 44 Gilles Grandgérard
* Cliquer sur 'Instantiate'.La VM démarre.
160 44 Gilles Grandgérard
* Se connecter en VNC avec 'eole/$eole&123456'
161 27 Gilles Grandgérard
* Taper 'ip addr' ==> vérifier l'IP SW EOLE
162 27 Gilles Grandgérard
163 45 Gilles Grandgérard
164 1 Gilles Grandgérard
h1. C) Utilisation d'un template 
165 1 Gilles Grandgérard
166 62 Gilles Grandgérard
h2. C.1) Démarrer une machine et se connecter dessus
167 1 Gilles Grandgérard
168 62 Gilles Grandgérard
* Choisir la machine dans Nebula 
169 62 Gilles Grandgérard
* l'instancier
170 62 Gilles Grandgérard
* lancer dans une console
171 62 Gilles Grandgérard
172 59 Gérald Schwartzmann
<pre>
173 59 Gérald Schwartzmann
# ssh root@nomDeMachine
174 59 Gérald Schwartzmann
</pre>
175 59 Gérald Schwartzmann
176 59 Gérald Schwartzmann
Exemple :
177 59 Gérald Schwartzmann
178 59 Gérald Schwartzmann
<pre>
179 59 Gérald Schwartzmann
# ssh root@amonecole.etb3.ac-test.fr
180 59 Gérald Schwartzmann
</pre>
181 1 Gilles Grandgérard
182 62 Gilles Grandgérard
h2. C.2) Obtenir le contexte de la machine
183 62 Gilles Grandgérard
184 72 Gilles Grandgérard
Le contexte nécessite de monter le partage VirtFs eole-ci-tests. pour cela faire :
185 1 Gilles Grandgérard
<pre>
186 63 Gilles Grandgérard
# /root/mount.eole-ci-tests
187 63 Gilles Grandgérard
# . /mnt/eole-ci-tests/scripts/getVMContext.sh 
188 1 Gilles Grandgérard
</pre>
189 1 Gilles Grandgérard
190 62 Gilles Grandgérard
Le script getVMContext.sh permet de charger les variables contextuelles du module.
191 62 Gilles Grandgérard
Attention : il faut le sourcer !
192 59 Gérald Schwartzmann
193 62 Gilles Grandgérard
Le résultat est de la forme :
194 59 Gérald Schwartzmann
<pre>
195 59 Gérald Schwartzmann
root@amonecole:/mnt/eole-ci-tests/scripts# ./getVMContext.sh 
196 59 Gérald Schwartzmann
VM_ONE           = 
197 59 Gérald Schwartzmann
VM_ID            = 7295
198 59 Gérald Schwartzmann
VM_OWNER         = gerald
199 59 Gérald Schwartzmann
VM_MACHINE       = etb3.amonecole
200 59 Gérald Schwartzmann
VM_MAJAUTO       = DEV
201 59 Gérald Schwartzmann
VM_VERSIONMAJEUR = 2.4.1
202 59 Gérald Schwartzmann
VM_MODULE        = amonecole
203 59 Gérald Schwartzmann
VM_CONTAINER     = oui
204 59 Gérald Schwartzmann
VM_HOSTNAME      = amonecole
205 59 Gérald Schwartzmann
VM_DNSNAME       = amonecole.etb3.ac-test.fr
206 59 Gérald Schwartzmann
VM_ETABLISSEMENT = etb3
207 59 Gérald Schwartzmann
VM_ETH0_IP       = 192.168.0.33
208 59 Gérald Schwartzmann
VM_ETH0_GW       = 192.168.0.1
209 59 Gérald Schwartzmann
VM_ETH1_IP       = 10.3.2.1
210 59 Gérald Schwartzmann
---
211 1 Gilles Grandgérard
root@amonecole:/mnt/eole-ci-tests/scripts#
212 59 Gérald Schwartzmann
</pre>
213 1 Gilles Grandgérard
214 62 Gilles Grandgérard
h2. C.3) Configurer la machine
215 1 Gilles Grandgérard
216 68 Gérald Schwartzmann
<pre>
217 68 Gérald Schwartzmann
cd /mnt/eole-ci-tests/scripts/
218 68 Gérald Schwartzmann
</pre>
219 68 Gérald Schwartzmann
220 68 Gérald Schwartzmann
* Le script *configure-vm.sh* permet d'appliquer une configuration à la VM. 
221 62 Gilles Grandgérard
* Ce script appliquera :
222 62 Gilles Grandgérard
- la commande Maj-Auto adaptée au contexte,
223 62 Gilles Grandgérard
- Copiera le fichier 'config.eol' correspondant à la machine et la version 
224 62 Gilles Grandgérard
- lancera l'instance sans questions
225 62 Gilles Grandgérard
226 59 Gérald Schwartzmann
Pour obtenir de l'aide :
227 59 Gérald Schwartzmann
228 1 Gilles Grandgérard
<pre>
229 59 Gérald Schwartzmann
# ./configure-vm.sh -h
230 59 Gérald Schwartzmann
</pre>
231 59 Gérald Schwartzmann
232 62 Gilles Grandgérard
Pour lancer l'instanciation avec le configuration par 'default'
233 1 Gilles Grandgérard
234 1 Gilles Grandgérard
<pre>
235 1 Gilles Grandgérard
# ./configure-vm.sh -M instance
236 1 Gilles Grandgérard
</pre>
237 1 Gilles Grandgérard
238 62 Gilles Grandgérard
Pour lancer l'instanciation avec le configuration par 'hamaster'
239 62 Gilles Grandgérard
240 62 Gilles Grandgérard
<pre>
241 62 Gilles Grandgérard
# ./configure-vm.sh -M instance -C hamaster
242 62 Gilles Grandgérard
</pre>
243 62 Gilles Grandgérard
244 62 Gilles Grandgérard
Pour ne copier que la configuration 'hamaster'
245 62 Gilles Grandgérard
246 62 Gilles Grandgérard
<pre>
247 72 Gilles Grandgérard
# ./configure-vm.sh -M configeol -C hamaster
248 62 Gilles Grandgérard
</pre>
249 62 Gilles Grandgérard
250 62 Gilles Grandgérard
h2. C.4)