Architecture des systèmes
|
|
|
- Jacques Baptiste Brousseau
- il y a 10 ans
- Total affichages :
Transcription
1 LIG, 2/12/2010 Architecture des systèmes Avancées et défis Sacha Krakowiak Université de Grenoble 1
2 Architecture des systèmes! Architecture art de construire les édifices art de créer et dʼorganiser des formes en vue dʼune fonction, en présence de contraintes 2 2
3 Architecture des systèmes! Architecture art de construire les édifices art de créer et dʼorganiser des formes en vue dʼune fonction, en présence de contraintes Christopher Alexander, Notes on the Synthesis of Form, Harvard University Press,
4 Architecture des systèmes! Architecture art de construire les édifices art de créer et dʼorganiser des formes en vue dʼune fonction, en présence de contraintes! Architecture de systèmes informatiques un (ou des) modèle(s) décrivant la structure et le comportement dʼun système en termes dʼéléments et de relations entre ces éléments une (ou des) méthode(s) pour construire un système répondant à des spécifications Christopher Alexander, Notes on the Synthesis of Form, Harvard University Press,
5 Quelques outils de lʼarchitecte! Des (méta) principes Règles génériques pouvant se décliner sous diverses formes concrètes Abstraction (ex. : hiérarchie de machines abstraites) Séparation des préoccupations (ex. : séparation politique/mécanismes, interface/réalisation) Économie (ex. : optimiser le cas fréquent, contrôle «de bout en bout») 3 3
6 Quelques outils de lʼarchitecte! Des (méta) principes Règles génériques pouvant se décliner sous diverses formes concrètes Abstraction (ex. : hiérarchie de machines abstraites) Séparation des préoccupations (ex. : séparation politique/mécanismes, interface/réalisation) Économie (ex. : optimiser le cas fréquent, contrôle «de bout en bout»)! Des paradigmes Paradigme : démarche, mode dʼorganisation, structure applicable à une large classe de situations, et ayant valeur dʼexemple, dans les deux sens du terme illustration dʼune démarche modèle à suivre 3 3
7 Quelques paradigmes de lʼarchitecture des systèmes! Virtualisation concrétiser un objet idéal multiplier un objet réel 4 4
8 Quelques paradigmes de lʼarchitecture des systèmes! Virtualisation concrétiser un objet idéal multiplier un objet réel! Composition et décomposition séparer les préoccupations (conception individuelle / assemblage) réutiliser les efforts de conception et de réalisation 4 4
9 Quelques paradigmes de lʼarchitecture des systèmes! Virtualisation concrétiser un objet idéal multiplier un objet réel! Composition et décomposition séparer les préoccupations (conception individuelle / assemblage) réutiliser les efforts de conception et de réalisation! Auto-adaptation et réflexivité réagir au changement (prévu ou imprévu) optimiser des critères de qualité 4 4
10 Quelques paradigmes de lʼarchitecture des systèmes! Virtualisation concrétiser un objet idéal multiplier un objet réel! Composition et décomposition séparer les préoccupations (conception individuelle / assemblage) réutiliser les efforts de conception et de réalisation une préoccupation «transversale» Formalisation, preuve! Auto-adaptation et réflexivité réagir au changement (prévu ou imprévu) optimiser des critères de qualité 4 4
11 Les deux faces de la virtualisation! Ascendante (abstraction) Un outil de partage de ressources Création de ressources «hautes» Multiplexage de ressources «basses» interface existante interface exportée 5 5
12 Les deux faces de la virtualisation! Ascendante (abstraction) Un outil de partage de ressources Création de ressources «hautes» Multiplexage de ressources «basses» interface existante interface exportée! Descendante (raffinement) Un outil de conception De la spécification à la réalisation Hiérarchie de machines abstraites interface souhaitée interface existante 5 5
13 Les deux faces de la virtualisation! Ascendante (abstraction) Un outil de partage de ressources Création de ressources «hautes» Multiplexage de ressources «basses» Interface visible, réalisation cachée Transformation (ou non) dʼinterfaces Préservation dʼinvariants! Descendante (raffinement) Un outil de conception De la spécification à la réalisation Hiérarchie de machines abstraites interface existante interface souhaitée interface existante interface exportée 5 5
14 Quoi virtualiser, et pourquoi?! Virtualiser des ressources À lʼintérieur dʼun système dʼexploitation processeur => processus, mémoire physique => mémoire virtuelle écran => fenêtre, périphérique => flot dʼentrée-sortie, 6 6
15 Quoi virtualiser, et pourquoi?! Virtualiser des ressources À lʼintérieur dʼun système dʼexploitation processeur => processus, mémoire physique => mémoire virtuelle écran => fenêtre, périphérique => flot dʼentrée-sortie,! Virtualiser une machine Pour multiplexer les ressources Pour accueillir plusieurs systèmes dʼexploitation Pour assurer sécurité et tolérance aux fautes 6 6
16 Quoi virtualiser, et pourquoi?! Virtualiser des ressources À lʼintérieur dʼun système dʼexploitation processeur => processus, mémoire physique => mémoire virtuelle écran => fenêtre, périphérique => flot dʼentrée-sortie,! Virtualiser une machine Pour multiplexer les ressources Pour accueillir plusieurs systèmes dʼexploitation Pour assurer sécurité et tolérance aux fautes! Virtualiser un réseau Pour spécialiser une fonction (sécurité, performances, ) 6 6
17 Quoi virtualiser, et pourquoi?! Virtualiser des ressources À lʼintérieur dʼun système dʼexploitation processeur => processus, mémoire physique => mémoire virtuelle écran => fenêtre, périphérique => flot dʼentrée-sortie,! Virtualiser une machine Pour multiplexer les ressources Pour accueillir plusieurs systèmes dʼexploitation Pour assurer sécurité et tolérance aux fautes! Virtualiser un réseau Pour spécialiser une fonction (sécurité, performances, )! Virtualiser un environnement dʼexécution Langage de programmation (machine virtuelle dédiée au langage) Plate-forme (+ intergiciel (+ support dʼapplications)) 6 6
18 Brève histoire de la virtualisation Mémoire stable MV Smalltalk Hardware UNCOL P-code (MV Pascal) Abstraction Layer (HAL) JVM (MV Java) CLI (.Net) THE IBM S/38 Windows NT Mémoire virtuelle Processus (processeur virtuel) Machine virtuelle (IBM CP) VM/370 VMware DISCO (grappe virtuelle) Xen Cloud Computing Réseaux de recouvrement (overlay) 7 7
19 Virtualisation pour les langages! Solution mixte entre compilation et interprétation Code source Code source Compilateur Code objet Machine physique Interprète (machine virtuelle) Machine physique 8 8
20 Virtualisation pour les langages! Solution mixte entre compilation et interprétation Code source Compilateur Code objet Machine physique Code source Interprète (machine virtuelle) Machine physique Code source Compilateur Code intermédiaire Machine virtuelle Machine physique 8 8
21 Virtualisation pour les langages! Solution mixte entre compilation et interprétation Code source Compilateur Code objet Machine physique Code source Interprète (machine virtuelle) Machine physique Code source Compilateur Code intermédiaire Machine virtuelle Machine physique! Avantages Portabilité (un seul compilateur) Abstractions «sur mesure» adaptées à un (une classe de) langage(s) Objets, composants, méta-données, Fonctions étendues pour la MV Sécurité Mise au point, mesures Réflexivité Exemples : P-Code (Pascal) JVM (Java) CLI 8 8
22 Virtualisation dʼune ressource : la mémoire stable Read Write observation Disque physique [hypothèses de défaillance] B. W. Lampson and H. E. Sturgis. Crash Recovery in a Distributed Data Storage System, unpublished technical report, Xerox PARC, June 1979, 25 pp. 9 9
23 Virtualisation dʼune ressource : la mémoire stable CarefulPut CarefulGet Disque soigneux Read Write [invariants] élimine défaillances transitoires observation Disque physique [hypothèses de défaillance] B. W. Lampson and H. E. Sturgis. Crash Recovery in a Distributed Data Storage System, unpublished technical report, Xerox PARC, June 1979, 25 pp. 9 9
24 Virtualisation dʼune ressource : la mémoire stable Cleanup Disque stable Disque soigneux StableGet StablePut CarefulGet CarefulPut [invariants] Read Write [invariants] résiste aux défaillances non catastrophiques élimine défaillances transitoires observation Disque physique [hypothèses de défaillance] B. W. Lampson and H. E. Sturgis. Crash Recovery in a Distributed Data Storage System, unpublished technical report, Xerox PARC, June 1979, 25 pp. 9 9
25 Virtualisation dʼune ressource : la mémoire stable Cleanup Disque stable Disque soigneux StableGet StablePut CarefulGet CarefulPut [invariants] Read Write [invariants] résiste aux défaillances non catastrophiques élimine défaillances transitoires observation Disque physique [hypothèses de défaillance] B. B. W. W. Lampson, Atomic and H. Transactions, E. Sturgis. Crash in Distributed Recovery in Systems Architecture a Distributed Data Storage and Implementation, System, unpublished ed. Lampson, technical Paul, report, and Xerox Siegert, PARC, LNCS June 105, 1979, Springer, 25 pp. 1981, pp
26 Machines virtuelles «classiques» Interface machine physique MV1 MV2 Hyperviseur Machine physique 10 10
27 Machines virtuelles «classiques» Interface machine physique Appli. Appli. Appli. MV1 OS MV2 OS Hyperviseur Machine physique 10 10
28 Machines virtuelles «classiques»! Lʼhyperviseur, un super-os Présente une interface uniforme aux machines virtuelles (MVs) Gère (et protège) les ressources physiques Encapsule lʼétat interne des MVs Cʼest un composant critique Isolation Défaillances Sécurité Interface machine physique Appli. Appli. Appli. MV1 OS MV2 OS Hyperviseur Machine physique 10 10
29 Machines virtuelles «classiques»! Lʼhyperviseur, un super-os Présente une interface uniforme aux machines virtuelles (MVs) Gère (et protège) les ressources physiques Encapsule lʼétat interne des MVs Cʼest un composant critique Isolation Défaillances Sécurité Interface machine physique Appli. Appli. Appli. MV1 OS MV2 OS Hyperviseur James E. Smith, Ravi Nair, Virtual Machines, Morgan Kaufmann, 2005 Virtualization Technologies, IEEE Computer, May 2005 Machine physique 10 10
30 Machines virtuelles : comment çà marche Appli. Mode utilisateur OS Trap Instructions privilégiées Mode privilégié Machine physique 11 11
31 Machines virtuelles : comment çà marche Appli. Mode utilisateur Trap Instructions privilégiées OS Interruption Instructions privilégiées Mode privilégié Machine physique 11 11
32 Machines virtuelles : comment çà marche Appli. Appli. OS Mode utilisateur Instructions privilégiées OS Entrées-sorties Interruptions Mémoire virtuelle Trap Instructions privilégiées Interruption Instructions privilégiées Mode privilégié Hyperviseur Trap État MV1 État MV2 Machine physique Machine physique 11 11
33 Machines virtuelles : comment çà marche Appli. Appli. OS Mode utilisateur Instructions privilégiées OS Entrées-sorties Interruptions Mémoire virtuelle Trap Instructions privilégiées Interruption Instructions privilégiées Mode privilégié Hyperviseur Trap État MV1 État MV2 Machine physique Machine physique! Un problème Sur les machines actuelles (IA-32, etc.), lʼeffet de certaines instructions dépend du mode courant (privilégié ou utilisateur) De telles instructions ne sont pas virtualisables 11 11
34 Machines virtuelles Interface modifiée MV1 MV2 Hyperviseur Machine physique 12 12
35 Machines virtuelles Interface modifiée Appli. Appli. Appli. Unix MV1 modifié Windows MV2 modifié Hyperviseur Machine physique 12 12
36 Machines virtuelles! Comment contourner le problème des instructions multi-modes? La paravirtualisation : changer lʼinterface de lʼhyperviseur Remplacer les instructions non virtualisables Lʼinterface nʼest plus celle de la machine physique Les OS doivent donc être modifiés! En pratique, on ne modifie que la HAL (couche dʼabstraction) Interface modifiée Appli. Unix MV1 modifié HAL-U Appli. Appli. Hyperviseur Windows MV2 modifié HAL-W Machine physique 12 12
37 Machines virtuelles! Comment contourner le problème des instructions multi-modes? La paravirtualisation : changer lʼinterface de lʼhyperviseur Remplacer les instructions non virtualisables Lʼinterface nʼest plus celle de la machine physique Les OS doivent donc être modifiés! En pratique, on ne modifie que la HAL (couche dʼabstraction) Interface modifiée La traduction dynamique de code binaire : Remplacer à la volée les instructions non virtualisables Appli. Unix MV1 modifié HAL-U Appli. Appli. Hyperviseur Windows MV2 modifié HAL-W Machine physique 12 12
38 Machines virtuelles! Comment contourner le problème des instructions multi-modes? La paravirtualisation : changer lʼinterface de lʼhyperviseur Remplacer les instructions non virtualisables Lʼinterface nʼest plus celle de la machine physique Les OS doivent donc être modifiés! En pratique, on ne modifie que la HAL (couche dʼabstraction) Interface modifiée La traduction dynamique de code binaire : Remplacer à la volée les instructions non virtualisables Dans lʼavenir : Appli. Unix MV1 modifié HAL-U Les nouveaux processeurs sont conçus pour la virtualisation Appli. Appli. Hyperviseur Windows MV2 modifié HAL-W Machine physique 12 12
39 Grappes virtuelles UC UC UC UC UC UC UC UC Réseau dʼinterconnexion (+ mémoire partagée) niveau physique 13 13
40 Grappes virtuelles MV MV MV Application Application App App OS OS Système dʼexploitation Cellular Disco (Hyperviseur) UC UC UC UC UC UC UC UC Réseau dʼinterconnexion (+ mémoire partagée) niveau physique 13 13
41 Grappes virtuelles MV MV MV Application Application App App OS OS Système dʼexploitation limites de confinement des fautes Cellular Disco (Hyperviseur) UC UC UC UC UC UC UC UC Réseau dʼinterconnexion (+ mémoire partagée) niveau physique 13 13
42 Grappes virtuelles MV MV MV Application Application App App OS OS Système dʼexploitation limites de confinement des fautes Cellular Disco (Hyperviseur) UC UC UC UC UC UC UC UC Réseau dʼinterconnexion (+ mémoire partagée) niveau physique 13 13
43 Grappes virtuelles MV MV MV Application Application App App OS OS Système dʼexploitation limites de confinement des fautes Cellular Disco (Hyperviseur) UC UC UC UC UC UC UC UC Réseau dʼinterconnexion (+ mémoire partagée) niveau physique K. Govil, D. Teodosiu, Y. Huang, M. Rosenblum. Cellular Disco: Resource Management Using Virtual Clusters on Shared-Memory Multiprocessors, ACM Trans. on Computer Systems, 18(3), Aug
44 Réseaux de recouvrement 14 14
45 Réseaux de recouvrement! Objectifs Routage Fiabilité Sécurité, confidentialité Qualité de service Support dʼune plate-forme 14 14
46 Réseaux de recouvrement! Objectifs Routage Fiabilité Sécurité, confidentialité Qualité de service Support dʼune plate-forme! Exemples LʼInternet lui-même Tables de hachage réparti VPN Service spécialisé (distribution de contenu) 14 14
47 Cloud computing : lʼinformatique dans les nuages! Une vision ancienne «computing may someday be organized as a public utility just as the telephone system is a public utility» John McCarthy,
48 Cloud computing : lʼinformatique dans les nuages! Une vision ancienne «computing may someday be organized as a public utility just as the telephone system is a public utility»! en voie de réalisation? John McCarthy,
49 Cloud computing : lʼinformatique dans les nuages! Une vision ancienne «computing may someday be organized as a public utility just as the telephone system is a public utility»! en voie de réalisation?! Virtualisation à grande échelle John McCarthy, 1961 du matériel : Infrastructure as a Service (Amazon EC2) de lʼenvironnement dʼexécution : Platform as a Service (Microsoft Azure) du support dʼapplications : Software as a Service (Google Docs) 15 15
50 Cloud computing : lʼinformatique dans les nuages! Une vision ancienne «computing may someday be organized as a public utility just as the telephone system is a public utility»! en voie de réalisation?! Virtualisation à grande échelle John McCarthy, 1961 du matériel : Infrastructure as a Service (Amazon EC2) de lʼenvironnement dʼexécution : Platform as a Service (Microsoft Azure) du support dʼapplications : Software as a Service (Google Docs)! Un nouveau modèle économique mais des problèmes potentiels 15 15
51 Cloud computing : lʼinformatique dans les nuages! Une vision ancienne «computing may someday be organized as a public utility just as the telephone system is a public utility»! en voie de réalisation?! Virtualisation à grande échelle John McCarthy, 1961 du matériel : Infrastructure as a Service (Amazon EC2) de lʼenvironnement dʼexécution : Platform as a Service (Microsoft Azure) du support dʼapplications : Software as a Service (Google Docs)! Un nouveau modèle économique mais des problèmes potentiels! Un domaine de recherche ouvert [voir journée Clouds, ENS Lyon, 13 décembre 2010] 15 15
52 Questions sur les nuages! Quels sont les traits originaux? 16 16
53 Questions sur les nuages! Quels sont les traits originaux? «Élasticité» : le client paie ce quʼil consomme, facturation à grain fin Pour le client : économie, pas de risque de sur/sous-dimensionnement, capacité potentiellement illimitée Pour le fournisseur : gain (effet dʼéchelle, multiplexage statistique, rentabilisation des investissements) Réactivité aux variations de la demande D. Owens, Securing Elasticity in the Cloud, Comm. of the ACM, vol. 53, no 6, June
54 Questions sur les nuages! Quels sont les traits originaux? «Élasticité» : le client paie ce quʼil consomme, facturation à grain fin Pour le client : économie, pas de risque de sur/sous-dimensionnement, capacité potentiellement illimitée Pour le fournisseur : gain (effet dʼéchelle, multiplexage statistique, rentabilisation des investissements) Réactivité aux variations de la demande! Quels sont les risques et les difficultés? D. Owens, Securing Elasticity in the Cloud, Comm. of the ACM, vol. 53, no 6, June 2010 Limites techniques : évolution, passage à grande échelle, latence 16 16
55 Questions sur les nuages! Quels sont les traits originaux? «Élasticité» : le client paie ce quʼil consomme, facturation à grain fin Pour le client : économie, pas de risque de sur/sous-dimensionnement, capacité potentiellement illimitée Pour le fournisseur : gain (effet dʼéchelle, multiplexage statistique, rentabilisation des investissements) Réactivité aux variations de la demande! Quels sont les risques et les difficultés? D. Owens, Securing Elasticity in the Cloud, Comm. of the ACM, vol. 53, no 6, June 2010 Limites techniques : évolution, passage à grande échelle, latence Perte de contrôle sur les données (localisation, sécurité, ) 16 16
56 Questions sur les nuages! Quels sont les traits originaux? «Élasticité» : le client paie ce quʼil consomme, facturation à grain fin Pour le client : économie, pas de risque de sur/sous-dimensionnement, capacité potentiellement illimitée Pour le fournisseur : gain (effet dʼéchelle, multiplexage statistique, rentabilisation des investissements) Réactivité aux variations de la demande! Quels sont les risques et les difficultés? D. Owens, Securing Elasticity in the Cloud, Comm. of the ACM, vol. 53, no 6, June 2010 Limites techniques : évolution, passage à grande échelle, latence Perte de contrôle sur les données (localisation, sécurité, ) Pas de baisse significative du prix sans sacrifier les garanties de performances les garanties de disponibilité les garanties de sécurité D. Durkee, Why Cloud Computing Will Never Be Free, Comm. of the ACM, vol. 53, no 5, May
57 Virtualisation dans les systèmes embarqués! Contraintes spécifiques Complexité croissante des applications Maîtrise des performances Réduction de la taille de la base informatique de confiance 17 17
58 Virtualisation dans les systèmes embarqués! Contraintes spécifiques Complexité croissante des applications Maîtrise des performances Réduction de la taille de la base informatique de confiance! Un renouveau pour les micro-noyaux Le micro-noyau comme hyperviseur à bas niveau Des systèmes dʼexploitation «sur mesure» pour une application permet de réaliser des «appareils virtuels» (appareil + son OS spécifique) Les pilotes peuvent sortir de la base de confiance Les composants critiques peuvent être isolés dans des MV G. Heiser, The Role of Virtualization in Embedded Systems, Proc. First Workshop on Isolation and Integration in Embedded Systems (IIESʼ08), pp 11-16, April
59 Un micro-noyau vérifié 2010, S. Krakowiak Congrès Specif
60 Un micro-noyau vérifié! Une version du micro-noyau L4 Machine virtuelle donnant une image simplifiée du matériel! Difficultés Asynchronisme Gestion de la mémoire (pointeurs) Accès direct aux fonctions du matériel (MMU, ) Gerwin Klein et al., sel4: Formal Verification of an Operating-System Kernel, Communications of the ACM, vol. 53, no 6, pp , June , S. Krakowiak Congrès Specif
61 Un micro-noyau vérifié! Une version du micro-noyau L4 Machine virtuelle donnant une image simplifiée du matériel! Difficultés Asynchronisme Gestion de la mémoire (pointeurs) Accès direct aux fonctions du matériel (MMU, ) conception prototype Haskell Simulateur Isabelle/HOL spécification abstraite Gerwin Klein et al., sel4: Formal Verification of an Operating-System Kernel, Communications of the ACM, vol. 53, no 6, pp , June , S. Krakowiak Congrès Specif
62 Un micro-noyau vérifié! Une version du micro-noyau L4 Machine virtuelle donnant une image simplifiée du matériel! Difficultés Asynchronisme Gestion de la mémoire (pointeurs) Accès direct aux fonctions du matériel (MMU, ) conception prototype Haskell génération automatique Isabelle/HOL spécification abstraite spécification exécutable Gerwin Klein et al., sel4: Formal Verification of an Operating-System Kernel, Communications of the ACM, vol. 53, no 6, pp , June , S. Krakowiak Congrès Specif
63 Un micro-noyau vérifié! Une version du micro-noyau L4 Machine virtuelle donnant une image simplifiée du matériel! Difficultés Asynchronisme Gestion de la mémoire (pointeurs) Accès direct aux fonctions du matériel (MMU, ) conception prototype Haskell génération automatique Isabelle/HOL spécification abstraite spécification exécutable raffinement preuve Gerwin Klein et al., sel4: Formal Verification of an Operating-System Kernel, Communications of the ACM, vol. 53, no 6, pp , June , S. Krakowiak Congrès Specif
64 Un micro-noyau vérifié! Une version du micro-noyau L4 Machine virtuelle donnant une image simplifiée du matériel! Difficultés Asynchronisme Gestion de la mémoire (pointeurs) Accès direct aux fonctions du matériel (MMU, ) conception prototype Haskell génération automatique Isabelle/HOL spécification abstraite spécification exécutable code C optimisé raffinement preuve raffinement preuve Gerwin Klein et al., sel4: Formal Verification of an Operating-System Kernel, Communications of the ACM, vol. 53, no 6, pp , June , S. Krakowiak Congrès Specif
65 Un micro-noyau vérifié! Une version du micro-noyau L4 Machine virtuelle donnant une image simplifiée du matériel! Difficultés Asynchronisme Gestion de la mémoire (pointeurs) Accès direct aux fonctions du matériel (MMU, )! sel4, base dʼun microviseur OKL4 (Open Kernel Labs) Base installée : un milliard conception prototype Haskell génération automatique Isabelle/HOL spécification abstraite spécification exécutable code C optimisé raffinement preuve raffinement preuve Gerwin Klein et al., sel4: Formal Verification of an Operating-System Kernel, Communications of the ACM, vol. 53, no 6, pp , June , S. Krakowiak Congrès Specif
66 Avancées et défis pour la virtualisation! Renaissance et extension du champ de la virtualisation Des nuages aux systèmes embarqués Plate-formes et applications dématérialisés Portables dʼun support à un autre, dʼun lieu à un autre Outil de gestion globale des ressources Support dʼexpérimentation 19 19
67 Avancées et défis pour la virtualisation! Renaissance et extension du champ de la virtualisation! Défis Des nuages aux systèmes embarqués Plate-formes et applications dématérialisés Portables dʼun support à un autre, dʼun lieu à un autre Outil de gestion globale des ressources Support dʼexpérimentation Pour lʼutilisateur Contrôle sur le management et les données Garanties de disponibilité et de sécurité Pour le concepteur Modélisation et vérification des hyperviseurs Administration automatique des grandes infrastructures Gestion dʼenvironnements virtuels multiples 19 19
68 Composition (et décomposition)! Un objectif dʼapparence simple Composer un système à partir de pièces élémentaires Éléments réutilisables et remplaçables ( échange standard ) Interface visible, réalisation cachée M. D. McIlroy (1968) Mass Produced Software Components, in P. Naur and B. Randell, eds., Software Engineering, NATO Science Committee 20 20
69 Composition (et décomposition)! Un objectif dʼapparence simple Composer un système à partir de pièces élémentaires Éléments réutilisables et remplaçables ( échange standard ) Interface visible, réalisation cachée! mais une route semée dʼembûches Conceptuelles Modèle(s) Expression dʼune description globale Garanties Pratiques Configuration et déploiement Gestion de lʼévolution Infrastructures M. D. McIlroy (1968) Mass Produced Software Components, in P. Naur and B. Randell, eds., Software Engineering, NATO Science Committee 20 20
70 Propriétés de la composition! Composabilité Les propriétés de chaque composant sont préservées dans le système composé 21 21
71 Propriétés de la composition! Composabilité Les propriétés de chaque composant sont préservées dans le système composé Séparation interfaceréalisation Respect de règles de «bon assemblage» 21 21
72 Propriétés de la composition! Composabilité Les propriétés de chaque composant sont préservées dans le système composé Séparation interfaceréalisation Respect de règles de «bon assemblage»! Compositionnalité Les propriétés du système composé se déduisent de celles des composants et des règles dʼassemblage 21 21
73 Propriétés de la composition! Composabilité Les propriétés de chaque composant sont préservées dans le système composé Séparation interfaceréalisation Respect de règles de «bon assemblage» Beaucoup plus difficile!! Compositionnalité Les propriétés du système composé se déduisent de celles des composants et des règles dʼassemblage Modèle formel de composition Expression de la sémantique Garanties à lʼexécution 21 21
74 Deux styles de composition! Dirigé par le flot dʼexécution Méthodes Interfaces Données (encapsulées) Dérivé de modules, objets Divers composants industriels Exemples : OpenCOM, Fractal, OSGi, 22 22
75 Deux styles de composition! Dirigé par le flot dʼexécution Méthodes Interfaces Données (encapsulées)! Dirigé par le flot de données État, transitions Portes (entrée, sortie) Dérivé de modules, objets Divers composants industriels Exemples : OpenCOM, Fractal, OSGi, Flots et filtres Événements Systèmes réactifs Exemples : Ptolemy, Bip, 22 22
76 Deux styles de composition! Dirigé par le flot dʼexécution Méthodes Interfaces Données (encapsulées)! Dirigé par le flot de données État, transitions Portes (entrée, sortie) Les deux peuvent coexister Dérivé de modules, objets Divers composants industriels Exemples : OpenCOM, Fractal, OSGi, Flots et filtres Événements Systèmes réactifs Exemples : Ptolemy, Bip, Propriétés communes Description globale Préservation à lʼexécution Indépendance par rapport au langage Dépendances explicites 22 22
77 Brève histoire de la (dé)composition Modèles de composants Simula-67 Objets Smalltalk-80 RM-ODP fabrique de Types Modula liaison abstraits Mesa Clu Ada Fractal, Koala, Ptolemy, UML 2, BIP, 1960 Flot de Acteurs Langages Systèmes données pipes Unix synchrones hybrides subroutines procédures mass-produced software components information hiding programming in the large RPC MILs ADLs SOM COM, DCOM,.Net OSGi Conic, Darwin, EJB Services Web Wright, Rapide, ACME, ADML, ArchJava software architecture: an emerging discipline ADLs dynamiques Configuration formalisation types, preuves 23 23
78 Architecture de systèmes composés (1) Interface Connecteur Composant Composant Composant 24 24
79 Architecture de systèmes composés (1) Interface Connecteur Composant Composant Configuration Composant 24 24
80 Architecture de systèmes composés (1) Interface Connecteur Composant Composant fournie requise Composant flot entrée flot sortie Configuration 24 24
81 Architecture de systèmes composés (1) Interface Connecteur Composant Composant fournie requise Composant flot entrée flot sortie Configuration! Flot dʼexécution ou flot de données Similitudes Composants matériels ou logiciels Une configuration est un composant Les interfaces sont typées Différences Rôle des interfaces, ou ports Modèle dʼinteraction (séquentiel, parallèle) Synchrone, rendez-vous, événements, etc
82 Architecture de systèmes composés (1) Interface Connecteur Composant Composant fournie requise Composant flot entrée flot sortie Configuration! Flot dʼexécution ou flot de données Similitudes Composants matériels ou logiciels Une configuration est un composant Les interfaces sont typées Différences Rôle des interfaces, ou ports Modèle dʼinteraction (séquentiel, parallèle) Synchrone, rendez-vous, événements, etc. Description globale Implicite (dépendances) Explicite (Architecture Description Language, ADL) Rôle des connecteurs Assurer la liaison Opération complexe en système réparti Gérer lʼinteraction En particulier dans les modèles parallèles 24 24
83 Architecture de systèmes composés (2)! Cycle de vie Configuration Déploiement Exécution Reconfiguration 25 25
84 Architecture de systèmes composés (2)! Cycle de vie Configuration Déploiement Exécution Reconfiguration! Réflexivité Examiner son propre état («introspection») Agir sur son propre état («intercession») Méta-niveau et connexion causale Interface de management Exemples Rainbow, OpenCOM, Fractal, Interface de management méta-niveau niveau de base 25 25
85 Formalisation de la composition : trois exemples! Déterminer la validité de la construction dʼun système composé (composabilité) Configuration dʼun assemblage de composants 26 26
86 Formalisation de la composition : trois exemples! Déterminer la validité de la construction dʼun système composé (composabilité) Configuration dʼun assemblage de composants! Déterminer la validité de lʼexécution dʼun système composé (compositionnalité) Applications du typage 26 26
87 Formalisation de la composition : trois exemples! Déterminer la validité de la construction dʼun système composé (composabilité) Configuration dʼun assemblage de composants! Déterminer la validité de lʼexécution dʼun système composé (compositionnalité) Applications du typage! Déterminer la validité de lʼévolution dʼun système composé Reconfiguration 26 26
88 Un problème de configuration! Source : EDOS (Environment for the development & Distribution of Open Source Software) Projet de recherche collaborative du 6ème programme-cadre européen Distribution de logiciel libre, constitué de packages Description implicite, par un ensemble de relations Référence :
89 Un problème de configuration! Source : EDOS (Environment for the development & Distribution of Open Source Software) Projet de recherche collaborative du 6ème programme-cadre européen Distribution de logiciel libre, constitué de packages Description implicite, par un ensemble de relations! Gestion des relations entre packages Dépendance : spécifie des packages (y compris numéros de version) qui doivent être présents pour faire fonctionner le package courant Conflit : spécifie des packages qui ne peuvent pas coexister avec le package courant Pré-dépendance : spécifie des packages qui doivent déjà être présents pour pouvoir déployer le package courant Taille typique : packages, relations Référence :
90 Formalisation de lʼinstallabilité dans EDOS! chaque package p (version v) est désigné par une variable booléenne p v! chaque contrainte sur une version (e.g., v > 4.0 ) est traduite dans la disjonction des packages qui satisfont cette contrainte, e.g., p v1! p v2!! chaque dépendence est interprétée comme une implication, e.g., aterm => libc6 " (libce6! xlibs) "! chaque conflit entre des packages (soit a et b) est interprétée comme la formule (a " b) 28 28
91 Formalisation de lʼinstallabilité dans EDOS! chaque package p (version v) est désigné par une variable booléenne p v! chaque contrainte sur une version (e.g., v > 4.0 ) est traduite dans la disjonction des packages qui satisfont cette contrainte, e.g., p v1! p v2!! chaque dépendence est interprétée comme une implication, e.g., aterm => libc6 " (libce6! xlibs) "! chaque conflit entre des packages (soit a et b) est interprétée comme la formule (a " b) Alors un package p v est installable ssi il existe une affectation de valeurs qui rende p v VRAI et qui satisfasse la conjonction de toutes les implications logiques introduites par les dépendances et les conflits
92 Formalisation de lʼinstallabilité dans EDOS! chaque package p (version v) est désigné par une variable booléenne p v! chaque contrainte sur une version (e.g., v > 4.0 ) est traduite dans la disjonction des packages qui satisfont cette contrainte, e.g., p v1! p v2!! chaque dépendence est interprétée comme une implication, e.g., aterm => libc6 " (libce6! xlibs) "! chaque conflit entre des packages (soit a et b) est interprétée comme la formule (a " b) Alors un package p v est installable ssi il existe une affectation de valeurs qui rende p v VRAI et qui satisfasse la conjonction de toutes les implications logiques introduites par les dépendances et les conflits. Lʼinstallabilité des packages est équivalente à la satisfaisabilité booléenne (SAT), problème NP-complet. Dans les situations pratiques, il est néanmoins traitable
93 Compositionnalité dans Dream Dream : canevas pour la construction dʼintergiciels de communication Un message est une séquence de champs nommés. Exemple [Nom: "test"] [TS: 10] [IP: ] Un message circule entre des composants qui le traitent Exemple de traitements : ajouter, supprimer, consulter un champ Opérations interdites (provoquent une erreur à lʼexécution) Ajouter un champ présent, supprimer ou consulter un champ non présent M. Leclercq, V. Quéma, J.-B. Stefani, "DREAM: A Component Framework for Constructing Resource- Aware, Configurable Middleware," Distributed Systems Online, IEEE, 6:9, Sept
94 Compositionnalité dans Dream Dream : canevas pour la construction dʼintergiciels de communication Un message est une séquence de champs nommés. Exemple [Nom: "test"] [TS: 10] [IP: ] Un message circule entre des composants qui le traitent Exemple de traitements : ajouter, supprimer, consulter un champ Opérations interdites (provoquent une erreur à lʼexécution) Ajouter un champ présent, supprimer ou consulter un champ non présent (X) Duplicator (X) (X) canaux ReadTS AddTS M. Leclercq, V. Quéma, J.-B. Stefani, "DREAM: A Component Framework for Constructing Resource- Aware, Configurable Middleware," Distributed Systems Online, IEEE, 6:9, Sept
95 Compositionnalité dans Dream Dream : canevas pour la construction dʼintergiciels de communication Un message est une séquence de champs nommés. Exemple [Nom: "test"] [TS: 10] [IP: ] Un message circule entre des composants qui le traitent Exemple de traitements : ajouter, supprimer, consulter un champ Opérations interdites (provoquent une erreur à lʼexécution) Ajouter un champ présent, supprimer ou consulter un champ non présent (X) Duplicator (X) (X) canaux ReadTS AddTS erreur si TS absent de X erreur si TS présent dans X M. Leclercq, V. Quéma, J.-B. Stefani, "DREAM: A Component Framework for Constructing Resource- Aware, Configurable Middleware," Distributed Systems Online, IEEE, 6:9, Sept
96 Compositionnalité dans Dream Dream : canevas pour la construction dʼintergiciels de communication Un message est une séquence de champs nommés. Exemple [Nom: "test"] [TS: 10] [IP: ] Un message circule entre des composants qui le traitent Exemple de traitements : ajouter, supprimer, consulter un champ Opérations interdites (provoquent une erreur à lʼexécution) Ajouter un champ présent, supprimer ou consulter un champ non présent (X) Duplicator (X) (X) canaux ReadTS AddTS erreur si TS absent de X erreur si TS présent dans X Les types Java ne permettent pas ces vérifications M. Leclercq, V. Quéma, J.-B. Stefani, "DREAM: A Component Framework for Constructing Resource- Aware, Configurable Middleware," Distributed Systems Online, IEEE, 6:9, Sept
97 Types Dream! Exemple (tschunk: pre(ts); Y) (tschunk: pre(ts); Y) (X) Duplicator (X) (X) canaux ReadTS abs ou liste de champs (tschunk: abs(ts); Z) (tschunk: pre(ts); Z) AddTS 30 30
98 Types Dream! Exemple (tschunk: pre(ts); Y) (tschunk: pre(ts); Y) (X) Duplicator (X) (X) canaux ReadTS abs ou liste de champs (tschunk: abs(ts); Z) Repose sur un nouveau calcul de processus, avec un algorithme dʼinférence de types AddTS (tschunk: pre(ts); Z) Typing Component-Based Communication Systems. M. Lienhardt, C. A. Mezzina, A. Schmitt, and J.-B. Stefani. In Proc. 11th Formal Methods for Open Object-Based Distributed Systems (FMOODS) & 29th Formal Techniques for Networked and Distributed Systems (FORTE), June
99 Types Dream! Exemple (tschunk: pre(ts); Y) (tschunk: pre(ts); Y) (X) Duplicator (X) (X) canaux ReadTS abs ou liste de champs (tschunk: abs(ts); Z) Repose sur un nouveau calcul de processus, avec un algorithme dʼinférence de types AddTS (tschunk: pre(ts); Z) Il faut résoudre (X) = (tschunk: pre(ts); Y) (X) = (tschunk: abs(ts); Z) ce qui est impossible Le système nʼest pas typable, et aura une erreur à lʼexécution Typing Component-Based Communication Systems. M. Lienhardt, C. A. Mezzina, A. Schmitt, and J.-B. Stefani. In Proc. 11th Formal Methods for Open Object-Based Distributed Systems (FMOODS) & 29th Formal Techniques for Networked and Distributed Systems (FORTE), June
100 Reconfiguration (1)! Quʼest-ce que la reconfiguration (dynamique)? Changement de la composition et/ou de la structure dʼun système en cours dʼexécution ajouter/supprimer un composant, déplacer un composant, changer des liaisons, modifier des attributs, 31 31
101 Reconfiguration (1)! Quʼest-ce que la reconfiguration (dynamique)? Changement de la composition et/ou de la structure dʼun système en cours dʼexécution ajouter/supprimer un composant, déplacer un composant, changer des liaisons, modifier des attributs,! Pourquoi reconfigurer un système? Maintenance, optimisation, insertion de sondes de mesure, réaction aux défaillances, surcharges, attaques, Opération naturelle pour les mobiles, réseaux de capteurs, etc
102 Reconfiguration (1)! Quʼest-ce que la reconfiguration (dynamique)? Changement de la composition et/ou de la structure dʼun système en cours dʼexécution ajouter/supprimer un composant, déplacer un composant, changer des liaisons, modifier des attributs,! Pourquoi reconfigurer un système? Maintenance, optimisation, insertion de sondes de mesure, réaction aux défaillances, surcharges, attaques, Opération naturelle pour les mobiles, réseaux de capteurs, etc.! Quelques bonnes pratiques Reconfiguration dirigée par lʼarchitecture Utilisation de la réflexivité Maintien de la cohérence Préservation dʼinvariants Perturbation minimale Interface de management méta-niveau niveau de base 31 31
103 Reconfiguration (2)! Spécification dʼinvariants Architecturaux : contraintes sur la structure Pas de circuit, pas de partage de composant, contraintes spécifiques à lʼapplication Comportementaux : contraintes sur lʼétat Cohérence de lʼétat, résistance aux pannes 32 32
104 Reconfiguration (2)! Spécification dʼinvariants Architecturaux : contraintes sur la structure Pas de circuit, pas de partage de composant, contraintes spécifiques à lʼapplication Comportementaux : contraintes sur lʼétat Cohérence de lʼétat, résistance aux pannes! Utilisation de la réflexivité Réification de lʼarchitecture Inspection et modification de lʼétat 32 32
105 Reconfiguration (2)! Spécification dʼinvariants Architecturaux : contraintes sur la structure Pas de circuit, pas de partage de composant, contraintes spécifiques à lʼapplication Comportementaux : contraintes sur lʼétat Cohérence de lʼétat, résistance aux pannes! Utilisation de la réflexivité Réification de lʼarchitecture Inspection et modification de lʼétat! Mécanique de la reconfiguration Détection de quiescence Interposition dynamique Remplacement de composant 32 32
106 Mise en œuvre de la reconfiguration : exemple! Un modèle de composants Fractal, fournit la réflexivité (interfaces de management) M. Léger, Th. Ledoux, Th. Coupaye. Reliable Dynamic Reconfigurations in a Reflective Component Model, Proc. CBSE 2010, LNCS 6092, pp , Springer Verlag 33 33
107 Mise en œuvre de la reconfiguration : exemple! Un modèle de composants Fractal, fournit la réflexivité (interfaces de management)! Un modèle pour lʼexpression des règles dʼassemblage Relations entre interfaces, attributs, composants ex : un composant possède une interface, une interface est liée à une interface, un composant contient un composant, Contraintes dʼintégrité : prédicats sur les éléments et relations M. Léger, Th. Ledoux, Th. Coupaye. Reliable Dynamic Reconfigurations in a Reflective Component Model, Proc. CBSE 2010, LNCS 6092, pp , Springer Verlag 33 33
108 Mise en œuvre de la reconfiguration : exemple! Un modèle de composants Fractal, fournit la réflexivité (interfaces de management)! Un modèle pour lʼexpression des règles dʼassemblage Relations entre interfaces, attributs, composants ex : un composant possède une interface, une interface est liée à une interface, un composant contient un composant, Contraintes dʼintégrité : prédicats sur les éléments et relations! Un outil de vérification des contraintes dʼintégrité Cohérence globale : Alloy (langage déclaratif + solveur SAT) Réalisation en Fractal : FPath M. Léger, Th. Ledoux, Th. Coupaye. Reliable Dynamic Reconfigurations in a Reflective Component Model, Proc. CBSE 2010, LNCS 6092, pp , Springer Verlag 33 33
109 Mise en œuvre de la reconfiguration : exemple! Un modèle de composants Fractal, fournit la réflexivité (interfaces de management)! Un modèle pour lʼexpression des règles dʼassemblage Relations entre interfaces, attributs, composants ex : un composant possède une interface, une interface est liée à une interface, un composant contient un composant, Contraintes dʼintégrité : prédicats sur les éléments et relations! Un outil de vérification des contraintes dʼintégrité Cohérence globale : Alloy (langage déclaratif + solveur SAT) Réalisation en Fractal : FPath! Une exécution transactionnelle Opérations via FScript (action sur interfaces de management) Garanties ACID M. Léger, Th. Ledoux, Th. Coupaye. Reliable Dynamic Reconfigurations in a Reflective Component Model, Proc. CBSE 2010, LNCS 6092, pp , Springer Verlag 33 33
110 Avancées et défis pour la composition! Avancées Composants, architectures logicielles Patrons et canevas pour la composition Début de formalisation 34 34
111 Avancées et défis pour la composition! Avancées! Défis Composants, architectures logicielles Patrons et canevas pour la composition Début de formalisation Bases formelles Multiplicité de modèles et des langages peut-être inévitable Intégration matériel-logiciel Compositionnalité en particulier : performances, synchronisation, temps physique Systèmes à grande échelle X 34 34
112 Systèmes auto-adaptables! Pourquoi des systèmes auto-adaptables? Maintenir lʼintégrité et la qualité de service dʼun système dans un environnement variable et imprévisible Besoins Charge Défaillances Attaques 35 35
113 Systèmes auto-adaptables! Pourquoi des systèmes auto-adaptables? Maintenir lʼintégrité et la qualité de service dʼun système dans un environnement variable et imprévisible Besoins Charge Défaillances Attaques! Approches de lʼauto-adaptation Centralisée Comportement global imposé Modèle : automatique, boucle de commande Décentralisée Comportement global résultant dʼinteractions locales Modèle : systèmes biologiques 35 35
114 Brève histoire des systèmes auto-adaptables Contrôle dʼadmission Tolérance aux fautes «Autonomic Adaptation computing» Systèmes dirigée par Régulateur réflexifs lʼarchitecture de charge Ordinateurs Programmes Programmation reconfigurables par aspects Application des reconfigurables méthodes de lʼautomatique 2010 Aloha Routage adaptatif Ethernet QoS dans les réseaux Systèmes multi-agents «Colonies de fourmis» Algorithmes épidémiques Gestion de lʼénergie Réseaux pair à pair Réseaux de capteurs 36
115 Auto-adaptation par rétroaction Comportement souhaité capteurs Système de commande Analyse, Décision Action Système commandé actionneurs 37 37
116 Auto-adaptation par rétroaction Comportement souhaité capteurs Système de commande Analyse, Décision Action Modèle du système commandé Modèle de la charge charge Système commandé actionneurs 37 37
117 Auto-adaptation par rétroaction Comportement souhaité capteurs Système de commande Analyse, Décision Action Modèle du système commandé Modèle de la charge charge Système commandé actionneurs Pour un système informatique, comment définir Le comportement souhaité? Les capteurs? Les actionneurs? Les modèles? La stratégie de décision? 37 37
118 Auto-adaptation par rétroaction Comportement souhaité Système de commande Modèle du système commandé capteurs Analyse, Décision Action Modèle de la charge Domaines dʼaction Qualité de service charge Système commandé actionneurs Tolérance aux fautes Sécurité Configuration Pour un système informatique, comment définir Le comportement souhaité? Les capteurs? Les actionneurs? Les modèles? La stratégie de décision? 37 37
119 Un exemple : auto-adaptation pour la QoS! Objectifs Contrat (Service Level Agreement), décliné en sous-objectifs (SLO) Exemple : 95% des requêtes sont servies en moins de 5 s Réduction du coût 38 38
120 Un exemple : auto-adaptation pour la QoS! Objectifs Contrat (Service Level Agreement), décliné en sous-objectifs (SLO) Exemple : 95% des requêtes sont servies en moins de 5 s Réduction du coût! Capteurs Problème : modélisation de la charge Problème : les paramètres de QoS sont difficiles à capturer Plus accessibles : lʼoccupation des ressources 38 38
121 Un exemple : auto-adaptation pour la QoS! Objectifs Contrat (Service Level Agreement), décliné en sous-objectifs (SLO) Exemple : 95% des requêtes sont servies en moins de 5 s Réduction du coût! Capteurs Problème : modélisation de la charge Problème : les paramètres de QoS sont difficiles à capturer Plus accessibles : lʼoccupation des ressources! Actionneurs Agir sur la demande : le contrôle dʼadmission Autre idée : applications auto-adaptables Agir sur lʼoffre : allocation de ressources (physiques, virtuelles) 38 38
122 Un exemple : auto-adaptation pour la QoS! Objectifs Contrat (Service Level Agreement), décliné en sous-objectifs (SLO) Exemple : 95% des requêtes sont servies en moins de 5 s Réduction du coût! Capteurs Problème : modélisation de la charge Problème : les paramètres de QoS sont difficiles à capturer Plus accessibles : lʼoccupation des ressources! Actionneurs Agir sur la demande : le contrôle dʼadmission Autre idée : applications auto-adaptables Agir sur lʼoffre : allocation de ressources (physiques, virtuelles)! Stratégie Seuils Commande proportionnelle / intégrale ] combinaison 38 38
123 Un exemple ancien avec contrôle dʼadmission taux dʼactivité CPU # # et n mesurés sur dernier intervalle dʼobservation (t- t, t) 100% Charge normale Sous-charge Surcharge a) modèle simple de comportement du système n Nombre de remplacements de page 39
124 Un exemple ancien avec contrôle dʼadmission taux dʼactivité CPU # # et n mesurés sur dernier intervalle dʼobservation (t- t, t) 100% Charge normale Sous-charge Surcharge a) modèle simple de comportement du système n Nombre de remplacements de page every t do if (overload) move one process from ready set to waiting set else if (underload and (waiting set $)) $ admit one waiting process to ready set 39
125 Un exemple ancien avec contrôle dʼadmission taux dʼactivité CPU # # et n mesurés sur dernier intervalle dʼobservation (t- t, t) Prévention de lʼécroulement : expériences IBM M44/44X (1968) 100% Charge normale B. Brawn, F. Gustavson. Program behavior in a paging environment. Proc. AFIPS FJCC, pp (1968) Sous-charge Surcharge a) modèle simple de comportement du système n Nombre de remplacements de page every t do if (overload) move one process from ready set to waiting set else if (underload and (waiting set $)) $ admit one waiting process to ready set Temps dʼexécution (secondes) sans contrôle dʼadmission avec contrôle dʼadmission Nombre de processus actifs b) effet de la limitation de charge par contrôle dʼadmission 39
126 Auto-adaptation pour la QoS : exemple (1) clients Web Application Stockage actionneurs capteurs commande Fournisseur Nuage 40 40
127 Auto-adaptation pour la QoS : exemple (1) clients Web Application Stockage actionneurs capteurs commande Fournisseur Nuage Exemple : commande de lʼétage «stockage de données» Allocation de serveurs à partir dʼun fournisseur de nuages Objectif : garantir le temps de réponse en présence de pics de charge Expérience sur Hadoop Distributed File System H. C. Lim, S. Babu, J. S. Chase. Automated Control for Elastic Storage, International Conf. On Autonomic Computing (ICAC), June 7-11,
128 Auto-adaptation pour la QoS : exemple (2)! Organisation de la commande Pour lʼallocation de serveurs actionneur : allouer/libérer des serveurs (interface du fournisseur) capteur : taux dʼutilisation du CPU (bien corrélé avec temps de réponse) stratégie : commande intégrale avec seuil (stabilité) 41 41
129 Auto-adaptation pour la QoS : exemple (2)! Organisation de la commande Pour lʼallocation de serveurs actionneur : allouer/libérer des serveurs (interface du fournisseur) capteur : taux dʼutilisation du CPU (bien corrélé avec temps de réponse) stratégie : commande intégrale avec seuil (stabilité) Pour la reconfiguration de lʼétage stockage (répartition de données) actionneur : fraction de bande passante allouée à la reconfiguration (qui interfère avec le traitement) capteur : temps nécessaire en fonction de la taille + impact de la reconfiguration sur le temps de réponse 41 41
130 Auto-adaptation pour la QoS : exemple (2)! Organisation de la commande Pour lʼallocation de serveurs actionneur : allouer/libérer des serveurs (interface du fournisseur) capteur : taux dʼutilisation du CPU (bien corrélé avec temps de réponse) stratégie : commande intégrale avec seuil (stabilité) Pour la reconfiguration de lʼétage stockage (répartition de données) actionneur : fraction de bande passante allouée à la reconfiguration (qui interfère avec le traitement) capteur : temps nécessaire en fonction de la taille + impact de la reconfiguration sur le temps de réponse Coordination entre les deux commandes ci-dessus but : eviter sur- ou sous-allocations ; éviter les oscillations moyen : machine à états assurant lʼalternance entre les deux commandes avec temporisation 41 41
131 Auto-adaptation pour la QoS : exemple (3) ENTATION! Résultats tone Guest Application Très bonne réactivité à un pic de charge modified and configured Cloudstone to run with front-end application server tier, PostgreSQL as or structured data, and HDFS as a distributed stort objects such as PDF documents and image files. (a posteriori) Bonne ing an HDFS class abstraction to Cloudstone to DFS storage corrélation APIs. We alsoentre added new temps paramestone s configuration de réponse file so that et users utilisation can easily tch between different file systems without having ource code. CPU In all, this involved adding 200 lines stone. The experiments use a block size in the 0KB, which is the maximum size of binary files udstone. The HDFS replica count is set to three ctices from production deployments. tributes the content objects (files) across an elasge nodes, called datanodes. A namenode tracks g replica counts and locations for each file. implementation, HDFS does not ensure that storest-balanced, since its internal policy isbasedon ty. However, Cloudstone s workload generator is t structured data and content objects are accessed ibution, which naturally balances requests across es. ified HDFS to expose the rebalancer s bandwidth ctuator to the external controller. We created an he HDFS namenode that notifies all HDFS datan Time (s) x 10 4 CPU Utilization (%) WH CPU Utilization Target (20%) (a) Average CPU utilization of the HDFS datanodes with static provisioning CPU Utilization (%) Rebalance +9 Storage Nodes WH CPU Utilization y h (20%) Time (s) x 10 4 y l Response Time (s) Response Time Target (3s) Time (s) x 10 4 (b) Response time of the Cloudstone application with static provisioning Response Time (s) Response Time Target (3s) Time (s) x 10 4 (c) Average CPU utilization of (d) Response time of the Cloudstone application with dynamic the HDFS datanodes with dynamic provisioning provisioning Figure 6: The performance of Cloudstone with static allocation (a,b) and our control policy (c,d), under a 10-fold increase in workload volume. The time periods with high volume of workload 42 is labeled as WH. 42
132 Auto-adaptation pour la QoS : exemple (3) ENTATION! Résultats tone Guest Application Très bonne réactivité à un pic de charge modified and configured Cloudstone to run with front-end application server tier, PostgreSQL as or structured data, and HDFS as a distributed stort objects such as PDF documents and image files. (a posteriori) Bonne ing an HDFS class abstraction to Cloudstone to DFS storage corrélation APIs. We alsoentre added new temps paramestone s configuration de réponse file so that et users utilisation can easily tch between different file systems without having ource code. CPU In all, this involved adding 200 lines stone. The experiments use a block size in the 0KB, which is the maximum size of binary files udstone. The HDFS replica count is set to three ctices from production deployments. tributes Figure the6 content of: objects (files) across an elasge nodes, called datanodes. A namenode tracks g replica H. C. counts Lim, and S. Babu, locations J. S. forchase. each file. implementation, Automated HDFS Control does for not Elastic ensurestorage, that storest-balanced, International sinceconf. its internal On Autonomic policy isbasedon ty. However, Computing Cloudstone s (ICAC), June workload 7-11, generator 2010 is t structured data and content objects are accessed ibution, 2010 which ACM, naturally Inc. balances requests across es. Included here by permission. ified HDFS to expose the rebalancer s bandwidth ctuator to the external controller. We created an he HDFS namenode that notifies all HDFS datan Time (s) x 10 4 CPU Utilization (%) WH CPU Utilization Target (20%) (a) Average CPU utilization of the HDFS datanodes with static provisioning CPU Utilization (%) Rebalance +9 Storage Nodes WH CPU Utilization y h (20%) Time (s) x 10 4 y l Response Time (s) Response Time Target (3s) Time (s) x 10 4 (b) Response time of the Cloudstone application with static provisioning Response Time (s) Response Time Target (3s) Time (s) x 10 4 (c) Average CPU utilization of (d) Response time of the Cloudstone application with dynamic the HDFS datanodes with dynamic provisioning provisioning Figure 6: The performance of Cloudstone with static allocation (a,b) and our control policy (c,d), under a 10-fold increase in workload volume. The time periods with high volume of workload is labeled as WH
133 Avancées et défis pour lʼauto-adaptation! Avancées Interaction fructueuse avec lʼautomatique domaine continu (boucle de commande) domaine discret (synthèse de contrôleurs) résultats pour QoS Composants et architectures réflexifs 43 43
134 Avancées et défis pour lʼauto-adaptation! Avancées! Défis Interaction fructueuse avec lʼautomatique domaine continu (boucle de commande) domaine discret (synthèse de contrôleurs) résultats pour QoS Composants et architectures réflexifs Approches multiniveaux (piloté vs auto-organisé) Expression des objectifs objectifs multicritères (performances, énergie, disponibilité, ) prise en compte de situations non prévues Modélisation, vérification, garanties liaison continu-discret, prise en compte du temps Sécurité 43 43
135 Remarques finales! Sur les paradigmes de lʼarchitecture Permanence des concepts, raffinement (lent ) dans leur mise en œuvre Nouveaux paradigmes mobilité, autonomie, 44 44
136 Remarques finales! Sur les paradigmes de lʼarchitecture Permanence des concepts, raffinement (lent ) dans leur mise en œuvre Nouveaux paradigmes mobilité, autonomie, puissance de lʼabstraction puissance (et développement) des modèles 44 44
137 Remarques finales! Sur les paradigmes de lʼarchitecture Permanence des concepts, raffinement (lent ) dans leur mise en œuvre Nouveaux paradigmes mobilité, autonomie,! Quelques défis pour lʼavenir Conceptuels modéles formels pour lʼarchitecture validité de la construction modélisation de la sécurité systèmes hybrides Pratiques description déclarative des environnements et contraintes génération automatique de systèmes spécialisés puissance de lʼabstraction puissance (et développement) des modèles administration et qualité de service des très grands systèmes 44 44
Cʼest quoi, le «virtuel»? Le virtuel en informatique. Le virtuel en informatique : de la machine au musée. Virtualisation des infrastructures
Aconit, 24 avril 2012 Cʼest quoi, le «virtuel»?! Initialement Le virtuel en informatique : de la machine au musée Sacha Krakowiak Université de Grenoble Sens courant : un potentiel gain virtuel victoire
Systèmes Répartis. Pr. Slimane Bah, ing. PhD. Ecole Mohammadia d Ingénieurs. G. Informatique. Semaine 24.2. [email protected]
Ecole Mohammadia d Ingénieurs Systèmes Répartis Pr. Slimane Bah, ing. PhD G. Informatique Semaine 24.2 1 Semestre 4 : Fev. 2015 Grid : exemple SETI@home 2 Semestre 4 : Fev. 2015 Grid : exemple SETI@home
Conception des systèmes répartis
Conception des systèmes répartis Principes et concepts Gérard Padiou Département Informatique et Mathématiques appliquées ENSEEIHT Octobre 2012 Gérard Padiou Conception des systèmes répartis 1 / 37 plan
LES APPROCHES CONCRÈTES POUR LE DÉPLOIEMENT D INFRASTRUCTURES CLOUD AVEC HDS & VMWARE
LES APPROCHES CONCRÈTES POUR LE DÉPLOIEMENT D INFRASTRUCTURES CLOUD AVEC HDS & VMWARE Sylvain SIOU VMware Laurent DELAISSE Hitachi Data Systems 1 Hitachi Data Systems Corporation 2012. All Rights Reserved
Concept de machine virtuelle
Concept de machine virtuelle Chap. 5: Machine virtuelle Alain Sandoz Semestre été 2007 1 Introduction: Java Virtual Machine Machine Virtuelle Java: qu est-ce que c est? c est la spécification d une machine
Cloud Computing. Introduction. ! Explosion du nombre et du volume de données
Cloud Computing Frédéric Desprez LIP ENS Lyon/INRIA Grenoble Rhône-Alpes EPI GRAAL 25/03/2010! Introduction La transparence d utilisation des grandes plates-formes distribuées est primordiale Il est moins
Elasticité logicielle pour optimiser l empreinte énergétique
Ecole des Mines de Nantes Elasticité logicielle pour optimiser l empreinte énergétique Thomas Ledoux (équipe Ascola, INRIA-EMN, LINA) direction des études décembre 2010 page 1 Relation logiciel empreinte
Chapitre 4: Introduction au Cloud computing
Virtualisation et Cloud Computing Chapitre 4: Introduction au Cloud computing L'évolution d'internet Virt. & Cloud 12/13 2 Définition Le cloud computing est une technologie permettant de délocaliser les
Evolution des technologies et émergence du cloud computing Drissa HOUATRA, Orange Labs Issy
Evolution des technologies et émergence du cloud computing Drissa HOUATRA, Orange Labs Issy Séminaire Aristote, 17 Déc. 2009 Ecole Polytechnique Palaiseau Plan L'univers du cloud Ressources Grilles, middleware
Séminaire Partenaires Esri France 6 et 7 juin 2012 Paris. ArcGIS et le Cloud. Gaëtan LAVENU
Séminaire Partenaires Esri France 6 et 7 juin 2012 Paris ArcGIS et le Cloud Gaëtan LAVENU Agenda Qu'attendent nos clients du Cloud Computing? Les solutions de Cloud ArcGIS dans le Cloud Quelles attendent
+ = OpenStack Presentation. Raphaël Ferreira - CoFounder. @ enovance. Credits : Thanks to the OpenStack Guys 1
+ = OpenStack Presentation Raphaël Ferreira - CoFounder @ enovance Credits : Thanks to the OpenStack Guys 1 INTRODUCTION 2 Les entreprises déploient des clouds pour... Répondre aux besoins de ressources
Virtualisation & Sécurité
Virtualisation & Sécurité Comment aborder la sécurité d une architecture virtualisée? Quels sont les principaux risques liés à la virtualisation? Peut-on réutiliser l expérience du monde physique? Quelles
Prise en compte des ressources dans les composants logiciels parallèles
Prise en compte des ressources dans les composants logiciels parallèles Aperçus de l action RASC et du projet Concerto F. Guidec [email protected] Action RASC Plan de cet exposé Contexte Motivations
Évaluation et implémentation des langages
Évaluation et implémentation des langages Les langages de programmation et le processus de programmation Critères de conception et d évaluation des langages de programmation Les fondations de l implémentation
VMware : De la Virtualisation. au Cloud Computing
VMware : De la Virtualisation. au Cloud Computing Tunis, le 12 Décembre 2012 Jamal Belhachemi BDM South EMEA 2010 VMware, Inc. Tous droits réservés. 2010 #1 dans les priorités des Directeurs Informatiques
MapReduce. Malo Jaffré, Pablo Rauzy. 16 avril 2010 ENS. Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril 2010 1 / 15
MapReduce Malo Jaffré, Pablo Rauzy ENS 16 avril 2010 Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril 2010 1 / 15 Qu est ce que c est? Conceptuellement Données MapReduce est un framework de calcul distribué
Cycle Innovation & Connaissance 12 petit déjeuner Mardi 15 mai 2012. Cloud Computing & Green IT : nuages ou éclaircies?
Cycle Innovation & Connaissance 12 petit déjeuner Mardi 15 mai 2012 Cloud Computing & Green IT : nuages ou éclaircies? Jean-Claude TAGGER, professeur SKEMA Business School AGENDA Le Cloud : Quelques définitions
FOURNIR UN SERVICE DE BASE DE DONNÉES FLEXIBLE. Database as a Service (DBaaS)
FOURNIR UN SERVICE DE BASE DE DONNÉES FLEXIBLE Database as a Service (DBaaS) 1 The following is intended to outline our general product direction. It is intended for information purposes only, and may
Hébergement MMI SEMESTRE 4
Hébergement MMI SEMESTRE 4 24/03/2015 Hébergement pour le Web Serveurs Mutualités Serveurs Dédiés Serveurs VPS Auto-Hébergement Cloud Serveurs Mutualités Chaque Serveur héberge plusieurs sites Les ressources
EXALOGIC ELASTIC CLOUD MANAGEMENT
EXALOGIC ELASTIC CLOUD MANAGEMENT Jean-Marc Digne Ingénieur Avant Vente Oracle France 1 The following is intended to outline our general product direction. It is intended for information purposes only,
Histoire et actualité de lʼinformatique
Histoire et actualité de lʼinformatique Évolution, problèmes, perspectives Sacha Krakowiak Université de Grenoble Séance 6 Progrès et défis actuels Progrès et défis actuels Quelques sujets dʼactualité
Du Datacenter au Cloud Quels challenges? Quelles solutions? Christophe Dubos Architecte Microsoft
Du Datacenter au Cloud Quels challenges? Quelles solutions? Christophe Dubos Architecte Microsoft Microsoft et le Cloud Computing Quelle approche? Le Cloud, un accélérateur de la transformation Un modèle
Plan du cours. Autres modèles pour les applications réparties Introduction. Mode de travail. Introduction
Plan du cours Autres modèles pour les applications réparties Introduction [email protected] http://rangiroa.polytech.unice.fr Notre terrain de jeu : les systèmes répartis Un rappel : le modèle dominant
Systèmes d exploitation
Systèmes d exploitation Virtualisation, Sécurité et Gestion des périphériques Gérard Padiou Département Informatique et Mathématiques appliquées ENSEEIHT Novembre 2009 Gérard Padiou Systèmes d exploitation
THÈSE. présentée à TÉLÉCOM PARISTECH. pour obtenir le grade de. DOCTEUR de TÉLÉCOM PARISTECH. Mention Informatique et Réseaux. par.
École Doctorale d Informatique, Télécommunications et Électronique de Paris THÈSE présentée à TÉLÉCOM PARISTECH pour obtenir le grade de DOCTEUR de TÉLÉCOM PARISTECH Mention Informatique et Réseaux par
FAMILLE EMC VPLEX. Disponibilité continue et mobilité des données dans et entre les datacenters AVANTAGES
FAMILLE EMC VPLEX Disponibilité continue et mobilité des données dans et entre les datacenters DISPONIBLITÉ CONTINUE ET MOBILITÉ DES DONNÉES DES APPLICATIONS CRITIQUES L infrastructure de stockage évolue
La virtualisation, des postes de travail
La virtualisation, des postes de travail W. Guyot-Lénat" Service Commun Informatique" UFR Sciences" Université Blaise Pascal" Menu" Mise en bouche : " présentation SCI" Petits mots de Gartner" Quelques
La tête dans les nuages
19 novembre 2010 La tête dans les nuages Démystifier le "Cloud Computing" Jean Bernard, Directeur, Gestion des services Radialpoint SafeCare Inc. Au sujet de Radialpoint Radialpoint offre des solutions
FAMILLE EMC VPLEX. Disponibilité continue et mobilité des données dans et entre les datacenters
FAMILLE EMC VPLEX Disponibilité continue et mobilité des données dans et entre les datacenters DISPONIBILITE CONTINUE ET MOBILITE DES DONNEES DES APPLICATIONS CRITIQUES L infrastructure de stockage évolue
Modélisation des interfaces matériel/logiciel
Modélisation des interfaces matériel/logiciel Présenté par Frédéric Pétrot Patrice Gerin Alexandre Chureau Hao Shen Aimen Bouchhima Ahmed Jerraya 1/28 TIMA Laboratory SLS Group 46 Avenue Félix VIALLET
Patrons de Conception (Design Patterns)
Patrons de Conception (Design Patterns) Introduction 1 Motivation Il est difficile de développer des logiciels efficaces, robustes, extensibles et réutilisables Il est essentiel de comprendre les techniques
NFP111 Systèmes et Applications Réparties
NFP111 Systèmes et Applications Réparties 1 de 34 NFP111 Systèmes et Applications Réparties Cours 7 - CORBA/Partie 1 Claude Duvallet Université du Havre UFR Sciences et Techniques 25 rue Philippe Lebon
ARCHITECTURE ET SYSTÈMES D'EXPLOITATIONS
ARCHITECTURE ET SYSTÈMES D'EXPLOITATIONS Axel François bureau C19 (2eme étage) cours disponibles en pdf sur : www.iut-arles.up.univ-mrs.fr/francois 1 PLAN En Cours : qu'est-ce qu'un ordinateur? à quoi
Chapitre 1. Infrastructures distribuées : cluster, grilles et cloud. Grid and Cloud Computing
Chapitre 1. Infrastructures distribuées : cluster, grilles et cloud Grid and Cloud Computing Problématique Besoins de calcul croissants Simulations d'expériences coûteuses ou dangereuses Résolution de
VMware Infrastructure The New Computing Platform. Stéphane CROIX Systems Engineer
VMware Infrastructure The New Computing Platform Stéphane CROIX Systems Engineer La nouvelle plateforme informatique Une seule plateforme pour résoudre les différents «challenges» de l entreprise d aujourd
Introduction aux systèmes temps réel. Iulian Ober IRIT [email protected]
Introduction aux systèmes temps réel Iulian Ober IRIT [email protected] Définition Systèmes dont la correction ne dépend pas seulement des valeurs des résultats produits mais également des délais dans
Forthcoming Database
DISS.ETH NO. 15802 Forthcoming Database A Framework Approach for Data Visualization Applications A dissertation submitted to the SWISS FEDERAL INSTITUTE OF TECHNOLOGY ZURICH for the degree of Doctor of
Containers : Outils magiques pour les Devops? OpenNebula et son écosystème pour une infrastructure cloud agile
Containers : Outils magiques pour les Devops? OpenNebula et son écosystème pour une infrastructure cloud agile AGENDA TAS Group REX : OpenNebula Questions TAS GROUP Software company and system integrator
Chapitre 2 : Abstraction et Virtualisation
Virtualisation et Cloud Computing Chapitre 2 : Abstraction et Virtualisation Objectifs Présenter la notion de niveaux d abstraction séparés par des interfaces bien définies Description des avantages et
4. Utilisation d un SGBD : le langage SQL. 5. Normalisation
Base de données S. Lèbre [email protected] Université de Strasbourg, département d informatique. Présentation du module Contenu général Notion de bases de données Fondements / Conception Utilisation :
Cloud et SOA La présence du Cloud révolutionne-t-elle l approche SOA?
Cloud et SOA La présence du Cloud révolutionne-t-elle l approche SOA? Jean-Marc Pierson [email protected] IRIT, Université de Toulouse Agenda! Le Cloud! Le SOA! Quelle différence!?! Cloud et SOA! Mise en
Élasticité des applications à base de services dans le Cloud
1/40 Élasticité des applications à base de services dans le Cloud Mourad Amziani 12 Tarek Melliti 1 Samir Tata 2 1 IBISC, EA4526, Université d'évry Val-d'Essonne, Évry, France 2 UMR CNRS Samovar, Institut
L état de la virtualisation
L état de la virtualisation Par : Marc Balardelle Atelier 313 Plan de la présentation Les hyperviseurs Les faits saillants de VMWorld 2008 L'architecture de services L'état du bureau virtuel Les hyperviseurs
ETUDE ET IMPLÉMENTATION D UNE CACHE L2 POUR MOBICENTS JSLEE
Mémoires 2010-2011 www.euranova.eu MÉMOIRES ETUDE ET IMPLÉMENTATION D UNE CACHE L2 POUR MOBICENTS JSLEE Contexte : Aujourd hui la plupart des serveurs d application JEE utilise des niveaux de cache L1
Gestion répartie de données - 1
Gestion répartie de données - 1 Sacha Krakowiak Université Joseph Fourier Projet Sardes (INRIA et IMAG-LSR) http://sardes.inrialpes.fr/~krakowia Gestion répartie de données Plan de la présentation Introduction
Windows Server 2008. Chapitre 1: Découvrir Windows Server 2008
Windows Server 2008 Chapitre 1: Découvrir Windows Server 2008 Objectives Identifier les caractéristiques de chaque édition de Windows Server 2008 Identifier les caractéristiques généraux de Windows Server
Le cloud computing au service des applications cartographiques à haute disponibilité
Le cloud computing au service des applications cartographiques à haute disponibilité Claude Philipona Les Rencontres de SIG-la-Lettre, Mai 2010 camptocamp SA / www.camptocamp.com / [email protected]
Vers une approche Adaptative pour la Découverte et la Composition Dynamique des Services
69 Vers une approche Adaptative pour la Découverte et la Composition Dynamique des Services M. Bakhouya, J. Gaber et A. Koukam Laboratoire Systèmes et Transports SeT Université de Technologie de Belfort-Montbéliard
APX et VCE, Modèle d industrialisation de l intégration et du déploiement. Olivier BERNARD, VCE
APX et VCE, Modèle d industrialisation de l intégration et du déploiement Olivier BERNARD, VCE Généralisation des réseaux, suprématie d IP Consumérisation des terminaux informatiques Evolution vers une
Cloud Computing : Généralités & Concepts de base
Cloud Computing : Généralités & Concepts de base Les 24èmes journées de l UR-SETIT 22 Février 2015 Cette oeuvre, création, site ou texte est sous licence Creative Commons Attribution - Pas d Utilisation
Christophe Dubos Architecte Infrastructure et Datacenter Microsoft France [email protected]
Christophe Dubos Architecte Infrastructure et Datacenter Microsoft France [email protected] Microsoft et le Cloud Computing Quelle approche? Voyage au Cœur du Cloud Microsoft Self Service Client Délégation
PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN
PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN 1. DÉVELOPPEMENT D'APPLICATION (CONCEPTEUR ANALYSTE) 1.1 ARCHITECTURE MATÉRIELLE DU SYSTÈME INFORMATIQUE 1.1.1 Architecture d'un ordinateur Processeur,
Plate-forme Cloud CA AppLogic pour les applications d entreprise
FICHE PRODUIT : CA AppLogic Plate-forme Cloud CA AppLogic pour les applications d entreprise agility made possible CA AppLogic est une plate-forme Cloud Computing clés en main permettant aux clients de
Introduction à MapReduce/Hadoop et Spark
1 / 36 Introduction à MapReduce/Hadoop et Spark Certificat Big Data Ludovic Denoyer et Sylvain Lamprier UPMC Plan 2 / 36 Contexte 3 / 36 Contexte 4 / 36 Data driven science: le 4e paradigme (Jim Gray -
LIVRE BLANC. Citrix XenDesktop. La virtualisation de poste de travail : la check-list de l acheteur. www.citrix.fr
La virtualisation de poste de travail : la check-list de l acheteur www.citrix.fr Sommaire Introduction...3 La mise à disposition de postes de travail...3 L expérience utilisateur doit être améliorée...4
Introduction. Gestion de la consommation énergétique. Contexte du cloud computing Instrumentation et contrôle
Ctrl-Green Projet ANR INFRA (2012-2015) Coordinateur Noel De Palma (UJF/LIG) Partenaires UJF/LIG, ENSEEIHT/IRIT, INRIA, Eolas Business&Decision, Scalagent Introduction Gestion de la consommation énergétique
Culture numérique Cloud computing
Culture numérique Cloud computing Hervé Le Crosnier Université de Caen Basse-Normandie [email protected] Processus John McCarthy «computation may someday be organized as a public utility.» Transformations
Introduction aux systèmes temps réel
Introduction aux systèmes temps réel Frank Singhoff Bureau C-203 Université de Brest, France LISyC/EA 3883 [email protected] UE applications de l informatique, Université de Brest Page 1/22 Plan du
Systèmes et algorithmes répartis
Systèmes et algorithmes répartis Tolérance aux fautes Philippe Quéinnec Département Informatique et Mathématiques Appliquées ENSEEIHT 4 novembre 2014 Systèmes et algorithmes répartis V 1 / 45 plan 1 Sûreté
Cloud Computing Stratégie IBM France
Cloud Computing Stratégie IBM France Daphné Alécian, Cloud Market Manager 1 2 2 Le Cloud Computing induit des changements majeurs en terme d usage et de comportement Définition : Caractéristiques : Un
3A-IIC - Parallélisme & Grid GRID : Définitions. GRID : Définitions. Stéphane Vialle. [email protected] http://www.metz.supelec.
3A-IIC - Parallélisme & Grid Stéphane Vialle [email protected] http://www.metz.supelec.fr/~vialle Principes et Objectifs Evolution Leçons du passé Composition d une Grille Exemple d utilisation
CA Automation Suite for Data Centers
FICHE PRODUIT : CA Automation Suite for Data Centers CA Automation Suite for Data Centers agility made possible «La technologie a devancé la capacité à la gérer manuellement dans toutes les grandes entreprises
Adopter une approche unifiée en matière d`accès aux applications
Adopter une approche unifiée en matière d`accès aux applications Présentée par Jean-Steve Shaker Architecte de solutions - Virtualisation 2012 Technologies Metafore Inc. L évolution 2012 Technologies Metafore
Serveur d'application à la juste taille
Serveur d'application à la juste taille 18 Mars 2010 [email protected] Plan Contexte JOnAS 5, plate-forme de convergence JavaEE/OSGi Caractéristiques essentielles pour le Cloud Computing & l'autonomic
ORACLE PAAS CLOUD MANAGEMENT
ORACLE PAAS CLOUD MANAGEMENT Jean-Marc Digne Ingénieur Avant-Vente Oracle France 1 The following is intended to outline our general product direction. It is intended for information purposes only, and
Perspectives pour l entreprise. Desktop Cloud. JC Devos IBM IT Architect [email protected]. 2010 IBM Corporation
Perspectives pour l entreprise Desktop Cloud JC Devos IBM IT Architect [email protected] Principe technique Disposer d un poste de travail virtuel accessible par la plupart des terminaux disponibles Ce
Séminaire Partenaires Esri France 7-8 juin 2011 - Paris Cloud Computing Stratégie Esri
Séminaire Partenaires Esri France 7-8 juin 2011 - Paris Cloud Computing Stratégie Esri Gaëtan LAVENU Plan de la présentation Evolution des architectures SIG Qu'est ce que le Cloud Computing? ArcGIS et
Quick Start Guide This guide is intended to get you started with Rational ClearCase or Rational ClearCase MultiSite.
Rational ClearCase or ClearCase MultiSite Version 7.0.1 Quick Start Guide This guide is intended to get you started with Rational ClearCase or Rational ClearCase MultiSite. Product Overview IBM Rational
Protection et amélioration de la sécurité des systèmes d'exploitation
Protection et amélioration de la sécurité des systèmes d'exploitation Jérémy Briffaut ENSI Bourges LIFO Martin Perès Université de Bordeaux LaBRI Jonathan Rouzaud-Cornabas INRIA Rhône Alpes Jigar Solanki
Section I: Le Contexte du DATA CENTER Pourquoi l AGILITE est Nécessaire dans le DataCenter
Agile Data Center CONTENU Section I: Le Contexte du DATA CENTER Pourquoi l AGILITE est Nécessaire dans le DataCenter Section II: VERS UNE APPROCHE SERVICE Le DataCenter AGILE (ADC) Une Infrastructure Elastique
Cloud Computing et SaaS
Cloud Computing et SaaS On a vu fleurir ces derniers temps un grands nombre de sigles. L un des premiers est SaaS, Software as a Service, sur lequel nous aurons l occasion de revenir. Mais il y en a beaucoup
Le stockage. 1. Architecture de stockage disponible. a. Stockage local ou centralisé. b. Différences entre les architectures
Le stockage 1. Architecture de stockage disponible a. Stockage local ou centralisé L architecture de stockage à mettre en place est déterminante pour l évolutivité et la performance de la solution. Cet
Software Engineering and Middleware A Roadmap
Software Engineering and Middleware A Roadmap Ecrit par: Dr. Wolfgang Emmerich Présenté par : Mustapha Boushaba Cours : IFT6251 Wolfgang Emmerich Enseignant à University College London: Distributed Systems
Introduction au Déploiement
Introduction au Déploiement Noël De Palma - Projet SARDES - INRIA - IMAG LSR Remerciement à d. donsez 03/03/06 PLAN Définition et problématique OSGI FRACTAL JADE Conclusion 03/03/06 2 Définition Environnement
CNAM 2010-2011. Déploiement d une application avec EC2 ( Cloud Amazon ) Auteur : Thierry Kauffmann Paris, Décembre 2010
CNAM 2010-2011 Déploiement d une application avec EC2 ( Cloud Amazon ) Auteur : Thierry Kauffmann Paris, Décembre 2010 Déploiement d une application dans le cloud. 1. Cloud Computing en 2010 2. Offre EC2
Cours Bases de données
Informations sur le cours Cours Bases de données 9 (10) séances de 3h Polycopié (Cours + TD/TP) 3 année (MISI) Antoine Cornuéjols www.lri.fr/~antoine [email protected] Transparents Disponibles
Principes. 2A-SI 3 Prog. réseau et systèmes distribués 3. 3 Programmation en CORBA. Programmation en Corba. Stéphane Vialle
2A-SI 3 Prog. réseau et systèmes distribués 3. 3 Programmation en CORBA Stéphane Vialle [email protected] http://www.metz.supelec.fr/~vialle 1 Principes 2 Architecture 3 4 Aperçu d utilisation
basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB www.enseirb.fr/~legal Olivier Augereau Formation UML
basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB www.enseirb.fr/~legal Olivier Augereau Formation UML http://olivier-augereau.com Sommaire Introduction I) Les bases II) Les diagrammes
.Réinventons l innovation. www.gosis.com
.Réinventons l innovation Définitions Définition: Environnement de stockage et d exécution élastique de ressources informatiques impliquant plusieurs acteurs, connectés par Internet. Cet environnement
Introduction au Cloud Computing
Contenu Introduction au Cloud Computing... 2 Définition du Cloud... 2 Modèles d usage... 3 Iaas, Paas,SaaS : qui est responsable de quoi?.... 3 Iaas : votre datacenter dans le cloud... 3 SaaS : l alternative
EMC Forum 2014. EMC ViPR et ECS : présentation des services software-defined
EMC Forum 2014 EMC ViPR et ECS : présentation des services software-defined 1 2 3 4 5 Software is Eating the World Marc Andreessen co-fondateur de Netscape Les entreprises qui utilisent efficacement le
Virtualisation des Serveurs et du Poste de Travail
Virtualisation des Serveurs et du Poste de Travail Les enjeux de la virtualisation Les acteurs du segment La virtualisation de serveurs Les concepts Les technologies d architectures L offre La virtualisation
VIRTUALISATION : MYTHES & RÉALITÉS
VIRTUALISATION : MYTHES & RÉALITÉS Virtualisation Définition Marché & Approche Microsoft Virtualisation en PME Quel(s) besoin(s) Quelle(s) approche(s) Témoignage Client Mr Rocher, DSI CESML Questions /
Administration d'infrastructures logicielles avec Jade
Administration d'infrastructures logicielles avec Jade Daniel Hagimont IRIT, décembre 2006 Contexte Infrastructures logicielles réparties Complexité et hétérogénéité Besoin d administration Fonctions d
L INFORMATIQUE SOUS FORME DE SERVICE POUR VOTRE ENTREPRISE. Farid BENREJDAL Senior Systems Engineer VMware
L INFORMATIQUE SOUS FORME DE SERVICE POUR VOTRE ENTREPRISE Farid BENREJDAL Senior Systems Engineer VMware ... VERS L IT AS A SERVICE Phase I Phase II Phase III Gain en CapEx / Consolidation Gain en fiabilité
Ne laissez pas le stockage cloud pénaliser votre retour sur investissement
Ne laissez pas le stockage cloud pénaliser votre retour sur investissement Préparé par : George Crump, analyste senior Préparé le : 03/10/2012 L investissement qu une entreprise fait dans le domaine de
Dossier de presse. Offre Allinclouded by Flexsi Le cloud privé sur mesure, enfin pour les PME!
Dossier de presse Paris, le 14 mai 2013 Offre Allinclouded by Flexsi Le cloud privé sur mesure, enfin pour les PME! Avec sa nouvelle offre Allinclouded, Flexsi permet à chacun, quʼil soit sur PC ou Mac,
LA VIRTUALISATION. Etude de la virtualisation, ses concepts et ses apports dans les infrastructures informatiques. 18/01/2010.
Guillaume ANSEL M2 ISIDIS 2009-2010 / ULCO Dossier d étude sur la virtualisation LA VIRTUALISATION 18/01/2010 Etude de la virtualisation, ses concepts et ses apports dans les infrastructures informatiques.
Master (filière Réseau) Parcours Recherche: Systèmes Informatiques et Réseaux (RTS)
Master (filière Réseau) Parcours Recherche: Systèmes Informatiques et Réseaux (RTS) Responsables: Tanguy Risset & Marine Minier [email protected] [email protected] http://master-info.univ-lyon1.fr/m2rts/
Un exemple de cloud au LUPM : Stratuslab
Un exemple de cloud au LUPM : Stratuslab Plan de la présentation Le cloud : une idée nouvelle? La boîte à outils du cloud Les différents types de cloud (Iaas, Paas, Saas) Présentation de Stratuslab Démonstration
XtremWeb-HEP 8.0.0. Interconnecting jobs over DG. Virtualization over DG. Oleg Lodygensky Laboratoire de l Accélérateur Linéaire
XtremWeb-HEP 8.0.0 Interconnecting jobs over DG Virtualization over DG Oleg Lodygensky Objectives 1.Deploy Virtual Machines in XtremWeb-HEP desktop grid to: protect volunteer resources generalize «pilot
Introduction aux applications réparties
Introduction aux applications réparties Noël De Palma Projet SARDES INRIA Rhône-Alpes http://sardes.inrialpes.fr/~depalma [email protected] Applications réparties Def : Application s exécutant
Solution A La Gestion Des Objets Java Pour Des Systèmes Embarqués
International Journal of Engineering Research and Development e-issn: 2278-067X, p-issn: 2278-800X, www.ijerd.com Volume 7, Issue 5 (June 2013), PP.99-103 Solution A La Gestion Des Objets Java Pour Des
Une dérivation du paradigme de réécriture de multiensembles pour l'architecture de processeur graphique GPU
Une dérivation du paradigme de réécriture de multiensembles pour l'architecture de processeur graphique GPU Gabriel Antoine Louis Paillard Ce travail a eu le soutien de la CAPES, agence brésilienne pour
Plan. Department of Informatics
Plan 1. Application Servers 2. Servlets, JSP, JDBC 3. J2EE: Vue d ensemble 4. Distributed Programming 5. Enterprise JavaBeans 6. Enterprise JavaBeans: Special Topics 7. Prise de recul critique Enterprise
DOCUMENTATION MODULE BLOCKCATEGORIESCUSTOM Module crée par Prestacrea - Version : 2.0
DOCUMENTATION MODULE BLOCKCATEGORIESCUSTOM Module crée par Prestacrea - Version : 2.0 INDEX : DOCUMENTATION - FRANCAIS... 2 1. INSTALLATION... 2 2. CONFIGURATION... 2 3. LICENCE ET COPYRIGHT... 3 4. MISES
Qu est ce que le Cloud Computing?
Qu est ce que le Cloud Computing? Makhlouf Hadji Ingénieur de Recherche Qu est ce que le Cloud Computing? Agenda: Virtualisation des Ressources Introduction au Cloud Computing Caractéristiques du Cloud
Bonjour. Yohan PARENT, Cyprien FORTINA, Maxime LEMAUX, Hyacinthe CARTIAUX
Bonjour I.Le contexte II.Le cloud computing III.L'expérimentation des solutions libres sur Grid'5000 1.Eucalyptus 2.OpenNebula 3.OpenStack IV.Tableau Comparatif V.Conclusion I.Le contexte 1)Le projet
Chapitre VI- La validation de la composition.
Chapitre VI- La validation de la composition. Objectifs du chapitre : Expliquer les conséquences de l utilisation de règles de typage souples dans SEP. Présenter le mécanisme de validation des connexions
