Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

OW2 JASMINe

2,114 views

Published on

Présentation de JASMINe : Outils de gestion et supervision d'infrastructure intergicielle.

Published in: Technology
  • Be the first to comment

OW2 JASMINe

  1. 1. JASMINe Outils de gestion et supervision d'infrastructure intergicielle [email_address]
  2. 2. Agenda <ul><li>Introduction à JASMINe
  3. 3. Outil d'aide à la configuration
  4. 4. Outil d'aide à la maintenance
  5. 5. Outil d'aide à la supervision
  6. 6. Références et conclusion </li></ul>
  7. 7. Besoins <ul><li>Administration d'infrastructure intergicielle distribuée et d'applications distribuées </li><ul><li>Suivre l'activité au fil de l'eau
  8. 8. Cible typique : infrastructure SOA
  9. 9. Première application : JOnAS </li></ul></ul><ul><li>Haute réactivité </li><ul><li>Minimiser l'interruption de service </li></ul></ul><ul><li>Fiabilité </li><ul><li>Minimiser l'intervention humaine (limiter les erreurs)
  10. 10. Automatiser les tâches courantes </li></ul></ul>
  11. 11. Projet opensource OW2 JASMINe <ul><li>Développé en open source au sein du consortium OW2 </li><ul><li>Licence LGPL
  12. 12. Contributeurs principaux : Bull, FranceTelecom, Serli, INRIA </li></ul><li>Suite d'outils d'administration pour plates-formes SOA
  13. 13. Solution agnostique et évolutive </li></ul>http://jasmine.ow2.org
  14. 14. JASMINe <ul><li>JASMINe Design </li><ul><li>Outil graphique de contruction d’une configuration Middleware SOA </li></ul><li>JASMINe Deploy </li><ul><li>Environnement pour le déploiement d’une configuration Middleware SOA
  15. 15. Migration d’applications (JaDOrT) </li></ul></ul><ul><li>JASMINe Monitoring </li><ul><li>Outils pour le suivi de performances et la détection d’erreurs </li></ul><li>JASMINe Self-management </li><ul><li>Boucle de contrôle pour l’auto-optimisation et le Self-healing </li></ul></ul>
  16. 16. Agenda <ul><li>Introduction à JASMINe
  17. 17. Outil d'aide à la configuration
  18. 18. Outil d'aide à la maintenance
  19. 19. Outil d'aide à la supervision
  20. 20. Références et conclusion </li></ul>
  21. 21. Besoin <ul><li>La création d'une infrastructure middleware distribuée est une tâche </li><ul><li>Critique
  22. 22. Fastidieuse
  23. 23. Complexe, “Obscure” </li></ul><li>Exemple du serveur d'application JOnAS 5 </li><ul><li>21 services configurables
  24. 24. 48 fichiers de configuration, plusieurs centaines de propriétés
  25. 25. Format de fichiers hétérogènes </li></ul><li>première application de JASMINE Design/Deploy au cas d'usage d'une infrastructure cluster JOnAS </li></ul>
  26. 26. Vue d'ensemble 1. Conception 2. Configuration 3. Validation (plugin Eclipse)‏ 4. Déploiement de la configuration (commande java)
  27. 27. Conception <ul><li>Environnement graphique Eclipse </li></ul>Barre outils Vue globale Explorateur Zone d'édition Propriétés
  28. 28. Caractéristiques <ul><li>Wizards pour </li><ul><li>Création de ferme/cluster
  29. 29. Gestion de profiles de services </li><ul><li>Ensemble de services pré-configurés
  30. 30. Personnalisable </li></ul></ul><li>Accès aux paramètres des instances et services
  31. 31. Auto-génération de la configuration </li><ul><li>Politique d'allocation des numéros de port TCP
  32. 32. Nommage des instances JOnAS </li></ul><li>Des règles de validation </li><ul><li>Génériques : Contraintes sur le modèle (Typage des liens, présence de propriétés requises)
  33. 33. Personnalisables : Conflit de ports, noms, ... </li></ul></ul>
  34. 34. Déploiement <ul><li>Commande Java “deployme” </li><ul><li>Basé sur le fichier topology.xml (exporté depuis JASMINe Design) </li></ul></ul>
  35. 35. Agenda <ul><li>Introduction à JASMINe
  36. 36. Outil d'aide à la configuration
  37. 37. Outil d'aide à la maintenance
  38. 38. Outil d'aide à la supervision
  39. 39. Références et conclusion </li></ul>
  40. 40. <ul><li>Centralise la migration d'application et la gestion de l'infrastructure </li><ul><li>Vue globale des serveurs et des applications
  41. 41. Assistance pour le choix des serveurs à maintenir (vérification de la capacité)‏
  42. 42. Parallélisation des opérations sur l'infrastructure
  43. 43. Gestion des sessions utilisateurs </li></ul><li>Assiste l'exploitant dans ses tâches répétitives </li><ul><li>Possibilité de retour arrière à chaque étape
  44. 44. Gestion des erreurs (logs,retry/ignore)
  45. 45. Traçabilité
  46. 46. Suspend/Resume (par exemple pour attendre l'expiration des sessions) </li></ul></ul>JaDOrT (Jasmine Deployment Orchestration Tool)
  47. 47. JaDOrT : 2 modes d'utilisation <ul><li>Migration </li><ul><li>Montée en version transparente d'application déployée sur JOnAS 5
  48. 48. Repose sur le service versioning de JOnAS
  49. 49. Support des modules Java EE (OSGi en prévision) </li></ul></ul><ul><li>Maintenance </li><ul><li>Gestion de l'infrastructure sans interruption de service
  50. 50. Pilotage du frontal Apache/jk & mod_proxy-balancer
  51. 51. Support de plusieurs serveurs d'application </li><ul><li>JOnAS, JBoss, Glassfish, Weblogic, Websphere </li></ul><li>Support des VM </li><ul><li>Via une API d'abstraction du système de virtualisation sous-jacent
  52. 52. Qualifié par FT avec Vmware </li></ul></ul></ul>
  53. 53. Vue globale Servers workers associés Liste des applications déployées sur ce groupe de serveurs
  54. 54. Sélection des serveurs à maintenir Capacité et nombre de sessions actives Etat de la maintenance pour chaque serveur Sélection automatique des serveurs à maintenir Sélection manuelle des serveurs
  55. 55. Contrôle des opérations Taches et progression globale Etat et progression de chaque serveur Nombre de sessions actives par utilisateur Actions pour chaque serveur
  56. 56. L'administrateur a toujours le contrôle
  57. 57. Gestion des erreurs Task that failed Le serveur est en échec Il est toujours possible de revenir en arrière Action : retry/ignore
  58. 58. Log
  59. 59. Agenda <ul><li>Introduction à JASMINe
  60. 60. Outil d'aide à la configuration
  61. 61. Outil d'aide à la maintenance
  62. 62. Outil d'aide à la supervision
  63. 63. Références et conclusion </li></ul>
  64. 64. Supervision d'un système distribué <ul><li>Tâche complexe </li></ul><ul><ul><li>Très grand nombre d'indicateurs à observer </li></ul></ul><ul><ul><ul><li>Sur différents noeuds
  65. 65. Sur différentes couches </li></ul></ul></ul>!!! Limite du gérable par l'humain !!! System JVM JOnAS Appli. events
  66. 66. Activités de suivi <ul><li>Suivi en ligne </li><ul><li>Maintien en conditions opérationnelles (détection des erreurs, suivi des performances, contrôle de l'état du système)‏
  67. 67. Réaction rapide : qq minutes pour un homme, qq secondes si automatique </li></ul><li>Suivi tactique </li><ul><li>Prévention des dérives (mémoire, threads, ...) et des saturations (pools de connexions, ...)‏
  68. 68. Analyse de tendance et réorganisation des ressources
  69. 69. Réaction de qq jours à qq semaines </li></ul><li>Suivi stratégique </li><ul><li>Capacity planning
  70. 70. Acquisition de matériel / logiciel
  71. 71. Réaction: qq mois à 1 ou 2 ans </li></ul></ul>
  72. 72. Indicateurs clés <ul><li>Performances </li><ul><li>Composant et objet métier (Servlet/EJB/POJO)‏ </li><ul><li>Débit
  73. 73. Temps de réponse </li></ul><li>Organes internes </li><ul><li>Etat des pools (connexions, objets, threads, ...)‏ </li></ul></ul><li>Erreurs </li><ul><li>Logs
  74. 74. Compteurs </li></ul><li>Ressources physiques </li><ul><li>File system
  75. 75. Mémoire
  76. 76. Threads </li></ul></ul>
  77. 77. Infrastructure de supervision
  78. 78. Console Web <ul><li>JASMINe EoS (Eye of SOA) </li><ul><li>Console « modulaire » (kerneos)
  79. 79. Définition de profils utilisateur (en cours) </li></ul><li>Modules </li><ul><li>Monitoring (graphes) </li><ul><li>Live
  80. 80. Post-mortem (fichier, base de données) </li></ul><li>Notification (tableau de bord)
  81. 81. Gestion des sondes </li><ul><li>Démarrage
  82. 82. Arrêt </li></ul><li>Gestion des règles de monitoring </li><ul><li>Définition
  83. 83. Activation / Désactivation </li></ul></ul></ul>
  84. 84. Kerneos <ul><li>Socle commun pour la construction des consoles Web2.0 </li><ul><li>Le Bureau d'Administration JOnAS
  85. 85. Les outils de supervision JASMINe </li></ul><li>Permet: </li><ul><li>Intégration facile des modules Flex (SWF) et HTML
  86. 86. Look and feel commun (feuille de style, etc)
  87. 87. Réutilisation des modules (login/logout, logs) </li></ul><li>Perspective: la console “à la carte” </li></ul>
  88. 92. Aide à la détection d'erreur <ul><li>Basée sur le moteur de règles Drools </li><ul><li>Permet de personnaliser la politique d'administration </li></ul><li>Quelques exemples de règles </li><ul><li>Surcharge CPU sur une période glissante (ignore les pics de charge)‏
  89. 93. Saturation mémoire proche
  90. 94. Saturation de pool proche </li></ul><li>Quelques exemples d'actions </li><ul><li>Génération d'une notification
  91. 95. Envoi de mail
  92. 96. Dump des threads
  93. 97. SNMP
  94. 98. Augmentation du niveau de trace
  95. 99. ... </li></ul></ul>
  96. 102. Editeur de règles de notification
  97. 104. JASMINe Self-Management Managed Element Controller Detection & reaction Managed Element Managed Element Managed Element Autonomic Element Sensors Actuators <ul><li>Self-optimisation
  98. 105. Self-healing </li></ul>LB Apache/JK JOnAS 5 EasyBeans JOnAS 5 EasyBeans Drools WildCAT JK rules JK Ant task MBeanCmd
  99. 106. Agenda <ul><li>Introduction à JASMINe
  100. 107. Outil d'aide à la configuration
  101. 108. Outil d'aide à la maintenance
  102. 109. Outil d'aide à la supervision
  103. 110. Références et conclusion </li></ul>
  104. 111. JASMINe dans le projet SERVERY <ul><li>Projet européen / programme CELTIC
  105. 112. Place de marché de services convergents (télécom, internet et multimedia) </li><ul><li>création, mise à disposition, hébergement de services </li></ul><li>Utilisation de JASMINe </li><ul><li>pour la supervision de l'infrastructure middleware (e.g. clusters de serveurs d'application en environnement virtualisé)
  106. 113. pour la supervision applicative en liaison avec les SLA
  107. 114. scénarios d'automatisation d'actions correctives </li></ul></ul>
  108. 115. JASMINe dans le projet OSAMI <ul><li>Projet européen / programme ITEA 2
  109. 116. Plate-forme pour la fourniture dynamique de services en environnement &quot;ambiant&quot; (basé sur OSGi)
  110. 117. Utilisation de JASMINe pour le scénario de supervision d'un bâtiment &quot;intelligent&quot; capable d'optimiser sa consommation énergétique </li><ul><li>des réseaux de capteurs remontent des informations sur des passerelles locales OSGi (µJOnAS), JASMINe peut faire un premier traitement de rétro-action local
  111. 118. une infrastructure complète de supervision JASMINe est présente sur un back-office </li></ul></ul>O pen S ource Am bient I ntelligence Commons
  112. 119. JASMINe dans le projet SelfXL <ul><li>Projet ANR (ANR-08-SEGI-017)
  113. 120. Scénario : Auto-ajustement de la taille d'une grappe Java EE sur une infrastructure virtualisée
  114. 121. Dans ce projet, les travaux sur JASMINe portent sur </li><ul><li>JASMINe VM (Orange FT) : API agnostique de management des systèmes de virtualisation - Orange-FT
  115. 122. Sondes hyperviseur (Bull)
  116. 123. Des compléments sur JASMINe monitoring (Bull)au niveau de </li><ul><li>gestion des alarmes, éditeur de règles, gestion des sondes </li></ul></ul></ul>
  117. 124. Références <ul><li>Etat de Genève </li><ul><li>Suivi de production des instances JOnAS
  118. 125. Infrastructure JASMINe centralisée
  119. 126. Export des données (CSV) vers un outil interne </li></ul></ul><ul><li>FranceTelecom </li><ul><li>Réalisation d'un démonstrateur </li><ul><li>1 infrastructure JASMINe par serveur (VM ou physique)
  120. 127. Export CSV pour alimenter une base Patrol
  121. 128. Régles de détection d'erreur (out of memory) </li><ul><li>Génération d'un dump des threads </li></ul><li>Console EoS en mode rejeu </li></ul></ul></ul>
  122. 129. Perspectives <ul><li>Repository : Historique des données de configuration, de performance et d'alarme
  123. 130. Design : prise en compte d'une infrastructure existante, intégration d'un outil de fabrication de logiciel &quot;à la carte&quot; (intergiciel + VM)
  124. 131. Monitoring </li><ul><li>découverte d'infrastructure et profils types
  125. 132. extension vers d'autres stacks SOA
  126. 133. intégration d'un outil de reporting
  127. 134. nouvelles sondes </li></ul></ul>
  128. 135. Points clés <ul><li>Solutions ouvertes </li><ul><li>Licence LGPL, pas de coût d'acquisition de logiciel </li></ul></ul><ul><li>Solutions satisfaisants aux exigences de la production </li><ul><li>Suite d'administration intégrée et complète pour l'aide à l'exploitation et la supervision des plates-formes distribuées
  129. 136. Participe à l'amélioration de la QoS </li></ul></ul><ul><li>Solutions évolutives </li><ul><li>Basées sur les standards </li></ul><li>Démonstrations sur le stand Bull </li></ul>http://jasmine.ow2.org

×