Introduction,
En informatique, le parallélisme consiste à mettre en œuvre des architectures permettant de traiter des informations de manière simultanée, ainsi que les algorithmes spécialisés pour celles-ci. Ces techniques ont pour but de réaliser le plus grand nombre d’opérations en un temps le plus petit possible. Afin de pouvoir étudier la programmation parallèle, il faut tout d'abord créer un cluster de machines capable de fonctionner en parallèle. Le but de ce projet est de pouvoir obtenir un tel cluster et j’utilise Le Framework HTCondor pour lancer un programme sur le cluster.
Virtualisation des serveurs et Sécurisation avec Docker Wahbi Belhadj
Sécurisation des serveurs cloud : implementation et integration d'un architecture muti-services sur un plateforme cloud basé sur LinuX Container a l'aide de Gestionnaire DocKer
Virtualisation des serveurs et Sécurisation avec Docker Wahbi Belhadj
Sécurisation des serveurs cloud : implementation et integration d'un architecture muti-services sur un plateforme cloud basé sur LinuX Container a l'aide de Gestionnaire DocKer
MISE EN PLACE D’ UN VPN (SITE-TO-SITE) AU SEIN D’ UNE ENTREPRISE : CAS DE LA ...DENAGNON FRANCK ✔
Il est de tradition, pour notre prestigieuse institution de formation qu'à la fin du cursus académique, les futurs lauréats au titre du Bachelor, entreprennent au sein d’une entreprise des travaux de recherche sur un thème d'actualité proposé par leurs structures d'accueil.
Ce projet permet aux étudiants de mettre en application les connaissances théoriques acquises pendant les trois années de formation.
Le thème de recherche qui nous a été confié est intitulé : "Mise en place d’un VPN (Site - to - Site) au sein d’une entreprise ".
Conception et développement d'une application Android pour TUNISAIRSkander Driss
Le sujet présenté dans ce rapport consiste à concevoir et à développer une application mobile.
Réalisé par Driss Skander & Touzri Malek.
Pour plus d'informations veuillez me contacter sur : skanderdriss@gmail.com
Conception et développement d'une application de gestion de production et de ...Mohamed Aziz Chetoui
Rapport de stage de fin d'études présenté par
Dhouha MELKI & Mohamed Aziz CHETOUI
Réalisé au sein de LYSI ENGINEERING & INSTITUT SUPERIEUR D’INFORMATIQUE
MISE EN PLACE D’ UN VPN (SITE-TO-SITE) AU SEIN D’ UNE ENTREPRISE : CAS DE LA ...DENAGNON FRANCK ✔
Il est de tradition, pour notre prestigieuse institution de formation qu'à la fin du cursus académique, les futurs lauréats au titre du Bachelor, entreprennent au sein d’une entreprise des travaux de recherche sur un thème d'actualité proposé par leurs structures d'accueil.
Ce projet permet aux étudiants de mettre en application les connaissances théoriques acquises pendant les trois années de formation.
Le thème de recherche qui nous a été confié est intitulé : "Mise en place d’un VPN (Site - to - Site) au sein d’une entreprise ".
Conception et développement d'une application Android pour TUNISAIRSkander Driss
Le sujet présenté dans ce rapport consiste à concevoir et à développer une application mobile.
Réalisé par Driss Skander & Touzri Malek.
Pour plus d'informations veuillez me contacter sur : skanderdriss@gmail.com
Conception et développement d'une application de gestion de production et de ...Mohamed Aziz Chetoui
Rapport de stage de fin d'études présenté par
Dhouha MELKI & Mohamed Aziz CHETOUI
Réalisé au sein de LYSI ENGINEERING & INSTITUT SUPERIEUR D’INFORMATIQUE
Mise en place d’un laboratoire de sécurité « Scénarios d’Attaques et Détectio...Trésor-Dux LEBANDA
De nos jours l’internet est devenue une source d’informations (business, réseaux sociaux…), avec des systèmes d’informations qui sont de plus en plus ouverts sur Internet. Ceux-ci présentent quelques failles de sécurité dont la mise en place des mesures sécuritaires devient une condition nécessaire, mais pas suffisante pour se protéger des risques présents sur la toile internet.
Comment interconnecter des réseaux ?
Comment permettre à des réseaux d’échanger des informations et limiter les risques liés à ces échanges ?
Nous avons mis en place un laboratoire de sécurité qui permet de faire des tests et détections d’intrusions. Le travail sait fait en deux parties.
D’abord la mise en place du laboratoire ensuite l’interconnexion avec des sites distants.
La gestion du temps est l'un des problèmes majeurs des systèmes d'exploitation, les systèmes d'exploitation modernes sont tous multitâche, or ils utilisent du matériel basé sur des processeurs qui ne le sont pas, ce qui oblige le système à partager le temps du processeur entre les différentes tâches (processus). Cette notion de partage implique une gestion du passage d'une tâche à l'autre qui est effectuée par un ensemble d'algorithmes d’ordonnancement appelé ordonnanceur (schedule).
Code source disponible sur : https://github.com/benbac20/OSTimeShare
Les mathématiques appliquées et le calcul scientifique jouent un rôle croissant comme outils non évitables pour l’élaboration de recherches scientifiques et dans la conception de processus industriels. Le calcul scientifique reste pour toujours l’étape première de la voie du développement culturel et technique d’un pays donné.
Par ailleurs, le niveau de complexité des systèmes, généralement manipulés par les êtres humains que nous sommes, est très élevé à un niveau où toute avancée intellectuelle engendrera des retombés au niveau industriel tant que tous les processus de l’économie en dépendent.
En contre partie, la majorité des produits technologiques sont juste la solution immédiate de bon nombre de résolutions de requête de la vie courante. L'avènement de l'informatique et de ses produits, les langages de programmation de tout bord, de l'Internet et des télécommunications, à chacun ses infrastructures et ses protocoles, a révolutionné les méthodologies de travail des équipes et laboratoires de recherches. Les langages de développement informatique des outils et suites logiciels sont d’un grand secours aux travaux de modélisation et de simulation des processus.
Les mathématiques appliquées et l'informatique sont les moyens de conception (Modélisation et Simulation), plus encore, ils sont les vecteurs qui ont provoqué une amélioration nette dans les pratiques de tous les jours et aussi dans la vitesse de mise en œuvre de moyens exploitables.
Les langage de programmation, comme le C/C++, le FORTRAN ou le Python ont joué un grand rôle dans le cours de développement de beaucoup de procédés (Modélisation) et ont facilité la compréhension de beaucoup phénomènes (Simulation).
Build automatique et distribution OTA avec Xcode 4.x et Jenkins
Creation de cluster (Master et deux slave ) nfs, htcondor, mpi
1. HTCONDOR Calcul parallèle, MPI
1
Prof: C.EL AMRANI
Département Génie d’Informatique
Faculté des Sciences et Techniques
TANGER
Rapport
Projet Fin Module
Parallélisme
HTCondor
Master Système Informatique et Mobile
Réalisé par : Encadré par :
➢ EDAIG KHALID. Prof: C. EL AMRANI
2. HTCONDOR Calcul parallèle, MPI
2
Sommaire
1. Introduction......................................................................................................3
2. De quoi a-t-on besoin ?....................................................................................3
3. Qu'est-ce que HTCondor ? .............................................................................3
3.1. Installation :......................................................................................................................................................3
4. Architecture de cluster ....................................................................................3
5. Configuration générale sur tous les serveurs : .............................................4
6. Installation de MPICH ....................................................................................5
7. Teste Framework MPI ....................................................................................6
8. Le droit root sur ces machines........................................................................7
8.1. Mettre en place le Passwordless SSH :..........................................................................................................7
9. Mettre en place un partage NFS ....................................................................9
10.Tester notre infrastructure:..........................................................................11
11.Configuration HTCondor .............................................................................12
12.Teste HTCONDORE dans mon cluster.......................................................12
12.1. Soumettre un travail avec vanilla universe.................................................................................................13
12.2. Soumettre un tarvail avec Parallel universe :.............................................................................................14
3. HTCONDOR Calcul parallèle, MPI
3
1.Introduction
En informatique, le parallélisme consiste à mettre en œuvre des architectures permettant de traiter des
informations de manière simultanée, ainsi que les algorithmes spécialisés pour celles-ci. Ces techniques ont
pour but de réaliser le plus grand nombre d’opérations en un temps le plus petit possible. Afin de pouvoir
étudier la programmation parallèle, il faut tout d'abord créer un cluster de machines capable de fonctionner
en parallèle. Le but de ce projet est de pouvoir obtenir un tel cluster et j’utilise Le Framework HTCondor
pour lancer un programme sur le cluster.
2.De quoi a-t-on besoin ?
• Une machine « master »(virtuelle) Ubuntu Server.
• Deux machines « slave »(virtuelles) Ubuntu Server.
• Installation mpich pour calcule parallèle
• Le droit root sur ces machines.
• Installation et configuration nfs
• Installation et configuration HTCondor
3.Qu'est-ce que HTCondor ?
HTCondor est un système spécialisé de gestion de la charge de travail pour les travaux nécessitant beaucoup
de calcul. Comme d’autres systèmes de traitement par lots complets, HTCondor fournit un mécanisme de
mise en file d’attribution des tâches, une stratégie de planification, un schéma de priorité, une surveillance
des ressources et une gestion des ressources. Les utilisateurs soumettent leurs travaux en série ou en
parallèle à HTCondor. Ce dernier les place dans une file d'attente, choisit où et quand exécuter les travaux en
fonction d'une stratégie, surveille attentivement leur progression et en informe l'utilisateur à la fin.
• Condor (renommé HTCondor en octobre 2012)
• Condor tourne sur les systèmes Linux, Unix, Mac OS X, FreeBSD, et sur les systèmes Windows
actuels.
3.1. Installation :
$ sudo apt-get update : mise à jours de OS
$ sudo apt-get install htcondor <<version>>
4.Architecture de cluster
J’utilise virtualBox pour créer des machines virtuelles :
• Un machine virtuelle ‘server.masetr’ de l’adresse IP :10.0.3.4/24
• Deux machines virtuelles ‘server.slave1’ et ‘server.slave2’
o ‘server.slave1’ de l’adresse IP :10.0.3.5/24
o ‘server.slave2’ de l’adresse IP :10.0.3.6/24
4. HTCONDOR Calcul parallèle, MPI
4
5.Configuration générale sur tous les serveurs :
Il faut tout d'abord assurer que chacun des serveurs connaissent les adresses des autres serveurs MPI - vos
machines devraient donc sur le même réseau, en théorie. Il faut ensuite attribuer à chacun des serveurs une
IP statique via /etc/network/interfaces, et ensuite associer un nom de machine à chacune de ces adresses
via /etc/hosts. Il faudra ensuite soit redémarrer les machines, ou le service de networking. Alternativement,
pour ce projet j’ai déjà un RESEAU NAT avec un serveur DHCP et des adresses fixes configurées.
Dans VM virtualbox clique sur ficher>paramétrers>réseau puis cliquer sur ajouter Réseau Nat et en fin
modifier ce dernier.
5. HTCONDOR Calcul parallèle, MPI
5
Teste la connexion entre les machines du claster
6.Installation de MPICH
MPICH, anciennement connu sous le nom de MPICH2, est une implémentation portable librement
disponible de MPI, une norme de transmission de messages pour les applications à mémoire distribuée
utilisées dans le calcul parallèle.
$ sudo apt-get install mpich
Cette installation se fait sur tous les machines
6. HTCONDOR Calcul parallèle, MPI
6
7.Teste Framework MPI
Je crée un petit programme de teste ‘Helloword’
Pour compiler et exécuter le programme, je lance les commandes suivantes :
• $ mpicc -o Nom_prog Nom_prog.c
• $ mpirun -np Nbr_de-processus ./Nom_prog
Le programme s’exécute avec succès donc le MPICH est bien fonctionne
7. HTCONDOR Calcul parallèle, MPI
7
Il nous faut un utilisateur commun sur chacune des machines. Soyez sûr que cet utilisateur possède un home
directory. On ajoute l’utilisateur par la commande $ adduser nom_utilisateur
Non utilisateur : mpiuser
Password ; mpiuser
8.Le droit root sur ces machines.
Afin que le programme puisse être lancé sur les machines « slave1 » et «slave2 », il faut que celles-ci fassent
"confiance" à la machine « master » - pour cela, on a besoin de mettre en place une connection SSH sans
mot de passe depuis la machine « master » vers les machines « slave1 » et « slave2 » Déjà, il faut mettre en
place le serveur OpenSSH sur la machine « master » :
8.1. Mettre en place le Passwordless SSH :
Après cela, il faut générer les certificats et clés DSA. Ensuite, je dois copier ces clés sur chacune de nos
machines slaves, et puis connecter sur celles-ci via ssh afin de les ajouter à nos hôtes connus. Il faut faire
cette opération pour chacune des machines « slave1 et slave2 ». Attention : le champ "Passphrase" doit bien
être vide !
Pour générer les certificats et clés DSA
8. HTCONDOR Calcul parallèle, MPI
8
Copier ces clés par la commande $ ssh-copy-id mpiuser@slave1 , $ ssh-copy-id mpiuser@slave2
La connexion SSH est donc maintenant en place depuis la machine « master ».
Teste la connection SSH sans mot de passe depuis la machine « master » vers les machines « slave1 et slave 2 »
9. HTCONDOR Calcul parallèle, MPI
9
La connexion bien réussir
9.Mettre en place un partage NFS
Network File System (ou NFS), littéralement système de fichiers en réseau, est à l'origine
un protocole développé par Sun Microsystems en 19842 qui permet à un ordinateur d'accéder via un réseau à
des fichiers distants. Wikipedia
Je commence par la machine « master ». Tout d'abord, je doit mettre en place le serveur NFS sur cette
machine, et créer le dossier qui sera partagé entre les machines de notre cluster.
10. HTCONDOR Calcul parallèle, MPI
10
Ensuite, dossier il doit exporter est /home/mpiuser/condor_teste. Pour cela, nous devons ajouter une entrée
à /etc/exports, puis indiquer qu'il y a de nouveau en utilisant la commande "exportfs -a", et enfin redémarrer
le service.
Sur nos machines « slave1, slave2 », il faut tout simplement monter le partage.
11. HTCONDOR Calcul parallèle, MPI
11
La même chose pour slave2
Il faut par contre savoir que la commande mount n'est qu'une solution temporaire, car le partage s'arrêtera
au redémarrage de la machine dans ce cas. Pour une solution plus permanente, il faut éditer /etc/fstab
10. Tester notre infrastructure:
Dans notre partage, nous allons créer un petit script en C afin de pouvoir tester notre cluster.
Créer une hostfile , la liste des machines que vous utilisez dans le cluster
12. HTCONDOR Calcul parallèle, MPI
12
Compilation et exécution
Notre cluster est bien fonctionnel
11. Configuration HTCondor
On édit CONDOR_ADMIN, CONDOR_HOST, ALLOW_WRITE
12. Teste HTCONDORE dans mon cluster
Avant de pouvoir soumettre un travail à Condor, nous allons besoin d'un travail. Je crée un petit programme en c ou
bien c++.
Programme que j’ai créé nommer SommeNbr.c qui fait le calcule de 1 à 1000
13. HTCONDOR Calcul parallèle, MPI
13
Compilation et exécution de la programme SommeNbr.c
Maintenant je dois soumettre des travaux pour que condor s'exécute.
12.1. Soumettre un travail avec vanilla universe
Tout d’abord j’ai créé les bases d'un fichier de soumission de condor :
Universe: signifie le mode de soumettre un (parallel, vanilla, 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.
Soumettre le travail je tape la commande : $ condor_submit Nom_fichier_submit
14. HTCONDOR Calcul parallèle, MPI
14
12.2. Soumettre un tarvail avec Parallel universe :
Tous d’abord je crée un fichier submit mpi_teste.submit
On va lancer le travail avec la comande condor_submit mpi_teste.submite
J’ai un problème : le programme est distribué sur cluster mais ne donne rien.