Installation

Translate original post with Google Translate

Étape 1 : Installation du système d’exploitation des hôtes

Afin de profiter du support des invités 64bits, il est recommandé d’installer la version 64bits (si votre processeur le supporte évidemment) de la distribution Ubuntu 8.04.

Vous pouvez récupérer un ISO 64bits à cette adresse : http://releases.ubuntu.com/8.04/ubuntu-8.04.4-desktop-amd64.iso ou bien le télécharger directement depuis notre miroir local ici (md5sum 1b89e20596e48ac986e5cae1999b059a).

Non recommandé : Si vous souhaitez installer Hynesim sur un hôte 32bits, l’adresse de l’ISO 32 bits est celle ci : http://releases.ubuntu.com/8.04/ubuntu-8.04.4-desktop-i386.iso ou bien directement depuis notre miroir ici (md5sum 4f41e03d250b2f2b1cd3015c8df4af7c).

Dépendances obligatoires et ajout des paquets nécessaires

Afin de pouvoir compiler et utiliser Hynesim, il est nécessaire d’installer manuellement les paquets suivants :

  • build-essential
  • nfs-common
  • uml-utilities
  • bridge-utils
  • doxygen

Commande d’installation pour ces paquets :

sudo aptitude install build-essential nfs-common uml-utilities bridge-utils doxygen

Si le nœud Hynesim que vous installez est potentiellement un maître (master au sens du mesh Hynesim), il convient d’installer aussi les paquets supplémentaires suivants :

  • samba
  • nfs-kernel-server
sudo aptitude install nfs-kernel-server samba

Étape 2 : Installation du framework Qt

Hynesim dépend de du framework Qt en version 4.6 (minimum).

À la date d’écriture de ce document la dernière version sortie en date est la 4.6.3 (http://qt.nokia.com/downloads).
Les paquets dans les dépôts officiels Ubuntu de la version 8.04 étant trop anciens, deux solutions s’offrent à vous pour installer cette version de Qt.

Première solution : Installation du SDK Qt

Vous pouvez télécharger la version 64bits du SDK à l’adresse suivante : http://get.qt.nokia.com/qtsdk/qt-sdk-linux-x86_64-opensource-2010.03.bin ou bien le télécharger directement depuis notre miroir local ici (md5sum 36c7e9c49ac8f22a097ce127bc72023e). Bien entendu si vous avez opté pour une installation 32bits, vous pouvez télécharger la version 32bits du SDK (http://get.qt.nokia.com/qtsdk/qt-sdk-linux-x86-opensource-2010.03.bin ou directement ici).

Le SDK occupe plus d’espace disque mais il contient une version binaire des bibliothèques de Qt ce qui permet d’éviter de les compiler. De plus l’installation est triviale via assistant graphique.

wget http://get.qt.nokia.com/qtsdk/qt-sdk-linux-x86_64-opensource-2010.03.bin
chmod +x qt-sdk-linux-x86_64-opensource-2010.03.bin
./qt-sdk-linux-x86_64-opensource-2010.03.bin

Seconde solution : Compilation des sources de Qt

Attention : Nous recommandons l’emploi de la première solution.

Dans cette solution plus laborieuse, il s’agit de télécharger les sources du framework Qt en version 4.6.3 à l’adresse suivante http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.6.3.tar.gz et d’effectuer vous-même la compilation sur votre architecture.

sudo aptitude install libxq11-dev libxext-dev
tar xf qt-everywhere-opensource-src-4.6.3.tar.gz
cd qt-everywhere-opensource-src-4.6.3
./configure -opensource -fast -nomake examples -nomake demos
make
sudo make install
Note : pour gagner du temps vous pouvez désactiver certains modules :

./configure -opensource -fast -nomake examples -nomake demos \
-no-qt3support -no-xmlpatterns -no-multimedia -no-phonon \
-no-svg -no-webkit -no-javascript-jit -no-script -no-scripttools \
-no-dbus
Note : pour compiler Qt en version debug :

./configure -opensource -fast -nomake examples -nomake demos \
-debug -no-separate-debug-info

Étape 3 : Installation de libvirt 0.8.1

Hynesim utilise libvirt pour contrôler les machines invitées.

sudo aptitude install libgnutls-dev libxml2-dev
wget http://libvirt.org/sources/libvirt-0.8.1.tar.gz
tar xf libvirt-0.8.1.tar.gz
cd libvirt-0.8.1
./configure --with-storage-mpath=off --without-xen --without-polkit \
 --without-libpcap --without-selinux --without-hal --without-sasl
make
sudo make install

Étape 4 : Dépendances optionnelles

VirtualBox

Ajoutez la ligne suivante dans le fichier /etc/apt/sources.list : deb http://download.virtualbox.org/virtualbox/debian hardy non-free

Ajoutez la clé de signature des paquets d’Oracle et mettez à jour :

wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc -O- \
 | sudo apt-key add -
sudo aptitude update

libvirt 0.8.1 supporte les versions 2.2, 3.0 et 3.1 de VirtualBox.
Installez VirtualBox en utilisant le numéro de version que vous souhaitez

 sudo aptitude install virtualbox-3.1
Note : Pour information, VirtualBox 3.2 est supporté par la version de développement de libvirt.
OpenVZ

Installez le noyau :

sudo aptitude install linux-openvz linux-headers-openvz

Redémarrez sur le nouveau noyau. Si vous avez déjà installé VirtualBox, n’oubliez pas de recompiler les modules noyau :

sudo /etc/init.d/vboxdrv setup

Hynesim nécessite des versions de vzquota et vzctl plus récentes que celles qui sont présentes dans les dépôts Ubuntu.
Avec un compilateur récent, la compilation de vzquota peut échouer avec une erreur concernant __USE_ISOC99.
le correctif est disponible ici.

wget http://download.openvz.org/utils/vzctl/3.0.23/src/vzctl-3.0.23.tar.bz2
tar xf vzctl-3.0.23.tar.bz2
cd vzctl-3.0.23
./configure
make
sudo make install
sudo make install-debian
wget http://download.openvz.org/utils/vzquota/3.0.12/src/vzquota-3.0.12.tar.bz2
tar xf vzquota-3.0.12.tar.bz2
cd vzquota-3.0.12
make
sudo make install

Un script de démarrage d’OpenVZ modifié pour désactiver l’interface venet0 est disponible ici : http://dev.hynesim.org/raw-attachment/wiki/System/OpenVZ/vz
Vous pouvez remplacer le fichier /etc/init.d/vz avec ce dernier.

Afin de pouvoir effectuer du déport d’écran sur les invités OpenVZ, vous devez installer vncterm

sudo aptitude install console-data libvncserver-dev libjpeg62-dev
wget http://download.proxmox.com/sources/vncterm_2010-10-20.tar.gz
tar xf vncterm_2010-05-25.tar.gz
cd vncterm_2010-05-25
make
sudo make install
KVM/QEMU

La version de kvm présente dans les dépôts est trop ancienne, il est nécessaire d’ajouter les dépôts “backports” pour obtenir la bonne version. Pour ce faire, ouvrez le fichier /etc/apt/sources.list et décommentez les deux lignes contenant “hardy-backports”. Vous pouvez ensuite installer kvm.

sudo aptitude update
sudo aptitude install kvm
Point d’accès Wi-Fi

Pour relier un point d’accès Wi-Fi à la simulation vous devez posséder une Fonera flashée avec un système OpenWrt modifié. Des informations à ce sujet sont disponibles ici : http://dev.hynesim.org/wiki/HowTo/OpenWrt

Reliez tout d’abord la prise “Internet” de la Fonera à votre machine. Nous supposerons ici que la Fonera est relié à l’interface “eth3“.

sudo aptitude install vlan # installation des utilitaires vlan
sudo modprobe 8021q
sudo vconfig add eth3 1 # ajout de la vlan 1 sur l'interface
sudo ifconfig eth3.1 192.168.2.1 up
ping 192.168.2.2 # pour vérifier que tout est ok

Hynesim a besoin d’un accès en ssh sur la Fonera pour fonctionner correctement, il faut donc générer des clés ssh et les copier sur la Fonera.

sudo ssh-keygen # validez chaque question en appuyant sur la touche "entrée"
ssh root@192.168.2.2 echo $(sudo cat /root/.ssh/id_rsa.pub) \
  '>> /etc/dropbear/authorized_keys' # le mot de passe par défaut est "hns"

Vous devriez maintenant pouvoir vous connecter à la Fonera sans avoir à entrer de mot de passe :

sudo ssh root@192.168.2.2

Étape 5 : Compilation et installation d’Hynesim

L’arborescence des sources d’Hynesim est la suivante :

+- répertoireRacine
 |-- hynemesh
 |-- hynesim
 |-- hyneview
 |-- ipmorph
Note : la commande qmake ne se trouve pas forcément dans votre PATH. Si vous avez compilé vous-même Qt, le chemin par défaut est “/usr/local/Trolltech/Qt-4.6.3/bin/qmake“. Si vous avez installé le SDK, le chemin par défaut est “/opt/qtsdk-2010.03/qt/bin/qmake“.
Etape 5.1 : Compilation de l’outil proxygen
cd hynemesh/proxygen
qmake
make
Etape 5.2 : Compilation d’Hynesim et installation
cd ../../hynesim
qmake
make
sudo make install
Etape 5.3 : Compilation et installation optionnelle d’IpMorph
cd ../ipmorph
qmake
make
sudo make install
Etape 5.4 : Configuration et démarrage d’Hynesim

Configurez hynesim en éditant le fichier /etc/hynesim.ini. Vous pouvez ensuite lancer le nœud avec la commande :

sudo /etc/init.d/hynesim start