====== Virtualisation ======

> Point sur les controleurs réseau


Arêter le service de virtualisation :
<code>
# systemctl stop libvirtd
</code>

Il faut effacer le contenu ''/etc/libvirt/qemu/networks/default.xml'' avec la commande :
<code>
# virsh net-edit default
</code>

Faire le ménage dans les connexions réseaux :
<code>
$ sudo nmcli connection show
NAME                 UUID                                  TYPE      DEVICE 
eno1                 a0676aad-a0c4-3d9b-a129-ce42f02035c7  ethernet  eno1   
virbr0               afe3b947-1394-498e-8c89-e98fc88e6fa4  bridge    virbr0 
ACEGRP1_NET          f113a83e-3641-4de5-80c2-5d8b7634074c  wifi      --     
Connexion filaire 1  c26b6ba3-bd58-3b07-99fc-fb0f0ebb3b92  ethernet  --     
jside_smrt           15d2efcb-03b0-4836-bbaa-9499d783717a  wifi      --     
</code>


<code>
$ nmcli connection delete virbr0
Connexion « virbr0 » (acbd676d-94b1-41d7-9f32-410e55be901e) supprimée.
$ nmcli connection delete "Connexion filaire 1"
Connexion « Connexion filaire 1 » (c26b6ba3-bd58-3b07-99fc-fb0f0ebb3b92) supprimée.
</code>

Suppression des routes :
<code>
$ ip route show
default via 192.168.100.254 dev eno1 proto dhcp metric 100 
192.168.100.0/24 dev eno1 proto kernel scope link src 192.168.100.100 metric 100 
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 linkdown 
#ip route del 192.168.122.0/24
</code>




===== Installation sous Fedora 31 =====

Installer les composants :
<code>
# dnf -y install qemu-kvm libvirt virt-install  
</code>

Vérifier que le module est installé :
<code>
# lsmod | grep kvm
kvm_intel             303104  0
kvm                   782336  1 kvm_intel
irqbypass              16384  1 kvm
</code>

Activer le service de virtualisation :
<code>
systemctl enable --now libvirtd 
</code>

<code>
$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:22:4d:9d:47:03 brd ff:ff:ff:ff:ff:ff
    inet 192.168.100.100/24 brd 192.168.100.255 scope global dynamic noprefixroute eno1
       valid_lft 257770sec preferred_lft 257770sec
    inet6 fe80::73c1:c76e:7041:7336/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
    link/ether 52:54:00:a2:4f:da brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
       valid_lft forever preferred_lft forever
4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc fq_codel master virbr0 state DOWN group default qlen 1000
</code>

<code>
$ nmcli connection delete virbr0
</code>



===== Créer une machine virtuelle =====

Pour créer une machine virtuelle, il faut :
  * créer ou des des disques durs virtuels
  * avoir une image d'installation du système d'exploitation

> Créer un disque dur virtuel

<code>
qemu-img create -f qcow2 /media/disk_14/vm/hdd/qmulmt001.qcow2 30G
</code>

L'extension du fichier du disque dur permet de créer de manière automatique le format au format associé. Les possilibités sont **.vdi**, **.img** (format raw), **.vhd**, **.vmdk**. Vous pouvez également utiliser les format natifs de Qemu, **.qcow2**, **.qed**, **.qcow** et **.cow**.

> Obtenir une image de système d'exploitation




> Démarrage avec une image disque

<code>
qemu-system-x86_64 \
-boot d -cdrom /run/media/cedric24c/disk_18/logiciels/ISO/OS/Mint/linuxmint-19.2-xfce-64bit.iso -m 1024 \
-hda /media/disk_14/vm/hdd/qmulmt001.qcow2 \
-enable-kvm \
-net nic,vlan=0 -net tap,vlan=0,ifname=tap0,script=./qemu-ifup
</code>

====== Biblio ======

  * https://www.server-world.info/en/note?os=Fedora_31&p=kvm&f=1