Rapport Kernel Linux - Configuration – Compilation & installation
NFS, MPI, Programmation Sérial & Parallèle avec Condor Scénarios et Simulations avec CloudAnalyst
1. Compte Rendu
Architectures et technologie virtualisation
NFS, MPI, Programmation Sérial & Parallèle avec Condor
Scénarios et Simulations avec CloudAnalyst
UNIVERSITÉ ABDELAMLEK ESSADI
FACULTE DES SCIENCES ET TECHNIQUES DE TANGER
MASTER : « SYSTEMES INFORMATIQUES ET RESEAUX »
Réalisé par : - Encadré par :
- Rouzi Ayoub Mr. C. ELAMRANI
2. MASTER-SIR R a p p o r t | 2
AYOUB ROUZI
Plan :
Introduction ……………………………………………………………………………………………………………………….........
1/ Installation de Condor sur les machines Master et Slaves : ......................................................
2) Installation et configuration de serveur NFS : ..............................................………………………….
3) Installation et Teste d’un Framework MPI :....................................................................................
4) Réalisation d’un test avec Vanilla/Parallèle : .................................................................................
5) Cloud Analyste : simulation d’un scenario : ..................................................................................
Conclusion : ...............................................................................................................................................
3. MASTER-SIR R a p p o r t | 3
AYOUB ROUZI
Condor : Introduction
« Condor (renommé HTCondor en octobre 2012) est un kit de composants logiciel
(Framework) open source de parallélisassions de traitement pour la parallélisassions à
distribution grossière de tâches de calcul lourdes. Il peut être utilisé pour gérer une charge
de travail sur une grappe de serveurs dédiée, et/ou pour délester une charge de travail sur
des postes de travail inactifs (grille informatique). Condor tourne sur les systèmes Linux,
Unix, Mac OS X, FreeBSD, et sur les systèmes Windows actuels. Condor peut aisément faire
collaborer des ressources dédiées (grappes de calculateurs en batterie) et des postes de
travail non-dédiés (grille informatique) en un seul environnement de calcul intégré.
- Installation : on télécharge le package htdoncodr à partir du site
On tape les commandes suivantes :
- $ sudo apt-get update
- $ sudo apt-get install openssh-server
- $ sudo apt-get install htcondor
HTCondor: Machines Master
Adresse du Master : 192.168.58.102
4. MASTER-SIR R a p p o r t | 4
AYOUB ROUZI
On configure le fichier hosts :
On redémarre le service networking pour les 3 machines on utilise la commande :
$ sudo service networking restart.
On génère les clés de SSH sur la machine master on tape la commande :
$ ssh-keygen -t dsa
Puis ajoutons maintenant la clé générée de SSH à chacun des autres machines des slaves :
$ ssh-copy-id slave@slave, $ ssh-copy-id slave3@slave3
On ouvre le fichier de configuration condor :
5. MASTER-SIR R a p p o r t | 5
AYOUB ROUZI
HTCondor: Machines slaves
- IP Slave 1 : 192.168.58.101
- IP Slave 2 : 192.168.58.104
Fichier de configuration condor :
on teste le fonctionnement : $ condor_status
6. MASTER-SIR R a p p o r t | 6
AYOUB ROUZI
Installation et configuration de serveur NFS :
« Network File System (ou NFS, système de fichiers en réseau) est à l'origine un protocole développé par Sun
Microsystems en 1984 qui permet à un ordinateur d'accéder à des fichiers via un réseau. ... NFS est compatible
avec IPv6 sur la plupart des systèmes. » Wikipedia.
Sur le serveur hôte, nous devons installer le paquet nfs-kernel-server, ce qui nous permettra de partager nos
répertoires :
$ sudo apt-get install nfs-kernel-server
On démarre le service nfs-kernel-server: $ sudo service nfs-kernel-server start
On install nfs client:
$ sudo apt-get install nfs-common
On crée un répertoire « cloud1 » pour le partage des données :
$ sudo mkdir /cloud1
Installation et Teste d’un Framework MPI :
« MPI (Message Passing Interface), conçue en 1993-94, est une norme définissant une bibliothèque de
fonctions, utilisable avec les langages C, C++ et Fortran. Elle permet d'exploiter des ordinateurs distants ou
multiprocesseurs par passage de messages. » Wikipedia.
Pour moi j’ai choisi d’installer OpenMPI
L’installation se fait simplement avec deux commandes :
$ sudo apt-get install libopenmpi-dev || $ sudo apt-get install openmpi-bin
7. MASTER-SIR R a p p o r t | 7
AYOUB ROUZI
Pour compiler et exécuter l’application on lance les commandes suivantes :
Notre programme s’exécute avec succès alors OpenMPI est bien fonctionner :
test avec Vanilla/Parallèle universe:
Avant de pouvoir soumettre un travail à Condor, nous allons besoin d'un travail. Nous allons écrire rapidement un
petit programme en C ou bien C++.
Tout d'abord, créant un programme en C++ appelé sum_serial.cpp qui calcule la somme de 1 à 1000 :
On le compile et l’exécute :
Maintenant que nous avons un Job :
Universe: signifie le mode de soumettre un (parallel, universe, MPI…).
Executable: le nom de programme.
Log: C'est le nom d'un fichier où Condor va enregistrer des informations sur l'exécution de notre job.
Output: Où Condor devrait mettre la sortie standard du job.
Erreur: Où Condor devrait mettre sortie d'erreur de notre job.
8. MASTER-SIR R a p p o r t | 8
AYOUB ROUZI
Pour soumettre le travail on tape : $ condor_submit submit
Fichier du log :
soumettre Un « Job » avec Parallel universe :
Programme de test qui calcule la somme de 1 à 1000 on utilise MPI :
9. MASTER-SIR R a p p o r t | 9
AYOUB ROUZI
Configuration du job :
Pour soumettre le travail on tape :
$ Condor_submit submit
Fichier log :
10. MASTER-SIR R a p p o r t | 10
AYOUB ROUZI
Cloud analyste Scénario 1 : Khdemti – Version bêta 1.0 (Local) :
- Situation : Lancement dans une région limitée : MAROC
- Caractéristiques du projet :
o Plateforme Marocaine du freelance et projets
o Traffic de 100 visiteurs par jours
o Hébergement Web : « OVH CLOUD PACK 1 »
- Objectif :
o Navigation confortable (plus de 100 pages)
o Réponses d’opérations rapides (Articles, projets, prestations…)
o Réponses simultanés (messages, emails…)
Table 1 - Bases d'utilisateurs utilisées dans l'expérience :
User base Region Time zone Peak hrs (local) Peak hrs (gmt) Simultanious users
during peak hrs
Simultanious
users off peak hrs
UB5
Morocco
Afrique
GMT+0 20:00 – 21:00 20:00 – 21:00 100 10
UB
Figure 1 : Khdemti version Bêta
11. MASTER-SIR R a p p o r t | 11
AYOUB ROUZI
Fiche de simulation :
- Configuration générale :
- Configuration générale (2)
- Configuration du datacenter :
12. MASTER-SIR R a p p o r t | 12
AYOUB ROUZI
- Configurations avancées
On change la politique d'équilibrage de charge dans un seul DataCenter :
- Equally Spread Current Execution Load :
13. MASTER-SIR R a p p o r t | 13
AYOUB ROUZI
- Throttled :
Besoin de migration vers un pack hébergement cloud plus grand
Scénario 2 : Khdemti – Version Stable 2.0 (Afrique) :
- Situation : Lancement dans un continent : AFRIQUE
- Caractéristiques du projet :
o Plateforme Marocaine du freelance et projets
o Traffic de 600 visiteurs par jours
o Hébergement Web : « Amazon Elastic Cloud Computing (Amazon EC2) »
- Objectif :
o Navigation confortable (plus de 550 pages)
o Réponses d’opérations rapides (formulaires, Articles, projets, prestations…)
o Réponses simultanés (chat, Paiement, emails…)
14. MASTER-SIR R a p p o r t | 14
AYOUB ROUZI
Table 2 - Bases d'utilisateurs utilisées dans l'expérience :
User base Region Time zone Peak hrs (local) Peak hrs (gmt) Simultanious users
during peak hrs
Simultanious
users off peak hrs
UB5 Afrique GMT+2 20:00 – 21:00 22:00 – 00:00 250 50
Fiche de simulation :
- Configuration générale :
- Configuration générale (2)
15. MASTER-SIR R a p p o r t | 15
AYOUB ROUZI
- Configuration du Datacenter :
- Configurations avancées
On change la politique d'équilibrage de charge dans un seul DataCenter :
16. MASTER-SIR R a p p o r t | 16
AYOUB ROUZI
- Equally Spread Current Execution Load :
- Throttled :
Site Web a besoin d'évolutivité par l'intermédiaire de l'équilibrage de charge
Besoin de migration vers un pack hébergement cloud plus grand
Scénario 3 : Khdemti – Version Stable 3.0 (International) :
- Situation : Lancement international
- Caractéristiques du projet :
o Plateforme international du freelance et projets
o Traffic de 4000 visiteurs par jours
o Serveur Web : « Amazon Elastic Cloud Computing (Amazon EC2) »
- Objectif :
o Navigation confortable (plus de 3550 pages)
o Réponses d’opérations rapides (formulaires, Articles, projets, prestations…)
17. MASTER-SIR R a p p o r t | 17
AYOUB ROUZI
o Réponses simultanés (chat, notifications, Paiement, emails…)
Google Analytiques :
Fiche de simulation :
- Configuration générale :
18. MASTER-SIR R a p p o r t | 18
AYOUB ROUZI
- Configuration générale (2)
- Configuration du Datacenter :
19. MASTER-SIR R a p p o r t | 19
AYOUB ROUZI
- Configurations avancées
On change la politique d'équilibrage de charge dans un seul DataCenter :
- Equally Spread Current Execution Load :
- Throttled :
20. MASTER-SIR R a p p o r t | 20
AYOUB ROUZI
Conclusion :
Après l’analyse des résultats nous remarquons qu’on doit faire le Choix des paramètres
optimaux avec « Round Robin » qui nous donne au meilleur temps de réponse, donc ce
dernier sera le bon choix pour le relier avec notre USER BASE qui se trouve sur la région 4.
Ce travail m’a permis d'enrichir et d’approfondir mes connaissances en virtualisation à
travers la simulation de ces services coté master et client sous Linux.