Projet

Général

Profil

Openstack Management TTNN » Historique » Version 19

Mehdi Abaakouk, 05/12/2014 09:49

1 3 Mehdi Abaakouk
{{>toc}}
2 3 Mehdi Abaakouk
3 1 Mehdi Abaakouk
h1. Openstack Management TTNN
4 1 Mehdi Abaakouk
5 11 Mehdi Abaakouk
6 11 Mehdi Abaakouk
openstack tools for ttnn:  http://chiliproject.tetaneutral.net/projects/git-tetaneutral-net/repository/openstack-tools
7 11 Mehdi Abaakouk
8 4 Mehdi Abaakouk
h2. Opération sur les VMs (des membres)
9 1 Mehdi Abaakouk
10 17 Mehdi Abaakouk
h3. Voir la console graphique sans spice-html5:
11 17 Mehdi Abaakouk
12 17 Mehdi Abaakouk
Copier le script suivant 'gvnc' sur ca machine:
13 17 Mehdi Abaakouk
14 17 Mehdi Abaakouk
<pre>
15 17 Mehdi Abaakouk
#!/bin/bash
16 17 Mehdi Abaakouk
vm=$1
17 17 Mehdi Abaakouk
info=($(ssh openstack.tetaneutral.net -p 2222 -l root -- "mysql nova --skip-column-names --batch -e 'select host, uuid from instances where display_name=\"$vm\";'"))
18 17 Mehdi Abaakouk
19 17 Mehdi Abaakouk
if [ "${info[0]}" == "mysql" ]; then
20 17 Mehdi Abaakouk
    echo "Error in mysql request"
21 17 Mehdi Abaakouk
    exit 1
22 17 Mehdi Abaakouk
fi
23 17 Mehdi Abaakouk
24 17 Mehdi Abaakouk
hypervisor=${info[0]}.tetaneutral.net
25 17 Mehdi Abaakouk
uuid=${info[1]}
26 17 Mehdi Abaakouk
spice_port=$(ssh ${hypervisor} -p 2222 -l root virsh domdisplay ${uuid} | awk -F: '{print $3}')
27 17 Mehdi Abaakouk
28 17 Mehdi Abaakouk
echo "$vm on $hypervisor port $spice_port"
29 17 Mehdi Abaakouk
ssh -N $hypervisor -p 2222 -l root -L 5910:localhost:${spice_port} &
30 17 Mehdi Abaakouk
pid=$!
31 17 Mehdi Abaakouk
32 17 Mehdi Abaakouk
33 17 Mehdi Abaakouk
cleanup(){
34 17 Mehdi Abaakouk
    kill $pid
35 17 Mehdi Abaakouk
}
36 17 Mehdi Abaakouk
37 17 Mehdi Abaakouk
trap cleanup EXIT
38 17 Mehdi Abaakouk
39 17 Mehdi Abaakouk
sleep 2
40 17 Mehdi Abaakouk
remote-viewer spice://localhost:5910/
41 17 Mehdi Abaakouk
</pre>
42 17 Mehdi Abaakouk
43 17 Mehdi Abaakouk
Puis 
44 17 Mehdi Abaakouk
45 17 Mehdi Abaakouk
<pre>
46 17 Mehdi Abaakouk
sudo apt-get install virt-viewer
47 17 Mehdi Abaakouk
./gvnc puppet.openstack.net
48 17 Mehdi Abaakouk
</pre>
49 17 Mehdi Abaakouk
50 17 Mehdi Abaakouk
51 1 Mehdi Abaakouk
h3. Reboot VM en error
52 1 Mehdi Abaakouk
53 1 Mehdi Abaakouk
<pre>
54 1 Mehdi Abaakouk
nova reset-state --active xxx.tetaneutral.net
55 1 Mehdi Abaakouk
nova reboot --hard --poll xxx.tetaneutral.net
56 1 Mehdi Abaakouk
</pre>
57 1 Mehdi Abaakouk
58 6 Laurent GUERBY
h3. Shutdown une VM
59 5 Laurent GUERBY
60 5 Laurent GUERBY
<pre>
61 5 Laurent GUERBY
nova stop xxx.tetaneutral.net
62 5 Laurent GUERBY
</pre>
63 5 Laurent GUERBY
64 5 Laurent GUERBY
A noter que suspend fait une sauvegarde de la RAM comme sur un laptop. shelve est bugué ne pas utiliser.
65 1 Mehdi Abaakouk
66 7 Laurent GUERBY
h3. Effacer une VM
67 6 Laurent GUERBY
68 6 Laurent GUERBY
<pre>
69 1 Mehdi Abaakouk
nova delete xxx.tetaneutral.net
70 7 Laurent GUERBY
</pre>
71 7 Laurent GUERBY
72 7 Laurent GUERBY
h3. Disques de VM
73 7 Laurent GUERBY
74 7 Laurent GUERBY
Pour renommer (et permettre a boot-disk de recreer) ou effacer :
75 7 Laurent GUERBY
76 7 Laurent GUERBY
<pre>
77 7 Laurent GUERBY
cinder list
78 7 Laurent GUERBY
cinder rename <ID> <newname>
79 7 Laurent GUERBY
cinder delete <ID_or_Name>
80 6 Laurent GUERBY
</pre>
81 5 Laurent GUERBY
82 1 Mehdi Abaakouk
h3. Agrandissement d'un disque
83 1 Mehdi Abaakouk
84 1 Mehdi Abaakouk
Sur la machine 'openstack':
85 1 Mehdi Abaakouk
86 1 Mehdi Abaakouk
<pre>
87 1 Mehdi Abaakouk
root@openstack:~/tools ./os-grow-disk.sh 
88 1 Mehdi Abaakouk
usage: os-grow-disk.sh CINDER_VOLUME_ID SIZE_GB
89 1 Mehdi Abaakouk
90 1 Mehdi Abaakouk
root@openstack:~/tools# ./os-grow-disk.sh bc6f01cb-c6b6-4413-b2ef-1f7df0031049 60
91 1 Mehdi Abaakouk
Cinder:
92 1 Mehdi Abaakouk
bc6f01cb-c6b6-4413-b2ef-1f7df0031049 , test4-bootdisk | 40 -> 60
93 1 Mehdi Abaakouk
 
94 1 Mehdi Abaakouk
Enter YES to update
95 1 Mehdi Abaakouk
YES
96 1 Mehdi Abaakouk
Testing g3 ssh connection...
97 1 Mehdi Abaakouk
Resizing the kvm blockdevice...
98 1 Mehdi Abaakouk
Block device 'vda' is resized
99 1 Mehdi Abaakouk
Updating cinder database with the new value...
100 1 Mehdi Abaakouk
Update finish
101 1 Mehdi Abaakouk
</pre>
102 1 Mehdi Abaakouk
103 1 Mehdi Abaakouk
Puis sur la VM:
104 1 Mehdi Abaakouk
105 1 Mehdi Abaakouk
Il faut avoir un 'parted' récent ou patché avec le support du 'online resizepart':
106 1 Mehdi Abaakouk
107 1 Mehdi Abaakouk
'online resizepart' est natif depuis parted >= 3.1: 
108 1 Mehdi Abaakouk
* debian >= jessie
109 1 Mehdi Abaakouk
* ubuntu >= 14.10
110 1 Mehdi Abaakouk
111 1 Mehdi Abaakouk
'online resizepart' backporté dans:
112 1 Mehdi Abaakouk
* ubuntu >= 13.10 < 14.10 
113 1 Mehdi Abaakouk
114 1 Mehdi Abaakouk
Pour debian wheezy, utilisation les packages ubuntu de 14.04 devrait marcher 
115 1 Mehdi Abaakouk
(pas encore testé, à voir si le kernel veut bien reload la table des partitions après)
116 1 Mehdi Abaakouk
117 1 Mehdi Abaakouk
<pre> 
118 1 Mehdi Abaakouk
root@test4:~# parted /dev/vda print | grep vda
119 1 Mehdi Abaakouk
Disk /dev/vda: 64.4GB
120 1 Mehdi Abaakouk
 
121 1 Mehdi Abaakouk
root@test4# parted /dev/vda resizepart 1 
122 1 Mehdi Abaakouk
Warning: Partition /dev/vda1 is being used. Are you sure you want to continue?
123 1 Mehdi Abaakouk
Yes/No? Yes                                                               
124 1 Mehdi Abaakouk
End?  [42.9GB]? 64.4GB   # METTRE ICI LA TAILLE VU AU DESSUS                                                 
125 1 Mehdi Abaakouk
Information: You may need to update /etc/fstab.                           
126 1 Mehdi Abaakouk
127 1 Mehdi Abaakouk
root@test4:~# resize2fs /dev/vda1
128 1 Mehdi Abaakouk
resize2fs 1.42.9 (4-Feb-2014)
129 1 Mehdi Abaakouk
Filesystem at /dev/vda1 is mounted on /; on-line resizing required
130 1 Mehdi Abaakouk
old_desc_blocks = 3, new_desc_blocks = 4
131 1 Mehdi Abaakouk
The filesystem on /dev/vda1 is now 15722400 blocks long.
132 1 Mehdi Abaakouk
133 1 Mehdi Abaakouk
root@test4:~# df -h | grep vda
134 1 Mehdi Abaakouk
/dev/vda1        60G  797M   56G   2% /
135 1 Mehdi Abaakouk
</pre>
136 1 Mehdi Abaakouk
137 14 Laurent GUERBY
Méthode plus risquée et manuelle pour wheezy :
138 14 Laurent GUERBY
139 15 Laurent GUERBY
<pre>
140 14 Laurent GUERBY
sfdisk -d /dev/vda > vda.mbr
141 14 Laurent GUERBY
cp vda.mbr vda.mbr.ori
142 14 Laurent GUERBY
vi vda.mbr 
143 14 Laurent GUERBY
# mettre un tres grand nombre pour la fin de la partition
144 14 Laurent GUERBY
sfdisk -L -n --no-reread /dev/vda < vda.mbr
145 14 Laurent GUERBY
# cela va faire une erreur avec le max a mettre pour la fin de la partition
146 14 Laurent GUERBY
# changer la fin de la partition avec ce chiffre
147 14 Laurent GUERBY
sfdisk -L --no-reread /dev/vda < vda.mbr
148 14 Laurent GUERBY
reboot
149 16 Aymeric APLU
resize2fs -p /dev/vda1
150 14 Laurent GUERBY
</pre>
151 14 Laurent GUERBY
152 1 Mehdi Abaakouk
h3. Ajout d'une interface réseau à une VM:
153 1 Mehdi Abaakouk
154 1 Mehdi Abaakouk
<pre>
155 1 Mehdi Abaakouk
$ neutron net-list | grep vlan3199
156 1 Mehdi Abaakouk
| 460f49ce-f5ed-449e-9e0f-7626bcee4379 | vlan3199         | ba3f12af-074a-4a31-9a7c-a621993e13bb 192.168.99.0/24     |
157 1 Mehdi Abaakouk
158 1 Mehdi Abaakouk
$ neutron port-create 460f49ce-f5ed-449e-9e0f-7626bcee4379 --name nagios-eth2 --fixed-ips type=dict list=true ip_address=192.168.99.248
159 1 Mehdi Abaakouk
Created a new port:
160 1 Mehdi Abaakouk
+-----------------------+---------------------------------------------------------------------------------------+
161 1 Mehdi Abaakouk
| Field                 | Value                                                                                 |
162 1 Mehdi Abaakouk
+-----------------------+---------------------------------------------------------------------------------------+
163 1 Mehdi Abaakouk
| admin_state_up        | True                                                                                  |
164 1 Mehdi Abaakouk
| allowed_address_pairs |                                                                                       |
165 1 Mehdi Abaakouk
| binding:host_id       |                                                                                       |
166 1 Mehdi Abaakouk
| binding:profile       | {}                                                                                    |
167 1 Mehdi Abaakouk
| binding:vif_details   | {}                                                                                    |
168 1 Mehdi Abaakouk
| binding:vif_type      | unbound                                                                               |
169 1 Mehdi Abaakouk
| binding:vnic_type     | normal                                                                                |
170 1 Mehdi Abaakouk
| device_id             |                                                                                       |
171 1 Mehdi Abaakouk
| device_owner          |                                                                                       |
172 1 Mehdi Abaakouk
| fixed_ips             | {"subnet_id": "ba3f12af-074a-4a31-9a7c-a621993e13bb", "ip_address": "192.168.99.248"} |
173 1 Mehdi Abaakouk
| id                    | 918e0ec7-0909-423c-9a67-15b5ef7c7ae0                                                  |
174 1 Mehdi Abaakouk
| mac_address           | fa:16:3e:6b:32:07                                                                     |
175 1 Mehdi Abaakouk
| name                  | nagios-eth2                                                                           |
176 1 Mehdi Abaakouk
| network_id            | 460f49ce-f5ed-449e-9e0f-7626bcee4379                                                  |
177 1 Mehdi Abaakouk
| security_groups       | b6d5b5fb-a053-4f97-b964-9e1a12d243b1                                                  |
178 1 Mehdi Abaakouk
| status                | DOWN                                                                                  |
179 1 Mehdi Abaakouk
| tenant_id             | ed980105f9d047e2bee738b3f261f126                                                      |
180 1 Mehdi Abaakouk
+-----------------------+---------------------------------------------------------------------------------------+
181 1 Mehdi Abaakouk
182 1 Mehdi Abaakouk
$ nova interface-attach --port-id 918e0ec7-0909-423c-9a67-15b5ef7c7ae0   nagios.tetaneutral.net
183 1 Mehdi Abaakouk
</pre>
184 1 Mehdi Abaakouk
185 1 Mehdi Abaakouk
Dans la VM:
186 1 Mehdi Abaakouk
187 1 Mehdi Abaakouk
<pre>
188 1 Mehdi Abaakouk
$ dmesg | tail 
189 1 Mehdi Abaakouk
[ 1315.826088] virtio-pci 0000:00:06.0: using default PCI settings
190 1 Mehdi Abaakouk
[ 1315.826102] virtio-pci 0000:00:07.0: no hotplug settings from platform
191 1 Mehdi Abaakouk
[ 1315.826102] virtio-pci 0000:00:07.0: using default PCI settings
192 1 Mehdi Abaakouk
[ 1315.826116] pci 0000:00:08.0: no hotplug settings from platform
193 1 Mehdi Abaakouk
[ 1315.826117] pci 0000:00:08.0: using default PCI settings
194 1 Mehdi Abaakouk
[ 1315.826382] virtio-pci 0000:00:08.0: enabling device (0000 -> 0003)
195 1 Mehdi Abaakouk
[ 1315.829281] virtio-pci 0000:00:08.0: setting latency timer to 64
196 1 Mehdi Abaakouk
[ 1315.829535] virtio-pci 0000:00:08.0: irq 50 for MSI/MSI-X
197 1 Mehdi Abaakouk
[ 1315.829555] virtio-pci 0000:00:08.0: irq 51 for MSI/MSI-X
198 1 Mehdi Abaakouk
[ 1315.829563] virtio-pci 0000:00:08.0: irq 52 for MSI/MSI-X
199 1 Mehdi Abaakouk
200 1 Mehdi Abaakouk
$ ip l   show dev eth2
201 1 Mehdi Abaakouk
4: eth2: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT qlen 1000
202 1 Mehdi Abaakouk
    link/ether fa:16:3e:6b:32:07 brd ff:ff:ff:ff:ff:ff
203 1 Mehdi Abaakouk
204 1 Mehdi Abaakouk
$ tail -4 /etc/network/interfaces
205 1 Mehdi Abaakouk
auto eth2
206 1 Mehdi Abaakouk
iface eth2 inet static
207 1 Mehdi Abaakouk
   address 192.168.99.248
208 1 Mehdi Abaakouk
   netmask 255.255.255.0
209 1 Mehdi Abaakouk
210 1 Mehdi Abaakouk
$ ifup eth2
211 1 Mehdi Abaakouk
$ ping 192.169.99.250
212 1 Mehdi Abaakouk
PING 192.169.99.250 (192.169.99.250) 56(84) bytes of data.
213 1 Mehdi Abaakouk
64 bytes from 192.169.99.250: icmp_req=1 ttl=119 time=170 ms
214 1 Mehdi Abaakouk
64 bytes from 192.169.99.250: icmp_req=2 ttl=119 time=204 ms
215 1 Mehdi Abaakouk
^C
216 1 Mehdi Abaakouk
</pre>
217 1 Mehdi Abaakouk
218 19 Mehdi Abaakouk
h3. Monter le disque d'un vm sur une machine hote pour dépannage.
219 1 Mehdi Abaakouk
220 19 Mehdi Abaakouk
L’exemple montre la modification du fichier /etc/ssh/sshd_config
221 19 Mehdi Abaakouk
222 19 Mehdi Abaakouk
Récuperer l'id et l'hyperviseur de la VM
223 1 Mehdi Abaakouk
<pre>
224 19 Mehdi Abaakouk
# nova stop zoe.tetaneutral.net
225 19 Mehdi Abaakouk
# nova show zoe.tetaneutral.net | grep -e 'host ' -e ' id '
226 19 Mehdi Abaakouk
| OS-EXT-SRV-ATTR:host                 | g1                                                       |
227 19 Mehdi Abaakouk
| id                                   | 631d79fc-faad-4f6d-b72e-7e8b11d59c40                     |
228 19 Mehdi Abaakouk
</pre>
229 19 Mehdi Abaakouk
230 19 Mehdi Abaakouk
Aller sur l'hyperviseur en question, puis:
231 19 Mehdi Abaakouk
<pre>
232 19 Mehdi Abaakouk
# virt-edit -d 631d79fc-faad-4f6d-b72e-7e8b11d59c40 /etc/ssh/sshd_config
233 19 Mehdi Abaakouk
</pre>
234 19 Mehdi Abaakouk
235 19 Mehdi Abaakouk
Fermer le fichier et restart la VM
236 19 Mehdi Abaakouk
<pre>
237 19 Mehdi Abaakouk
# nova start zoe.tetaneutral.net
238 18 Mehdi Abaakouk
</pre>
239 18 Mehdi Abaakouk
240 2 Mehdi Abaakouk
h3. Exemple de migration de ganeti à openstack:
241 2 Mehdi Abaakouk
242 2 Mehdi Abaakouk
Sur h4:
243 2 Mehdi Abaakouk
<pre>
244 2 Mehdi Abaakouk
$ gnt-instance stop VMNAME.tetaneutral.net
245 2 Mehdi Abaakouk
$ gnt-instance activate-disks VMNAME.tetaneutral.net
246 2 Mehdi Abaakouk
h5.tetaneutral.net:disk/0:/dev/drbd34
247 2 Mehdi Abaakouk
</pre>
248 2 Mehdi Abaakouk
249 2 Mehdi Abaakouk
250 2 Mehdi Abaakouk
Sur g1, mettre l'image dans cinder
251 2 Mehdi Abaakouk
<pre>
252 2 Mehdi Abaakouk
name=VMNAME.tetaneutral.net
253 2 Mehdi Abaakouk
</pre>
254 2 Mehdi Abaakouk
255 2 Mehdi Abaakouk
Crée un volume (remplacer 20 par la taille du disque désiré):
256 2 Mehdi Abaakouk
257 2 Mehdi Abaakouk
<pre>
258 2 Mehdi Abaakouk
cinder create --volume_type ceph --display-name ${name}-bootdisk 20    # mettre ici un peu plus grand que le vrai disque.
259 2 Mehdi Abaakouk
volume_id=$(cinder show ${name}-bootdisk | awk '/ id /{print $4}')
260 2 Mehdi Abaakouk
</pre>
261 2 Mehdi Abaakouk
262 2 Mehdi Abaakouk
On remplace le volume rbd par le disque de la VM:
263 2 Mehdi Abaakouk
264 2 Mehdi Abaakouk
<pre>
265 1 Mehdi Abaakouk
rbd -p disks mv volume-$volume_id disks/volume-${volume_id}.old
266 9 Laurent GUERBY
socat -u tcp4-listen:505555 - | rbd -p disks import --image-format 2 - volume-$volume_id
267 2 Mehdi Abaakouk
</pre>
268 2 Mehdi Abaakouk
269 2 Mehdi Abaakouk
Sur la machine hX qui as le disque (ici h5 et le disque drbd34)
270 2 Mehdi Abaakouk
<pre>
271 2 Mehdi Abaakouk
cat /dev/drbd34 | socat -u - tcp4:g1:505555
272 2 Mehdi Abaakouk
# ou avec une bar de progression
273 2 Mehdi Abaakouk
apt-get install pv 
274 2 Mehdi Abaakouk
pv /dev/drbd34 | socat -u - tcp4:g1:505555
275 2 Mehdi Abaakouk
</pre>
276 2 Mehdi Abaakouk
277 2 Mehdi Abaakouk
<pre>
278 2 Mehdi Abaakouk
# On peut voir l'avancement via:
279 2 Mehdi Abaakouk
watch -n1 -- rbd -p disks info volume-$volume_id
280 2 Mehdi Abaakouk
</pre>
281 2 Mehdi Abaakouk
282 2 Mehdi Abaakouk
On change la taille de l'image pour mettre la meme que le volume créé par openstack
283 2 Mehdi Abaakouk
284 2 Mehdi Abaakouk
<pre>
285 2 Mehdi Abaakouk
$ rbd -p disks info volume-$volume_id.old
286 2 Mehdi Abaakouk
rbd image 'volume-$volume_id.old':
287 12 Laurent GUERBY
	size **XXX** MB in 5120 objects
288 2 Mehdi Abaakouk
	order 22 (4096 kB objects)
289 2 Mehdi Abaakouk
	block_name_prefix: rbd_data.752a15a94252f
290 2 Mehdi Abaakouk
	format: 2
291 1 Mehdi Abaakouk
	features: layering
292 12 Laurent GUERBY
$ # ou bien
293 13 Laurent GUERBY
$ rbd -p disks info --pretty-format --format json volume-$volume_id.old | grep size
294 12 Laurent GUERBY
$ # puis
295 12 Laurent GUERBY
$ rbd -p disks resize --size XXX volume-$volume_id
296 2 Mehdi Abaakouk
</pre>
297 2 Mehdi Abaakouk
298 2 Mehdi Abaakouk
Booter la VM avec ce disque (le disque existant déjà le script l'utilisera):
299 2 Mehdi Abaakouk
300 2 Mehdi Abaakouk
<pre>
301 8 Laurent GUERBY
/root/tools/boot-vm.sh --ip A.B.C.D --flavor Xvcpu-Yram ${name}
302 2 Mehdi Abaakouk
</pre>
303 2 Mehdi Abaakouk
304 2 Mehdi Abaakouk
_Note: Si le disque a été agrandi, on peut utiliser dans la VM "growpart /dev/vda 1" ou 'parted resizepart' pour récupérer l'espace disponible (fonctionne bien sous jessie ou dernier ubuntu)_
305 2 Mehdi Abaakouk
306 2 Mehdi Abaakouk
Quand c'est fini sur h4:
307 2 Mehdi Abaakouk
308 2 Mehdi Abaakouk
<pre>
309 2 Mehdi Abaakouk
gnt-instance deactivate-disks VMNAME.tetaneutral.net
310 2 Mehdi Abaakouk
</pre>
311 2 Mehdi Abaakouk
312 2 Mehdi Abaakouk
S'il faut changer la RAM et vCPU
313 2 Mehdi Abaakouk
314 2 Mehdi Abaakouk
<pre>
315 2 Mehdi Abaakouk
nova flavor-list
316 2 Mehdi Abaakouk
nova list
317 2 Mehdi Abaakouk
nova resize ${name} FLAVOR_ID --poll
318 2 Mehdi Abaakouk
nova resize-confirm VM_ID
319 1 Mehdi Abaakouk
</pre>
320 1 Mehdi Abaakouk
321 10 Mehdi Abaakouk
h3. Convertion des images rbd au format 2 (pour les premieres VMs migrées de ganeti)
322 10 Mehdi Abaakouk
323 10 Mehdi Abaakouk
<pre>
324 10 Mehdi Abaakouk
$ nova stop <vm_name>
325 10 Mehdi Abaakouk
$ rbd -p disks export volume-XXXXXXXXXXXXXX - | rbd import --image-format 2 -p disks - volume-XXXXXXXXXXXXXX.converted
326 10 Mehdi Abaakouk
$ rbd -p disks mv volume-XXXXXXXXXXXXXX volume-XXXXXXXXXXXXXX.old
327 10 Mehdi Abaakouk
$ rbd -p disks mv volume-XXXXXXXXXXXXXX.converted volume-XXXXXXXXXXXXXX
328 10 Mehdi Abaakouk
$ rbd -p disks rm volume-XXXXXXXXXXXXXX.old
329 10 Mehdi Abaakouk
$ nova start <vm_name>
330 10 Mehdi Abaakouk
</pre>
331 10 Mehdi Abaakouk
332 10 Mehdi Abaakouk
333 1 Mehdi Abaakouk
h2. VM de management (nommé openstack)
334 1 Mehdi Abaakouk
335 1 Mehdi Abaakouk
h3. Live Migration d'un host à l'autre
336 1 Mehdi Abaakouk
337 1 Mehdi Abaakouk
Cela fait tout à notre place niveau kvm/libvirt/ceph
338 1 Mehdi Abaakouk
339 1 Mehdi Abaakouk
<pre>
340 1 Mehdi Abaakouk
virsh migrate --persistent --undefinesource --live --p2p openstack qemu+ssh://g2:2222/system
341 1 Mehdi Abaakouk
</pre>
342 1 Mehdi Abaakouk
343 1 Mehdi Abaakouk
h3. Recover depuis une perte de la machine hote:
344 1 Mehdi Abaakouk
345 1 Mehdi Abaakouk
Créé un fichier openstack.xml à partir d'un backup de '/etc/libvirt/qemu/openstack.xml' ou utiliser l'exemple ici: attachment:openstack.xml
346 1 Mehdi Abaakouk
347 1 Mehdi Abaakouk
_Note: il faut surement viré les uuid des interfaces openvswitch qui sont différent suivant le hosts_
348 1 Mehdi Abaakouk
349 1 Mehdi Abaakouk
Puis on recréé la VM
350 1 Mehdi Abaakouk
351 1 Mehdi Abaakouk
<pre>
352 1 Mehdi Abaakouk
$ virsh create openstack.xml
353 1 Mehdi Abaakouk
$ virsh start openstack.xml
354 1 Mehdi Abaakouk
</pre>