« Qemu » : différence entre les versions
De Wiki doc
Ligne 21 : | Ligne 21 : | ||
#!/bin/bash | #!/bin/bash | ||
OVSCOMMUT=br0 | OVSCOMMUT=br0 | ||
OVSTAG=100 | |||
echo "Execution de /etc/qemu-ifup" | |||
echo "Allumage de $1 pour l'ajout au pont OVS..." | |||
ip link set $1 up promisc on | |||
echo "Ajout de $1 à ${OVSCOMMUT}..." | |||
ovs-vsctl --may-exist add-br ${OVSCOMMUT} | ovs-vsctl --may-exist add-br ${OVSCOMMUT} | ||
ovs-vsctl --if-exists del-port ${OVSCOMMUT} $1 | ovs-vsctl --if-exists del-port ${OVSCOMMUT} $1 | ||
ovs-vsctl --may-exist add-port ${OVSCOMMUT} $1 | ovs-vsctl --may-exist add-port ${OVSCOMMUT} $1 | ||
ovs-vsctl --if-exists set port $1 tag=${ | ovs-vsctl --if-exists set port $1 tag=${OVSTAG} | ||
sleep 2 | |||
</source> | </source> | ||
Variables: | Variables: | ||
* '''OVSCOMMUT''' : interface de votre commutateur virtuel | * '''OVSCOMMUT''' : interface de votre commutateur virtuel | ||
* ''' | * '''OVSTAG''' : numéro du Vlan | ||
===Script de d'arrêt de l’interface=== | ===Script de d'arrêt de l’interface=== | ||
Ligne 37 : | Ligne 41 : | ||
#!/bin/bash | #!/bin/bash | ||
OVSCOMMUT=br0 | OVSCOMMUT=br0 | ||
echo "Execution de /etc/qemu-ifdown" | |||
echo "Arrêt de $1 pour la suppression au pont OVS..." | |||
ip link set $1 down | |||
echo "Suppression de $1 à ${OVSCOMMUT}..." | |||
ovs-vsctl --if-exists del-port ${OVSCOMMUT} $1 | ovs-vsctl --if-exists del-port ${OVSCOMMUT} $1 | ||
echo "Suppression de $1..." | |||
ip link delete dev $1 | |||
</source> | </source> | ||
Variable: | Variable: | ||
* '''OVSCOMMUT''' : interface de votre commutateur virtuel | * '''OVSCOMMUT''' : interface de votre commutateur virtuel | ||
===Droits=== | |||
Ajouter les droits d’exécutions aux scripts | |||
# chmod +x /etc/qemu/qemu-if* | |||
==Création d'une machine virtuelle== | ==Création d'une machine virtuelle== |
Version du 14 mai 2017 à 00:25
Prérequis
Installation
Qemu est dispnible dans les dépots Debian
# apt install qemu-system
Script réseau
Pour que la machine virtuelle puise se connecter sur Open vSwitch, des scripts sont a créer.
ATTENTION
Chaque vlan doit avoir un script de démarrage de l’interface. le script d’arrêt est commun a tous les vlansASTUCE
Les scripts peuvent être dans l'arborescence que vous voulezScript de démarrage de l’interface
#!/bin/bash
OVSCOMMUT=br0
OVSTAG=100
echo "Execution de /etc/qemu-ifup"
echo "Allumage de $1 pour l'ajout au pont OVS..."
ip link set $1 up promisc on
echo "Ajout de $1 à ${OVSCOMMUT}..."
ovs-vsctl --may-exist add-br ${OVSCOMMUT}
ovs-vsctl --if-exists del-port ${OVSCOMMUT} $1
ovs-vsctl --may-exist add-port ${OVSCOMMUT} $1
ovs-vsctl --if-exists set port $1 tag=${OVSTAG}
sleep 2
Variables:
- OVSCOMMUT : interface de votre commutateur virtuel
- OVSTAG : numéro du Vlan
Script de d'arrêt de l’interface
#!/bin/bash
OVSCOMMUT=br0
echo "Execution de /etc/qemu-ifdown"
echo "Arrêt de $1 pour la suppression au pont OVS..."
ip link set $1 down
echo "Suppression de $1 à ${OVSCOMMUT}..."
ovs-vsctl --if-exists del-port ${OVSCOMMUT} $1
echo "Suppression de $1..."
ip link delete dev $1
Variable:
- OVSCOMMUT : interface de votre commutateur virtuel
Droits
Ajouter les droits d’exécutions aux scripts
# chmod +x /etc/qemu/qemu-if*
Création d'une machine virtuelle
Création d'un disque virtuel
# qemu-img create -f qcow2 hdd.qcow2 10G
Paramètres:
- -f qcow2 : type du disque vituel
- hdd.qcow2 : nom de l'image disque
- 10G : taille attribué au disque
Démarrage de la machine virtuelle
# qemu-system-x86_64 -m 1024 -name host1 -net nic,macaddr=52:54:00:00:01:00 -net tap,ifname=r1-eth0,script=/root/qemu-ifup,downscript=/root/qemu-ifdown --cdrom /srv/iso/debian-live-8.7.1-amd64-lxde-bureau.iso -vnc :6 --enable-kvm -hda /root/hdd.qcow2
Paramètres:
- -m 1024 : mémoire attribué a la machine virtuelle (en octets)
- -name : nom de la machine virtuelle
- -net nic,macaddr=52:54:00:00:01:00 : l'adresse MAC de la machine virtuelle (voir)
- -net tap,ifname=r1-eth0,script=/root/qemu-ifup,downscript=/root/qemu-ifdown : nom de l'interface réseau sur la machine maître suivie des scripts précédemment créés
- --cdrom /srv/iso/debian-live-8.7.1-amd64-lxde-bureau.iso : lien vers l'ISO du CD-ROM
- -vnc :6 : Utilisation de VNC sur le port 5906
- --enable-kvm : Permet la prise en charge des instructions de virtualisation du processeur
- -hda /root/hdd.qcow2 : lien vers le disque virtuel précédant créé
Arrêt de la machine virtuelle
L’arrêt s'effectue via la fonction dédiée à chaque système émulé. Pour forcer l’extinction, effectuer un CTRL+C
.