INFO-F-404 : Techniques avancées de systèmes d exploitation



Documents pareils
Couche application. La couche application est la plus élevée du modèle de référence.

SSH, le shell sécurisé

ftp & sftp : transférer des fichiers

Configuration d un firewall pour sécuriser un serveur WEB

Mon premier rpm. 7 juin Avant de commencer RPM URPMI RPMBUILD... 2

sshgate Patrick Guiran Chef de projet support

Les différentes méthodes pour se connecter

Guide d installation de SugarCRM Open Source version 4.5.1

Les commandes relatives aux réseaux

Le prototype de la fonction main()

Introduction to Parallel Programming with MPI

Quelques protocoles et outils réseaux

Table des matières. 1. Installation de VMware ESXI Pré-requis Installation... 3

Chapitre 2. Cluster de calcul (Torque / Maui) Grid and Cloud Computing

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server 3, 3.5

Configurer la supervision pour une base MS SQL Server Viadéis Services

Votre premier projet Android

Programmation système I Les entrées/sorties

Système Principal (hôte) 2008 Enterprise x64

Systèmes parallèles et distribués

Unix/Linux I. 1 ere année DUT. Université marne la vallée

Tutoriel Création d une source Cydia et compilation des packages sous Linux

Ocs Inventory et GLPI s appuie sur un serveur LAMP. Je vais donc commencer par installer les paquets nécessaires.

Installation et mise en œuvre de OpenSSH sous AIX 5L

Administration Linux - FTP

Introduction à la Programmation Parallèle: MPI

TP LINUX : MISE EN PLACE DU SERVEUR DE MESSAGERIE QMAIL

Projet Administration Réseaux

FTP. Table des matières

Bon ben voilà c est fait!

Règles et paramètres d'exploitation de Caparmor 2 au 11/12/2009. Pôle de Calcul Intensif pour la mer, 11 Decembre 2009

Aide-Mémoire unix. 9 février 2009

1-Introduction 2. 2-Installation de JBPM 3. 2-JBPM en action.7

Guide Installation Serveur Extensive Testing

ParallelKnoppix. Majid Hameed. Copyright 2005 Majid Hameed. Copyright 2005 Gauthier Savart. Copyright 2005 Joëlle Cornavin

How to Login to Career Page

Guide Installation Serveur Extensive Testing

Tutoriel compte-rendu Mission 1

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server

Open Source Job Scheduler. Installation(s)

Anas Abou El Kalam Sécurité SSH SSH

Service FTP. Stéphane Gill. Introduction 2

Comment reproduire les résultats de l article : POP-Java : Parallélisme et distribution orienté objet

Manuel des logiciels de transferts de fichiers File Delivery Services

Programmation C. Apprendre à développer des programmes simples dans le langage C

SUGARCRM Sugar Open Source Guide d Installation de French SugarCRM Open Source Version 4.2

Le service FTP. M.BOUABID, Page 1 sur 5

Introduction à Linux (pour le HPC) «Linux 101» Présentation :

Installation de VirtualPOPC-1 sur Ubuntu Server LTS 64bits

Services Réseau SSH. Michaël Hauspie. Licence Professionnelle Réseaux et Télécommunications

Windows Server Chapitre 1: Découvrir Windows Server 2008

L3 informatique TP n o 2 : Les applications réseau

Micro-ordinateurs, informations, idées, trucs et astuces utiliser le Bureau à distance

Installation du transfert de fichier sécurisé sur le serveur orphanet

Serveurs de noms Protocoles HTTP et FTP

IceWarp serveur sur Linux : Guide d'installation

Accès aux ressources informatiques de l ENSEEIHT à distance

CSI351 Systèmes d exploitation Instructions pour rouler Linux avec Virtual PC dans la salle de labo 2052

Installation d'un serveur FTP géré par une base de données MySQL

Serveur Linux : FTP. Mise en place d un service FTP sous Linux. Bouron Dimitri 20/04/2014

Les clusters Linux. 4 août 2004 Benoît des Ligneris, Ph. D. benoit.des.ligneris@revolutionlinux.com. white-paper-cluster_fr.sxw, Version 74 Page 1

ASRb/Unix Avancé II. Chapitre 2. Utilitaires réseaux. Arnaud Clérentin, IUT d Amiens, département Informatique

Réaliser un inventaire Documentation utilisateur

Exercice sur les Dockers

Quick Start Guide This guide is intended to get you started with Rational ClearCase or Rational ClearCase MultiSite.

Plan. Le système de transfert de fichiers d'internet. Introduction aux systèmes de transfert de fichiers Le protocole FTP.

FTP & SMTP. Deux applications fondamentales pour le réseau Internet.

HAUTE DISPONIBILITÉ DE MACHINE VIRTUELLE AVEC HYPER-V 2012 R2 PARTIE CONFIGURATION OPENVPN SUR PFSENSE

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée Virtual Server de Microsoft

Installation UpdatEngine serveur (CentOs apache2 / MySQL)

Testez votre installation. Créer un répertoire vide

Introduction au Système d Exploitation Unix/Linux

PRESENTATION RESSOURCES. Christian Dupaty BTS Systèmes Numériques Lycée Fourcade Gardanne Académie d Aix Marseille

Procédure d installation d AMESim 4.3.0

Plan Général Prévisionnel (1/2) Internet et Outils L1/IO François Armand. Plan Général Prévisionnel (2/2) Unix, Réseau: Plan

Installation d'un serveur RADIUS

TP1 - Prise en main de l environnement Unix.

Once the installation is complete, you can delete the temporary Zip files..

TP développement : portage d applications sur le Cloud IaaS

FTP & SMTP. File Transfert Protocol. Deux applications fondamentales pour le réseau Internet. Un protocole d échange de fichier «au dessus» de TCP :

Secure SHell. Faites communiquer vos ordinateurs! Romain Vimont ( R om)

Les techniques de la télémaintenance

3IS - Système d'exploitation linux - Programmation système

Installer un domaine DNS

TP 4 de familiarisation avec Unix

il chiffrer les flux d'authentification et les flux de données il n'y a pas de soucis d'ouverture de ports avec des modes actif/passif à gérer

Maintenance et gestion approfondie des Systèmes d exploitation Master 2 SILI. Année universitaire David Genest

Stéphane DERACO, DSI CNRS l Argos Devops : de l hyperviseur aux conteneurs l 11/12/2014 DOCKER

PLATE-FORME DE CLOUD COMPUTING SLAPOS. Intégration d applications

Travaux Pratiques sur GRID 5000

Cours Linux. Cours en ligne Administrateur Systèmes Linux. Académie Libre

Instructions Mozilla Thunderbird Page 1

1 Configuration des Fichiers Hosts, Hostname, Resolv.conf

CONFIGURATION DU SERVEUR DE MAILS EXIM. par. G.Haberer, A.Peuch, P.Saade

Imprimantes et partage réseau sous Samba avec authentification Active Directory

Préparation d un serveur Apache pour Zend Framework

Arguments d un programme

Transcription:

Nikita Veshchikov e-mail : nikita.veshchikov@ulb.ac.be téléphone : 02/650.58.56 bureau : 2N8.213 URL : http://student.ulb.ac.be/~nveshchi/ INFO-F-404 : Techniques avancées de systèmes d exploitation Table des matières 1 Le système HYDRA 1 1.1 IMPORTANT........................................ 1 1.2 Qu est-ce que c est?.................................... 2 1.3 Se connecter à HYDRA.................................. 2 1.4 Envoyer des fichiers sur HYDRA............................. 3 1.5 Exécuter un programme écrit en MPI sur HYDRA.................... 4 1.5.1 Comment ça marche?............................... 4 1.5.2 Le programme hello world version MPI..................... 5 1.5.3 Créer un jobfile................................... 5 1.5.4 Exécuter hello world grâce à notre jobfile................... 6 1.5.5 Exécuter hello world à la main......................... 7 1 Le système HYDRA 1.1 IMPORTANT En ce moment HYDRA est en train de déménager vers new-hydra! Une fois que vous êtes inscrit sur HYDRA, travaillez avec new-hydra. 1

1.2 Qu est-ce que c est? Le Centre de calcul a récemment installé un nouveau cluster pour le calcul intensif (High Performance Computing). HYDRA remplace ainsi ASTER, le vieux cluster Alpha, et offre aux chercheurs de l ULB et de la VUB une puissance de calcul 20 fois supérieure. Son architecture parfaitement équilibrée en fait le meilleur dans son genre pour un large éventail d applications. Les codes de calcul intensif, les programmes gourmands en mémoire, les packages hautement parallèles et les logiciels à E/S intensives, sont tous exécutés rapidement et sans à-coup. Consultez aussi https://cc.ulb.ac.be/hydra/ 1.3 Se connecter à HYDRA Pour se connecter au système HYDRA, rien de plus simple 1 : 1. Ouvrir un terminal 2. Initialiser le protocole réseau telnet (TErminal NETwork ou TELecommunication NETwork, ou encore TELetype NETwork) via la commande telnet Réponse : telnet> 3. Se connecter à HYDRA grâce à la commande telnet> open hydra.ulb.ac.be Réponse : Trying 134.184.129.57... Connected to hydra.ulb.ac.be. Escape character is ^]. Password: 1. consultez aussi https://cc.ulb.ac.be/hydra/howto/login_hydra.php 2

Last login: Mon Nov 12 18:28:31 from cable-62-205-92-158.upc.chello.be Linux for High Performance Computing This product is based on Red Hat Enterprise Linux version 4 source packages found on ftp.redhat.com. Red Hat(R) is a registered trademark of Red Hat, Inc. This disc is not a product of Red Hat, Inc. and is not endorsed by Red Hat, Inc. This is a product of Hewlett-Packard Company. ======================================================================== All user files from ASTER were copied to HYDRA. You will find your ASTER files in the directory ASTER in your homedirectory. Don t forget to clean up files you no longer need. Thank you. ======================================================================== You have mail. -sh-3.00$ Vous êtes maintenant connecté à HYDRA! Le mot de passe qui vous a été demandé est celui de votre compte ULB (c est-à-dire celui de votre boite mail). Vous pouvez désormais naviguer dans vos dossier grâce aux commandes classiques ls, cd, etc. Pour que vos programmes puissent avoir accès aux multiples nœuds d HYDRA, il est nécessaire de générer un fichier ssh. Heureusement, cette étape ne doit être réalisée qu une seule fois. Pour créer ce fichier ssh, il suffit de taper les commandes : cd ssh-keygen -t dsa<<eof EOF Cette dernière opération vient de créer le fichier /.ssh/id_dsa.pub. Il suffit maintenant de copier ce fichier vers /.ssh/authorized_keys grâce à la commande cp /.ssh/id_dsa.pub /.ssh/authorized_keys 1.4 Envoyer des fichiers sur HYDRA Pour envoyer des fichiers sur HYDRA, nous ne pouvons pas nous servir du protocole telnet. Il nous faut nous servir du protocole FTP (File Transfer Protocol pour les newbies). Pour cela, vous pouvez soit vous servir d un client FTP (recommandé), soit vous servir d un nouveau terminal de la manière suivante : 3

ordinateur-de-vincent-nelis:~ pmeumeuy$ ftp ftp> open hydra.ulb.ac.be Connected to hydra.vub.ac.be. 220 (vsftpd 2.0.1) Name (hydra.ulb.ac.be:pmeumeuy): pmeumeuy 331 Please specify the password. Password: 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp> send (local-file) nom_du_fichier_local (remote-file) nom_du_fichier_sur_hydra Dans le cadre de ce TP, je vous demanderais de 1. télécharger les fichiers hello_world_mpi.c disponible sur l université virtuelle, 2. créer jobfile_hw, 3. vous connectez à HYDRA par le protocole FTP, 4. créer un nouveau dossier portant le nom MPI_test grâce à la commande FTP suivante ftp> mkdir MPI_test 5. envoyer les fichiers hello_world_mpi.c et jobfile_hw dans ce nouveau dossier. 6. executer hello_world une fois en ligne de commande et une fois à l aide de jobfile_hw 1.5 Exécuter un programme écrit en MPI sur HYDRA 1.5.1 Comment ça marche? Chaque programme interactif exécuté sur HYDRA est limité à 5 minutes de temps (d exécution) CPU. Si vos programmes nécessitent plus de temps (ou qu ils doivent être exécutés de manière distribuée, ce qui est notre cas), vous devez utiliser LSF (Load Sharing Facility). LSF est un système qui gère les processus gourmands en terme de temps CPU, de mémoire ou en autres ressources systèmes. LSF n exécutera un processus qu uniquement lorsqu il y a suffisamment de ressources disponibles pour celui-ci. Dans le cas contraire, le processus est placé dans une file d attente. Pour faire exécuter un programme par LSF, nous devons lui préciser certaines spécifications, comme par exemple le nombre de processeurs à utiliser ou encore le nom de la file d attente dans laquelle les instances du programme doivent être placées en cas de non-disponibilité de certaines 4

ressources. Pour cela, nous devons créer un fichier de spécifications que nous appellerons désormais un jobfile. Un jobfile est un fichier très similaire à un script de commande shell (on y inscrit notamment les instructions de compilations et d exécutions de notre programme), excepté que l on peut y indiquer des commandes supplémentaires nécessaires à LSF qui décrivent le programme à exécuter. 1.5.2 Le programme hello world version MPI Ce minuscule programme va nous servir d exemple dans le cadre de ce TP. Chaque instance de ce programme affiche à l écran son ID, le nombre total d instances qui ont été lancées ainsi que le nom de la machine sur laquelle l instance en cours est exécutée. Le code source est donné ci-dessous. Ce code peut être téléchargé depuis l université virtuelle où il porte le nom hello_world_mpi.cpp. #include <stdio.h> #include <mpi.h> int main(int argc; char *argv[]) { int id, nb_instance, len; char processor_name[mpi_max_processor_name]; MPI_Init(&argc, &argv); MPI_Comm_rank(MPI_COMM_WORLD, &id); MPI_Comm_size(MPI_COMM_WORLD, &nb_instance); MPI_Get_processor_name(processor_name, &len); printf ("Hello world! I m %d of %d on %s\n", id, nb_instance, processor_name); MPI_Finalize(); } 1.5.3 Créer un jobfile Voici un exemple de jobfile pour le programme hello_world_mpi.c que vous pouvez télécharger depuis l université virtuelle (et qui s appelle jobfile_hw ). #!/bin/bash -l #PBS -l nodes=4:ppn=8 #PBS -l walltime=00:02:00 5

#PBS -l pmem=2kb #PBS -j oe #PBS -N Hello #PBS -o hello_out.txt echo "Running job on $HOST - " date module load openmpi/1.4.3/gcc/4.6.1 cd $HOME/helloWorld/ mpicc hello.c -o hello mpirun./hello echo "Done" Les six premières lignes sont des spécifications MPI du programme hello_world_mpi. Ces spécifications ont la forme #PBS -option value Vous pouvez trouver la liste des options sur https://cc.ulb.ac.be/hydra/howto/prepare_jobs. php. Consultez aussi https://cc.ulb.ac.be/hydra/howto/compile_mpi.php pour les options de compilation. 1.5.4 Exécuter hello world grâce à notre jobfile Une fois que le jobfile est créé, on l envoi grâce à la commande suivante : qsub jobfile_hw Réponse : 37688.mn01.hydra.vub.ac.be Après l exécution de notre programme, nous pouvons lire les résultats (et les outputs) grâce à la commande cat filename où filename est le fichier vers lequel nous avons redirigé l output de notre programme (ici : filename est le fichier hello_out.txt ). 6

1.5.5 Exécuter hello world à la main Il est possible de compiler et d executer un program sans jobfile. Il suffit de pater les comandes suivantes : module load openmpi/1.4.3/gcc/4.6.1 mpicc hello.c -o hello mpirun -np 4./hello 7