a rchitecture des systÈmes distribuÉs sana younes dridi [email protected] 1

37
ARCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi [email protected] 1

Upload: lourdes-latour

Post on 03-Apr-2015

125 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

1

ARCHITECTURE DES SYSTÈMES DISTRIBUÉSSana Younes Dridi

[email protected]

Page 2: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

2

DÉFINITION ET OBJECTIFS Système d’exploitation distribuée: c'est un système qui

possède plusieurs processeurs coopérants Coût: plusieurs processeurs à bas prix Puissance de calcul et de stockage : aucune machine

centralisée ne peut rivaliser Performance (accélération) : via du calcul parallèle Adaptation : à des classes d'applications réelles

naturellement distribuées Fiabilité : résistance aux pannes logicielles ou matérielles

la panne d'un composant n'affecte qu'une machine et laisse les autres en état de fonctionnement

Extensibilité : croissance progressive selon le besoin Les systèmes centralisés permettent difficilement un

développement graduel si la charge de travail de l ’entreprise augmente et il faut remplacer un gros ordinateur par un autre plus puissant.

Page 3: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

3

AVANTAGES ET INCONVÉNIENTS

Avantages partage de données: de multiples utilisateurs

peuvent accéder à une base de données partagée partage de périphériques: de multiples utilisateurs

peuvent partager des périphériques chers tels que des imprimantes couleurs

souplesse (politiques de placement): permet d’exécuter un travail sur la machine la plus disponible

Inconvénients complexité: les systèmes distribuées sont plus

complexe que les systèmes centralisés logiciels : il faut un intergiciel (middleware) réseaux : saturation et délais sécurité : piratage

Page 4: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

4

EXEMPLES DE SYSTÈMES DISTRIBUÉS – INTRANET

Page 5: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

5

CONT.

Intranet = portion d'internet administrée séparément possède une frontière configurable pour

appliquer les politiques de sécurité locales souvent composé de plusieurs LAN (Local Area

Network) interconnectés un intranet est connecté à l’Internet via un «

router » de l ’intranet vers l ’extérieur de l ’extérieur vers l ’intranet

Un coupe-feu (firewall) sert à protéger un intranet en empêchant les messages non autorisés de sortir ou d’entrer

Page 6: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

6

ARCHITECTURE MATÉRIELLE

Système distribué: ensemble de processeurs interconnectés

Différentes architectures selon: le médium de communication la façon dont les processeurs communiquent

Page 7: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

7

CLASSIFICATION DE FLYNN (1972)

La classification de Flynn répartit les machines en quatre catégories selon :

Flot d’instruction : séquence d’instruction exécutée par la machine

Flot de données : séquence des données appelées par le flux

d’instructions

Page 8: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

8

ARCHITECTURE MATÉRIELLE

SISD : un seul flux d'instruction et un seul flux de données (ordinateurs centralisés), ordinateur séquentiel de Von Neumann.

SIMD : un seul flux d'instruction et de multiples flux de données (machines //, vectorielles), parallélisme au niveau de la mémoire

MISD : multiples flux d'instruction et un seul flux de données

MIMD : multiples flux d'instruction et de multiples flux de données. L'architecture parallèle la plus utilisée

Page 9: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

9

SISD

Tous les ordinateurs traditionnels monoprocesseurs: c'est-à-dire ceux qui n'ont qu'une seule UC

Page 10: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

10

SIMD Une seule unité de contrôle et plusieurs processeurs reliés par

réseau Chaque processeur exécute de façon synchrone la même

instruction mais travaille sur des données différentes Exemple: machines vectorielles possédant une UC qui décode

une instruction pour l'appliquer ensuite en parallèle à de nombreuses unités de données qui ont chacune leurs propres valeurs.

Quelques supercalculateurs appartiennent à cette catégorie SIMD.

Cas classique: additionner les coordonnées de 64 vecteurs indépendant

Page 11: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

11

MISD

Plusieurs flots d ’instructions et un seul flot de données.

Architecture pipeline Le traitement est exécuté en plusieurs

étapes sur une même donnée

Page 12: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

12

MIMD

Plusieurs flot d ’instructions et plusieurs flot de données

La communication entre les différents processeurs se fait soit par mémoire centrale partagée, soit par échange de messages

Tous les systèmes distribués étant du type MIMD

Page 13: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

13

MIMD

Critères de classifications: Selon l ’adressage: Mémoire partagée / mémoire

distincte Selon le type du réseau d’interconnexion: Bus /

Commuté

Réseau d'interconnexion

Adressage

Page 14: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

14

MULTIPROCESSEURS VSMULTICALCULATEURS

Les multiprocesseurs (MIMD à mémoire partagée) échangent leurs données à la vitesse de la mémoire partagée

Les multicalculateurs (MIMD à mémoire distribuée): chaque CPU a sa propre mémoire et son propre

système d'exploitation. il nécessite un middleware pour la

synchronisation et la communication.

Page 15: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

15

MULTIPROCESSEURS VSMULTICALCULATEURS

Page 16: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

16

MULTIPROCESSEURS

Les processeurs ont accès à la mémoire comme un espace d'adressage global.

Tout changement dans une case mémoire est vu par les autres CPU. La communication inter-CPU est effectuée via la mémoire globale

Un réseau d'interconnexion relie les composants mémoire et les processeurs;

Problème: la latence des accès mémoire; la coordination des accès à une variable

partagée

Page 17: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

17

MULTIPROCESSEURS SUR BUS Un certains nombre d'UC sont connectés à un bus La lecture (ou l'écriture) se fait en mettant l'adresse du mot

mémoire sur le bus et en déclenchant le signal approprié (Lecture ou Ecriture)

Accès séquentiel: un seul processeur à la fois peut accéder au bus, et donc à la mémoire: besoin de mémoire cache

Le cache conserve les mots mémoire auxquels on a récemment fait accès: 90%, si le cache est assez grand 64 KO à 1 Mo.

Page 18: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

18

MULTIPROCESSEURS SUR RÉSEAU (COMMUTÉS) La mémoire est divisée en modules que l'on relie aux

UC’s par une matrice de commutation (crossbar switch) Chaque UC et chaque module mémoire dispose d'une

ligne d'interconnexion. A chaque intersection, un élément électronique,

le nœud de commutation (crosspoint switch), peut être ouvert ou fermé par le matériel.

L'intérêt de cette matrice de commutation est que plusieurs UC peuvent accéder en même temps à la mémoire;

Page 19: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

19

MULTIPROCESSEURS SUR RÉSEAU (COMMUTÉS)

Processeurs reliés aux modules mémoire par un switch de type: crossbar (NxN nœuds de commutations) ou omega(log2(N) étage)

Page 20: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

20

MULTICALCULATEURS/MULTICOMPUTERS

Chaque UC est directement reliée à sa propre mémoire locale.

un réseau d'interconnexion gère les échanges entre UC.

Communication via messages Contrairement aux Multiprocesseurs, le délai de

transmission d'un message est long et le débit de transmission est faible.

Multicalculateurs à bus : même architecture que multiprocesseur à bus. Les calculateurs peuvent être des stations de travail, reliées par un réseau Local d'entreprise (LAN);

Multicalculateurs sur réseau: treillis ou hypercube

Page 21: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

21

MULTICALCULATEUR À BUS

Page 22: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

22

TOPOLOGIE EN TREILLIS

Page 23: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

23

TOPOLOGIE HYPERCUBE

Page 24: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

24

META CALCULATEUR

Multicalculateurs faiblement interconnectés au dessus d’ un réseau Internet (IP): Cluster (grappe)

Nœud = système unique ou multiprocesseur Nœuds peuvent être dans le même local ou

géographiquement séparés et connectés via un LAN Besoin d'une couche logiciel (intergiciel cluster)

Grilles: Infrastructures réparties composées d’un ensemble de machines hétérogènes et potentiellement distantes Milliers de machines (Grid5000), utilisées pour Calcul

intensif

Page 25: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

25

CLOUD COMPUTING

Le Cloud Computing, ou « informatique dans les nuages », est un système qui consiste à proposer les services informatiques sous forme de services à la demande, accessibles de n'importe où, n'importe quand et par n'importe qui.

Le cloud, nuage en anglais, symbolise Internet. On aurait donc mieux fait de parler d'Internet computing au lieu de cloud computing. Internet a toujours été représenté graphiquement par le symbole d'un nuage

Page 26: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

26

CONT.

Il n'y a pas de date-clé à laquelle nous puissions dire que le Cloud Computing est né !

Un réseau comme Internet est constitué d'une multitude de systèmes fournissant des services et des informations. Le Cloud Computing est dans cette lignée : un ensemble de services et de données consommables

Le cloud computing est un concept de déportation sur des serveurs distants des traitements informatiques traditionnellement localisés sur le poste client.

Page 27: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

27

CONT.

Il consiste en une interconnexion et une coopération de ressources informatiques, situées au sein d'une même entité ou dans diverses structures internes, externes ou mixtes, et dont le mode d'accès est basé sur les protocoles et standards Internet

Pour vulgariser, le Cloud Computing peut être perçu comme un système d'exploitation distribué sur des milliers de machines. Cet OS distribué, que l'on représente par ce fameux nuage, assure l'abstraction de l'infrastructure (matérielle, réseau, etc.) et a pour rôle d’héberger et d’exécuter des applications ou des services mais aussi de stocker des données

Page 28: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

28

CONT.

Il constitue une forme de sauvegarde de fichiers. Il permet, en outre, de travailler sur un même document depuis plusieurs postes de travail (plusieurs personnes ou un nomade en déplacement) de natures diverses (ordinateur portable ou fixe, tablette ou smartphone).

Son inconvénient est l'absence de contrôle du propriétaire des documents sur le stockage et même sur leur localisation géographique

Page 29: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

29

CONT.

Système réparti dans lequel les clients utilisent des services déportés sur un ou plusieurs serveurs distants, sans avoir à administrer ces services ni les machines qui les supportent

Les services proposés par le Cloud peuvent s’exécuter au sein d’architectures cluster

Trois modèles: IaaS (Infrastructure as a Service) PaaS (Platform as a Service) SaaS (Software as a Service)

Page 30: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

30

L’INFRASTRUCTURE COMME UN SERVICE (IAAS) L’infrastructure fournit des capacités de

calcul et de stockage. Les serveurs, systèmes de stockage,

commutateurs, routeurs et autres équipements, sont mis à disposition pour gérer une charge de travail demandée par les applications.

L'infrastructure comme un serviceou IaaS, permet de disposer d'une infrastructure à la demande, pouvant héberger et exécuter des applications, des services ou encore stocker des données.

Page 31: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

31

LA PLATEFORME COMME UN SERVICE (PAAS) La plate-forme comme un service est la

plate-forme d’exécution, de déploiement et de développement des applications.

fournit une plate-forme intégrant le système d'exploitation (OS), la couche middleware et celle applicative qui sont fournies ensuite au client comme un service.

Le PaaS met à disposition des environnements prêts à l’emploi, fonctionnels et performants.

Page 32: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

32

LE LOGICIEL COMME UN SERVICE (SAAS)

La dernière couche du SaaS est celle applicative mettant à disposition des applications complètes fournies à la demande. différents types d'applications: gestion des

ressources humaines, comptabilité, messagerie et d'autres applications métiers.

L'accès se fait en ligne et ne nécessite pas d'installation sur l'ordinateur local

Le déploiement, la maintenance, la supervision du bon fonctionnement de l'application et la sauvegarde des données, sont alors de la responsabilité du fournisseur de services

Page 33: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

33

AVANTAGES VS. INCONVÉNIENTS

Avantages de cloud: Un modèle « Utility », paiement à l’usage Déploiement rapide, « Juste à temps » et une

consommation à la demande Objectif de réduction des coûts (équipe de

maintenance) Abstraction de l'infrastructure

Inconvénients de cloud: Où sont vos données? Où sont vos serveurs ?

quelque part dans les nuages. Comment gérer la sécurité de vos serveurs ?

Comment gérer la protection des données personnelles ?

Page 34: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

34

CLOUD PRIVÉ ET PUBLIQUE

Cloud privé: Les ressources physiques peuvent être hébergées

dans une infrastructure propre à l'entreprise Le contrôle et le déploiement des applications sont

à la charge de l'entreprise. Cloud publique:

est un service IaaS, PaaS ou SaaS proposé et hébergé par un tiers.

Amazon, Google et Microsoft proposent un Cloud publique dans lequel n'importe quel particulier ou n’importe quelle entreprise peut y héberger ses applications, ses services ou ses données.

Pour les consommateurs, il n'y a aucune limite de capacité.

Page 35: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

35

CLOUD HYBRIDE

Utilisation de plusieurs Clouds, publiques ou privés.

Exemple: déporter nos applications vers un Cloud publique

qui consommera des données stockées et exposées dans un Cloud privé,

ou bien faire communiquer deux applications hébergées dans deux Clouds privés distincts,

ou encore consommer plusieurs services hébergés dans des Cloud publiques différents.

Page 36: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

36

CLOUD DE GOOGLE

En 2008, Google a lancé son Cloud public orienté pour les services Web offrant:

Une plate-forme (PaaS) nommée Google App Engine met à disposition sur les Clusters de serveurs de Google

appelés des « Sandbox » et dans lesquelles pourront s'exécuter des applications Java ou Python.

Ces sandbox sont réparties sur plusieurs noeuds de serveurs en fonction de la charge..

Une SAAS nommée google APP: Google met à disposition plusieurs applications

personnalisables par le client. Cette offre inclut un service de messagerie identique à Gmail

mettant à disposition 25 Gb d’espacede stockage par utilisateur, une application d'agenda

On y trouve aussi « Google Document », une suite bureautique Web permettant le stockage et l'édition de documents, de feuilles de calcul, de schémas ou de présentations.

Page 37: A RCHITECTURE DES SYSTÈMES DISTRIBUÉS Sana Younes Dridi younessana@yahoo.fr 1

37

EXEMPLE

Vous êtes sur Internet, vous voudriez envoyer une photo et utiliser les outils de retouche enligne pour la modifier, vous aurez alors participé à ce mouvement de cloud computing. Comment?

La photo sera probablement stockée sur un site qui utilise le service de virtualisation IaaS pour ses serveurs de données, celui de PaaS pour le logiciel qui vous permet de retoucher votre photo, et des applications SaaS que vous utiliserez pour accéder à votre compte email, ou votre site de réseau social pour publier votre photo et la partager avec vos amis