Auteur Sujet: Perte de paquet sur VM windows server 2012  (Lu 2834 fois)

0 Membres et 1 Invité sur ce sujet

butler_fr

  • Client Bbox adsl
  • Modérateur
  • *
  • Messages: 3 607
  • FTTH orange
Perte de paquet sur VM windows server 2012
« le: 02 octobre 2013 à 17:06:10 »
Bonjour à tous!

Je constate depuis quelques temps déjà des perturbations importante sur une VM qui tourne sur mon serveur chez moi:

ce phénomène apparait environ tous les 2 jours pendant quelques heures puis il s'en va.....
on parle de 20 à plus de 50% de pertes entre le réseau local et la VM lorsque cela se produit.

il n'y a pas de pertes entre le LAN et le serveur host

La VM tourne sur windows serveur 2012, dessus j'ai un AD (non utilisé) et un dns qui me sert pour la résolution de nom local
L'hyperviseur est une machine tournant sur debian avec proxmox d'installé dessus noyau en 2.6.32-23-pve
le CPU n'est pas utilisé au max de ses capacités (AMD Athlon(tm) 64 X2 Dual Core Processor 4400+ @ 2.3Ghz)

si quelqu'un à une idée de comment trouver ce qui provoque le problème!

cf:
capture du smokeping vers la vm:

butler_fr

  • Client Bbox adsl
  • Modérateur
  • *
  • Messages: 3 607
  • FTTH orange
Perte de paquet sur VM windows server 2012
« Réponse #1 le: 04 octobre 2013 à 10:02:21 »
personne?

il me l'a refait cette nuit:

cf:

vivien

  • Administrateur
  • *
  • Messages: 47 255
    • Twitter LaFibre.info
Perte de paquet sur VM windows server 2012
« Réponse #2 le: 04 octobre 2013 à 10:21:13 »
Je ne rencontre pas de souci avec Xen+virt-manager
Xen est maintenant intégré au noyau Linux depuis la version 3.0 (pas besoin d'avoir un noyau spécifique)

Voici le tuto que je me suis fait :

Installer Xen via le meta paquet suivant : apt install xen-hypervisor-amd64
Modifier grub pour booter sur Xen puis rebooter :
cd /etc/grub.d
mv 20_linux_xen 07_linux_xen
update-grub
reboot
sudo -s


Vérifier que Xen est bien installé : xm list
# xm list
Name                                        ID   Mem VCPUs      State   Time(s)
Domain-0                                     0  7940     4     r-----     13.1
pour les version récentes de Xen : sudo xl list

Le choix entre xm (défaut Ubuntu 13.04 et inférieur) et xl : http://wiki.xen.org/wiki/XL
La configuration se fait dans ce petit fichier : nano -w /etc/default/xen
Le reste de la configuration est dans ce gros fichier : nano -w /etc/xen/xend-config.sxp

xm info
# xm info
host                   : BboxAdsl0
release                : 3.8.0-25-generic
version                : #37-Ubuntu SMP Thu Jun 6 20:47:07 UTC 2013
machine                : x86_64
nr_cpus                : 4
nr_nodes               : 1
cores_per_socket       : 2
threads_per_core       : 2
cpu_mhz                : 3392
hw_caps                : bfebfbff:28100800:00000000:00007f40:359ae3bf:00000000:00000001:00000281
virt_caps              : hvm
total_memory           : 8161
free_memory            : 128
free_cpus              : 0
xen_major              : 4
xen_minor              : 2
xen_extra              : .1
xen_caps               : xen-3.0-x86_64 xen-3.0-x86_32p hvm-3.0-x86_32 hvm-3.0-x86_32p hvm-3.0-x86_64
xen_scheduler          : credit
xen_pagesize           : 4096
platform_params        : virt_start=0xffff800000000000
xen_changeset          : unavailable
xen_commandline        : placeholder
cc_compiler            : gcc (Ubuntu/Linaro 4.7.3-1ubuntu1) 4.7.3
cc_compile_by          : stefan.bader
cc_compile_domain      : canonical.com
cc_compile_date        : Mon Jun 10 15:23:30 UTC 2013
xend_config_format     : 4

Rechercher des processus Xen : pgrep xen -l
# pgrep xen -l
31 xenwatch
32 xenbus
895 xenstored
900 xenconsoled
1045 xend
1046 xend

Configuration du réseau coté serveur : (2 interfaces Ethernet physique dont une pour la VM)

Installation du réseau : apt install bridge-utils

Fichier de configuration réseau : nano /etc/network/interfaces -w
# The loopback network interface
auto lo
iface lo inet loopback

# Interface intégrée N°1 (em1)
auto em1
iface em1 inet manual

auto xenbr0
iface xenbr0 inet static
        bridge_ports em1
        address 192.168.1.101
        netmask 255.255.255.0
        gateway 192.168.1.254
        dns-nameservers 192.168.1.254


# Interface intégrée N°2 (em2)
auto em2
iface em2 inet manual

auto xenbr1
iface xenbr1 inet manual
        bridge_ports em2


#other possibly useful options in a virtualized environment
  #bridge_stp off       # disable Spanning Tree Protocol
  #bridge_waitport 0    # no delay before a port becomes available
  #bridge_fd 0          # no forwarding delay

rebooter : reboot

pour voir les ponts : brctl show
# brctl show
bridge name bridge id STP enabled interfaces
virbr0 8000.000000000000 yes
xenbr0 8000.d4ae52c9dbdb no eth0
xenbr1 8000.d4ae52c9dbdc no eth1

Installation du moniteur de contrôle de virt-manager : libvirt-bin

sudo -s
Installer xen-tools : apt install xen-tools

Préparer Xen pour communiquer avec libvirt : nano -w /etc/xen/xend-config.sxp
Sous la ligne #(xend-unix-server no) écrire : (xend-unix-server yes)
Redémarrer xend: service xen restart et service xendomains restart

Installer libvirt-bin : apt install virtinst (libvirt-bin est dans la liste des paquets installés)

L'utilisateur utilisé pour gérer les machines virtuelles devra être ajouté au groupe libvirtd. Cela permettra de lui accorder l'accès aux options de réseau avancées :adduser $USER libvirtd
On reboot : reboot (le daemon libvirt-bin doit se charger)

libvirt installe un script de base dans le même esprit que xm fournit par xen : virsh version
# virsh version
Compiled against library: libvirt 1.0.2
Using library: libvirt 1.0.2
Utilisation de l'API : QEMU 1.0.2
erreur : impossible de récupérer la version de l'hyperviseur
erreur : internal error Cannot find suitable emulator for x86_64

On a un bridge de plus quand on regarde brctl show
$ brctl show
bridge name bridge id STP enabled interfaces
virbr0 8000.000000000000 yes
xenbr0 8000.d4ae52c9dbdb no em1
xenbr1 8000.d4ae52c9dbdc no em2

virt-manager cherche a utiliser le dossier /usr/lib/xen-default alors que c'est installé dans le dossier /usr/lib/xen-4.2
La solution de contournement consiste a créer un lien symbolique comme j'ai expliqué dans bugs.launchpad.net :
sudo -s
mkdir /usr/lib/xen-default
mkdir /usr/lib/xen-default/boot
ln -s /usr/lib/xen-4.2/boot/hvmloader /usr/lib/xen-default/boot/



Liste des Storage Pools par défault :
boot-scratch => /var/lib/xen/
default => /var/lib/libvirt/images/

On va déplacer le dossier de stockage des images dans /home/libvirt :
mkdir /home/libvirt
on sort ensuite de root avec "ctrl" + "d" et on va éditer le fichier .bashrc pour mettre nano pour l'utilitaire virsh :
nano -w ~/.bashrc
on rajoute sous la ligne # Alias definitions. la ligne suivante :
alias virsh='EDITOR=/usr/bin/nano virsh'On se déloge  puis en se relogue pour prendre en compte les modifications.
On utilise ensuite l'utilitaire pour modifier le chemin de stockage des images :
sudo -s
virsh pool-edit default

Remplacer la ligne <path>/var/lib/libvirt/images</path> par :
<path>/home/libvirt</path>Pour information, le fichier modifier par l'utilitaire est : nano -w /etc/libvirt/storage/default.xml (ne pas apporter de modification directement sur ce fichier, elles seraient écrasées)
On relance la lecture des fichiers de configuration : service libvirt-bin restart (service libvirt-bin reload est insuffisant en cas de modifications des fichiers de conf)

Note : Après avoir rajouté ou enlever un fichier dans ces dossier il faut impérativement recharger libvirt-bin sur Dom0 : service libvirt-bin reload


Sur le PC où tu vas gérer graphiquement les VM, il faut installer virt-manager

butler_fr

  • Client Bbox adsl
  • Modérateur
  • *
  • Messages: 3 607
  • FTTH orange
Perte de paquet sur VM windows server 2012
« Réponse #3 le: 04 octobre 2013 à 10:52:47 »
un peu bourrin comme solution  ;)

je garde sous le coude si je n'arrive pas à résoudre le souci!

ps: j'utilise proxmox pour l'instant mais il n'est pas impossible que je passe à kvm + virtmanager
(proxmox utilise kvm)

vivien

  • Administrateur
  • *
  • Messages: 47 255
    • Twitter LaFibre.info
Perte de paquet sur VM windows server 2012
« Réponse #4 le: 04 octobre 2013 à 10:58:18 »
C'est assez simple mais je mets toutes les commandes utilisées car j'ai de multiples machines à installer et c'est pratique en cas de pb.

butler_fr

  • Client Bbox adsl
  • Modérateur
  • *
  • Messages: 3 607
  • FTTH orange
Perte de paquet sur VM windows server 2012
« Réponse #5 le: 04 octobre 2013 à 11:05:18 »
non mais passer de proxmox à xen direct  ;)

je vais déjà essayer de mettre une autre vm dessus pour voir si le souci de ping se reproduit  (bon niveai ram ça va ètre dur avec seulement 3 Go de dispo....)

vivien

  • Administrateur
  • *
  • Messages: 47 255
    • Twitter LaFibre.info
Perte de paquet sur VM windows server 2012
« Réponse #6 le: 04 octobre 2013 à 11:29:56 »
64 Mo de ram suffisent pour un Ubuntu server 32bits

butler_fr

  • Client Bbox adsl
  • Modérateur
  • *
  • Messages: 3 607
  • FTTH orange
Perte de paquet sur VM windows server 2012
« Réponse #7 le: 04 octobre 2013 à 14:06:59 »
je voulais reproduire les conditions donc un windows server 2012 et la c'est autre chose niveau ram ;)

après effectivement je peux tester avec une vm linux d'abord