Libvirt (ancien) » Historique » Version 10
Mehdi Abaakouk, 07/04/2013 09:37
1 | 1 | Mehdi Abaakouk | h1. Libvirt |
---|---|---|---|
2 | 1 | Mehdi Abaakouk | |
3 | 2 | Mehdi Abaakouk | h2. Installation VM sans bridge avec routage static (en /32 pour l'ipv4) |
4 | 1 | Mehdi Abaakouk | |
5 | 10 | Mehdi Abaakouk | Note: tous les fichiers utilisé et créé ne sont peut être pas à jour, voir ici pour les derniéres version: http://git.tetaneutral.net/libvirt.git/ |
6 | 10 | Mehdi Abaakouk | |
7 | 1 | Mehdi Abaakouk | h3. Configuration de la libvirt |
8 | 1 | Mehdi Abaakouk | |
9 | 1 | Mehdi Abaakouk | On créé un réseau libvirt qui fait rien (déjà fait sur n7): |
10 | 1 | Mehdi Abaakouk | |
11 | 1 | Mehdi Abaakouk | <pre> |
12 | 10 | Mehdi Abaakouk | cat > libvirt_dump_network.xml <<EOF |
13 | 1 | Mehdi Abaakouk | <network ipv6='yes'> |
14 | 1 | Mehdi Abaakouk | <name>dump-net</name> |
15 | 6 | Mehdi Abaakouk | <bridge name='dumpbr0' /> |
16 | 1 | Mehdi Abaakouk | </network> |
17 | 1 | Mehdi Abaakouk | EOF |
18 | 1 | Mehdi Abaakouk | |
19 | 10 | Mehdi Abaakouk | virsh net-define libvirt_dump_network.xml |
20 | 1 | Mehdi Abaakouk | virsh net-autostart dump-net |
21 | 1 | Mehdi Abaakouk | virsh net-start dump-net |
22 | 1 | Mehdi Abaakouk | </pre> |
23 | 1 | Mehdi Abaakouk | |
24 | 4 | Mehdi Abaakouk | On créé un hook libvirt (déjà fait sur n7): |
25 | 1 | Mehdi Abaakouk | <pre> |
26 | 9 | Mehdi Abaakouk | mkdir -p /etc/libvirt/ttnn/hooks |
27 | 9 | Mehdi Abaakouk | ln -s /etc/libvirt/ttnn/hooks /etc/libvirt/hooks |
28 | 1 | Mehdi Abaakouk | vi /etc/libvirt/hooks/qemu |
29 | 1 | Mehdi Abaakouk | ----8<--------------->8---- |
30 | 1 | Mehdi Abaakouk | #!/bin/bash |
31 | 1 | Mehdi Abaakouk | |
32 | 1 | Mehdi Abaakouk | name="$1" |
33 | 1 | Mehdi Abaakouk | operation="$2" |
34 | 1 | Mehdi Abaakouk | suboperation="$3" |
35 | 1 | Mehdi Abaakouk | |
36 | 7 | Mehdi Abaakouk | [ "$operation" != "start" ] && exit 0 |
37 | 1 | Mehdi Abaakouk | [ "$suboperation" != "begin" ] && exit 0 |
38 | 1 | Mehdi Abaakouk | |
39 | 1 | Mehdi Abaakouk | # get interface from the libvirt xml |
40 | 1 | Mehdi Abaakouk | interface=$(cat - | sed -ne "/vnet/s/.*dev='\([^']*\)'.*/\1/gp") |
41 | 1 | Mehdi Abaakouk | |
42 | 5 | Mehdi Abaakouk | [ -f /etc/libvirt/ttnn/${name}.conf ] && source /etc/libvirt/ttnn/${name}.conf |
43 | 5 | Mehdi Abaakouk | |
44 | 5 | Mehdi Abaakouk | [ "$ip" -o "$ip6" ] && brctl delif dumpbr0 $interface |
45 | 1 | Mehdi Abaakouk | [ "$ip" ] && ip route add $ip/32 dev $interface |
46 | 1 | Mehdi Abaakouk | [ "$ip6" ] && ip route add $ip6/56 dev $interface |
47 | 1 | Mehdi Abaakouk | [ "$ip6" ] && ip -6 addr add fe80::31/64 dev $interface |
48 | 1 | Mehdi Abaakouk | exit 0 |
49 | 1 | Mehdi Abaakouk | ----8<--------------->8---- |
50 | 1 | Mehdi Abaakouk | </pre> |
51 | 1 | Mehdi Abaakouk | |
52 | 1 | Mehdi Abaakouk | |
53 | 1 | Mehdi Abaakouk | h3. Preparation de l'installer |
54 | 1 | Mehdi Abaakouk | |
55 | 4 | Mehdi Abaakouk | Pour une squeeze on met à jour virtinst (déjà fait sur n7): |
56 | 1 | Mehdi Abaakouk | |
57 | 1 | Mehdi Abaakouk | <pre> |
58 | 9 | Mehdi Abaakouk | wget http://ftp.us.debian.org/debian/pool/main/v/virtinst/virtinst_0.600.3-3_all.deb |
59 | 9 | Mehdi Abaakouk | dpkg -i virtinst_0.600.3-3_all.deb |
60 | 1 | Mehdi Abaakouk | </pre> |
61 | 1 | Mehdi Abaakouk | |
62 | 4 | Mehdi Abaakouk | On install le preseed.cfg attaché à la page dans /etc/libvirt/preseed.cfg (déjà fait sur n7) |
63 | 1 | Mehdi Abaakouk | |
64 | 1 | Mehdi Abaakouk | h4. Installation d'une VM |
65 | 1 | Mehdi Abaakouk | |
66 | 4 | Mehdi Abaakouk | Creation du disk (déjà fait sur n7): |
67 | 1 | Mehdi Abaakouk | <pre> |
68 | 1 | Mehdi Abaakouk | lvcreate -n picttn -L 50G /dev/raid5 |
69 | 1 | Mehdi Abaakouk | </pre> |
70 | 1 | Mehdi Abaakouk | |
71 | 5 | Mehdi Abaakouk | Configuration du routage static: |
72 | 5 | Mehdi Abaakouk | |
73 | 5 | Mehdi Abaakouk | <pre> |
74 | 5 | Mehdi Abaakouk | vi /etc/libvirt/ttnn/picttn.conf |
75 | 5 | Mehdi Abaakouk | ip="91.224.148.252" |
76 | 5 | Mehdi Abaakouk | ip6="2a01:6600:8080:FC00::" |
77 | 5 | Mehdi Abaakouk | </pre> |
78 | 5 | Mehdi Abaakouk | |
79 | 8 | Mehdi Abaakouk | Lancement de l'installation via le réseau natter de libvirt |
80 | 6 | Mehdi Abaakouk | <pre> |
81 | 1 | Mehdi Abaakouk | virt-install -n picttn -r 2048 --os-type=linux \ |
82 | 8 | Mehdi Abaakouk | --autostart \ |
83 | 1 | Mehdi Abaakouk | --disk /dev/raid5/picttn,bus=virtio,cache=none,io=native \ |
84 | 8 | Mehdi Abaakouk | --network network=default,model=virtio \ |
85 | 1 | Mehdi Abaakouk | --nographics \ |
86 | 8 | Mehdi Abaakouk | --wait -1 \ |
87 | 1 | Mehdi Abaakouk | --location http://ftp.debian.org/debian/dists/wheezy/main/installer-amd64/ \ |
88 | 6 | Mehdi Abaakouk | --serial pty \ |
89 | 1 | Mehdi Abaakouk | --initrd-inject /etc/libvirt/ttnn/preseed.cfg \ |
90 | 6 | Mehdi Abaakouk | --initrd-inject /etc/libvirt/ttnn/picttn.conf \ |
91 | 1 | Mehdi Abaakouk | --initrd-inject /etc/libvirt/ttnn/postinstall.sh \ |
92 | 8 | Mehdi Abaakouk | --extra-args "console=ttyS0,9600n8 DEBIAN_FRONTEND=text auto priority=critical hostname=picttn domain=le-pic.org" |
93 | 7 | Mehdi Abaakouk | </pre> |
94 | 1 | Mehdi Abaakouk | |
95 | 8 | Mehdi Abaakouk | Une fois l'installation terminée, on change la conf réseau: |
96 | 8 | Mehdi Abaakouk | |
97 | 1 | Mehdi Abaakouk | <pre> |
98 | 8 | Mehdi Abaakouk | virsh detach-interface picttn --type network --persistent |
99 | 8 | Mehdi Abaakouk | virsh attach-interface picttn --type network --source default --persistent |
100 | 8 | Mehdi Abaakouk | </pre> |
101 | 8 | Mehdi Abaakouk | |
102 | 8 | Mehdi Abaakouk | On peux démarrer la VM |
103 | 8 | Mehdi Abaakouk | <pre> |
104 | 8 | Mehdi Abaakouk | virsh start picttn |
105 | 3 | Mehdi Abaakouk | virsh console picttn |
106 | 1 | Mehdi Abaakouk | </pre> |
107 | 1 | Mehdi Abaakouk | |
108 | 8 | Mehdi Abaakouk | Ensuite on peux se connecte à la VM |
109 | 1 | Mehdi Abaakouk | <pre> |
110 | 1 | Mehdi Abaakouk | ssh root@2a01:6600:8080:FC00::1 |
111 | 1 | Mehdi Abaakouk | </pre> |
112 | 9 | Mehdi Abaakouk | |
113 | 9 | Mehdi Abaakouk | h5. Gestion des confiugrations: |
114 | 9 | Mehdi Abaakouk | |
115 | 9 | Mehdi Abaakouk | le répertoire /etc/libvirt/ttnn/ est géré sous git |