Post on 03-Jul-2015
Leading Open Source SOA
Séminaire ESB et Open SourceGaël Blondelle – CTO – EBM WebSourcing
Organisé par
2
ESB Open Source
Virtualisation des servicesInfrastructure SOA
3
ESB Open Source
Virtualisation des servicesInfrastructure SOA
4
• Gaël Blondelle• Directeur Technique et
Fondateur d’EBM WebSourcing
• Chairman du Technology Councildu consortium OW2
• Précédemment Architecte SOA et Middleware dans un grand groupe Telecom
• Créateur du projet PEtALS ESB
� gael.blondelle@ebmwebsourcing.com � (+33) 5 34 32 03 12
5
Les idées pré-concues sur la SOA
• SOA = Web services
• SOA = BPM
• SOA = Urbanisation
• ESB = Méthodologie
6
AGENDA
• SOA et ESB• Présentation PEtALS
– Architecture
– Fonctions
– Cas d’usage
• Démonstration• Conclusion
7
8
Intégration dans un monde orienté service
Un changement d’approche :
• 1950-2006: Intégration = développer puis intégrer
• 2000: Émergence de la SOA� 2000: Web Services� 2003: Accélération de l’évolution des solutions d’intégration
• 2006-2012: Intégration = Modèle de programmation dominant
Analyser Modéliser Concevoir Exécuter
Optimiser
Expose Services Design Process Run Business
Consolidation & Governance
9
• Les applications communiquent en point Les applications communiquent en point Les applications communiquent en point Les applications communiquent en point ààààpointpointpointpoint
• Le fameux Le fameux Le fameux Le fameux «««« plats de spaghettisplats de spaghettisplats de spaghettisplats de spaghettis »»»»
Intégration classique
10
• « Structurer » les interactions autour d’un bus
– Chaque application est connectée de façon unique à un bus d’entreprise
Cible de la SOA
11
• Coexistence des deux modesCoexistence des deux modesCoexistence des deux modesCoexistence des deux modes
• Le passage dLe passage dLe passage dLe passage d’’’’un mode un mode un mode un mode àààà llll’’’’autre est un enjeu de la autre est un enjeu de la autre est un enjeu de la autre est un enjeu de la gouvernance du SIgouvernance du SIgouvernance du SIgouvernance du SI
Une transition en douceur
12
Les enjeux de la SOA
• Ouverture– Fournir des services à des partenaires ou à des clients
• Agilité– Réagir rapidement à tous les changements
• Réglementaires• Évolution du métier• Fusion / Acquisition,…
• Réutilisation / Rationalisation– Réduire les doublons entre applications– Valorisation des applications existantes
• Interopérabilité / Intégration d’applications– Gérer l’intégration entre des applications dans le SI
13
• Un service est
– Une fonction ou un ensemble de fonctions
– disposant d’une partie publiée : l’interface du service
– accessible via un procédé d’invocation
Le service est une action exécutée par un « producteur » à
l’attention d’un « consommateur »
Qu’est ce qu’un service
14
Du composant au service
• Composant– Approche de réutilisation de code ou de librairies– Lorsqu’il manque une fonctionnalité dans un composant
• Donne lieu à une nouvelle version du composant• Pb : Il faut propager la nouvelle version du composant dans chaque
application pour qu’elle bénéficie de l’évolution
• Service– Le service est un élément applicatif qui est exploité dans le SI
– Un nouvelle fonctionnalité donne lieu à une nouvelle version du service
• Déployée et mise à disposition dans le SI• Directement disponible pour toutes les applications qui utilisent le
service
Différence fondamentale le cycle de vie
15
Bus d’entreprise
ERP
Legacy
CRM
Messagerie propriétaire
WSDLWSDL
WSDL
B2B
.NETPortal
WSDL WSDL
WSDL
Messagerie standardisée
16
Un ESBESBESBESB (Enterprise Service Bus) basé sur les standards Java, JBI et Web Services
est une bonne technologie pour instancier une SOA.
Une approche SOA pragmatique
17
AGENDA
• SOA et ESB• Présentation PEtALS
– Architecture
– Fonctions
– Cas d’usage
• Démonstration• Conclusion
18
Enterprise Service Bus
• L’interaction entre un consommateur et un fournisseur de service passe par un médiateur : l’Enterprise Service Bus
Enterprise Service Bus� Couplage faible� Routage des messages� Valorisation de l’existant� Sécurité� Gestion des Services� Qualité de Service� Adaptation aux changements� TCO réduit
19
• Project created in June 2005
• Hosted by ObjectWeb
• Leaded by EBM Websourcing
• Available at http://petals.objectweb.org
• Supported by a French R&D funded project called JonES – 6 partners : INRIA, ENSTIMAC, EBM WebSourcing, OpenWide, Scalagent and France Telecom R&D– Total budget : ~ 2 200 000 Euros– Workload : ~ 250 hommes mois– 95% contributions go to Open Source PEtALS
1. Name
3. Birthday
4. Place of birth / Community
8. Address
2. Project Leader
5. Economic Model 6. Validity
7. Signature
9. Version actuelle
11. Contributeurs
PEtALS
EBM WebSourcing
Sept.2006
Open Source
(LGPL)
No limit
http://petals.objectweb.orgwww.ebmwebsourcing.com
+33 (5) 34 32 03 10
Specific Sign :
Solution hautement distribuée
2.0
Une communauté active:
France Telecom
Inria
Open Wide
Cap Gemini
...
Identité
20
Topologies d’intégration
Modèle « Concentrateur »
• Un serveur unique auquel se connectent les applications – Pour exposer des services
– Pour consommer des services
• Point sensible de l’architecture
21
Topologie ESB unifié
Architecture PEtALS• Connection peer to peer entre les noeuds
• Du point de vue d’un consommateur ou d’un fournisseur de service, il n’y a qu’un ESB
• On ne se soucie pas de la localisation physique du service à appeler
22
Topologie ESB unifié
Modèle « ESB Unifié » et Domaines
• Dans une entreprise, chaque entité peut être vue comme un domaine de responsabilité(comptabilité, stock,etc.)
�L’ESB peut être administré en domaines tout en gardant son unicité
23
Intégration de partenaires
• Intégration d’utilisateurs extérieurs au domaine de confiance de l’entreprise– Clients Internet– ESB partenaires
• Localiser la communication avec l’extérieur sur un noeud spécifique– La sécurité est gérée sur ce serveur– En cas d’attaque importante, possibilité de débrancher le noeud
du reste de l’ESB
24
JBI Env.
WS
Container JBI distribuéSolution d’intégration unifiée
BusinessServices
BusinessServices
BusinessServices
BusinessServices
JBI Env.
JBI Env.
JBI Env.
Distributed registry
JMS
WS-BPEL XSLT
CentralizedAdministration
andMonitoring
JBI distribué
Environnement JBIclassique
JBI Env.
WS-BPEL
JMS
JMS
JMS
WS JMS
WS
BusinessServices
BusinessServices
Administration Administration
BusinessServices Business
Services
25
Annuairedistribué
RoutagePeer to Peermulti-protocol
OrchestrationMoteur BPELPOJO
Nœud PEtALS Nœud PEtALS
Nœud PEtALSTransformationXSLT
Connecteur Soap/http
Connecteur JMS
exposition d’existant Cobol sous forme de services
Portail
JMS services
WebServices
Connecteur CICS Connecteur Soap/http
WebServices
Front Office
Back Office
PEtALS : l’ESB distribué
26
Workflow DroolsEJB
Quartz Script
JBI container
EIPXSLT CSV POJO
SOAPJMS
MOM
AS1/2
EDI
BPEL
smtp,pop,imap
• Infrastructure de Services• Système à base de Plugins
• SLA, QoS
MonitoringAdministration
Component Development Kit
FTP
file transfer
JDBC
xquareHTTP XMPP RMI
Composants
27
Virtualiser les services
Les points clés de PEtALS
• PEtALS est basé sur des standards
– Java, XML et Web Services
– JSR 208 – Java Business intégration JBI
• PEtALS a une architecture de type plugin
– Facilement extensible
• PEtALS est léger, largement distribué, et scalable à la fois pour le A2A et le B2B intégration
• PEtALS fournit une infrastructure robuste pour votre SOA
• PEtALS agit comme un Bus virtuel où vos services et vos données sont intégrés
• PEtALS est supporté par EBM WebSourcing et son réseau de partenaires intégrateurs
• PEtALS est open source (LGPL) et permet d’implémenter une SOA avec le meilleur TCO
Une solution dédiée aux grands comptes:
e-gov, banque, assurance, telco, défense …
Une Infrastructure de service unifiée
28
Cas d’usage - Une architecture agile
Portail
Portlets
Workflow
Serveur d’application Serveur Legacy Progiciel
ESB
TransformerOrchestrerConnecter
ApplicationComposite
BPEL
Partenaire
J2EE
COBOLJ2EE .NET
29
• «««« Interface doesn't matterInterface doesn't matterInterface doesn't matterInterface doesn't matter »»»»– Une solution intégrée peut être construite par intégration de
composants indépendants (cas courant des éditeurs de solutions)
– Une solution intégrée doit souvent d’intégrer au sein d’un système plus
important
– En utilisant l’ESB comme lien entre les composants, l’ensemble du
système est préparé à l’intégration (« Integration ready »)
Cas d’usage - OEM
CRM Production Comptabilité
ESB
TransformerOrchestrerConnecter
Front office unifié
Applications tierces
30
AGENDA
• SOA et ESB• Présentation PEtALS
– Architecture
– Fonctions
– Cas d’usage
• Démonstration• Conclusion
31
Etapes d'Intégration avec J.B.I. 1/3
• Installation des composants
– BC pour la communication
– SE pour l'orchestration, la transformation...
JBI container
Application Aprotocole X
Application Bprotocole Y
32
Etapes d'Intégration avec J.B.I. 2/3
• Déploiement des artefacts
– Configuration des BC pour communiquer avec les applications
– Configuration des SE pour définir l'enchaînement des services,...
– Tissage des liens entre les consommateurs et les fournisseurs
BPEL
JBI container
BC Y
Application Aprotocole X
Application Bprotocole Y
BC X
33
Etapes d'Intégration avec J.B.I. 3/3
• L'intégration est réalisée
– L'application A et B peuventcommuniquer
• La réalisation des artefacts de configuration est l'étapela plus longue de l'intégration
BPEL
JBI container
BC X BC Y
Application Aprotocole X
Application Bprotocole Y
34
Administration JBI
ServeurJMX
<jbi-install-component file="soap-component.zip"
port="7700"
host="localhost" />
<jbi-start-service-assembly name="soap-configuration"
port="7700"
host="localhost" />
35
Console Web de Supervision
• Connexion à un des noeuds de PEtALS• Collecte des différentes informations provenant
des serveurs de l’ESB
– Statistiques– Trace des échanges– Logs– Annuaire– …
36
Console Web de Supervision
• Statistiques sur les messages échangés– Dans le domaine– Sur un serveur– Sur un composant– Par service
37
Console Web de Supervision
• Trace des échanges– Liste des échanges dans le domaine– Cycle de vie de l’échange– Détails des messages d’un échange
38
Console Web de Supervision
• Statistiques d’un serveur
39
Console Web de Supervision
• Files de messages d’un serveur– Status des files de messages
par composant– Nombre de messages en
attente– Taille limite
40
AGENDA
• SOA et ESB• Présentation PEtALS
– Architecture
– Fonctions
– Cas d’usage
• Démonstration• Conclusion
41
A venir en 2008
Extension de la plate-forme SOA
• PEtALS 3.0 - Améliorations– Gestion des larges configurations– Extension des outils Eclipse pour les déploiements complexes– Monitoring: Nouvelles fonctions de QoS, SLA
• DR@GON béta :– Registry distribuée et outils de gouvernance basés sur les ontologies– Consolidation des Services (basé sur SCA)– Gestion du cycle de vie des services
• Services Mash-Up :– Composition de Services: One-click IT alignment with Business– Moteur BPM : moteur d’orchestration BPMN natif– Editeur BPM Eclipse: découverte des services, outils de
transformation XML
42
En conclusion
• Exposer des services via une infrastructure ESB• Concevoir des processus orchestrant les services
existant• L’infrastructure ESB supporte l’exécution et la
supervision de la SOA• La gouvernance permet d’améliorer et de
consolider les services
Expose Services Design Process Run Business
Consolidation & Governance
43
En conclusion
• Solution open source d’ESB
– Performant pour des configurations de type « concentrateur »
– Seule solution open source pour la virtualisation des services de type « ESB unifié »
• Qualité : communauté de développeurs et d’utilisateur
• Code accessible – Pas de lock in
• TCO moindre que les solutions propriétaires
44
Références
Ils nous font confiance :
45
Recherche et Développement
• Open Source community
• NESSI - European Technology Platform(Networked European Software and Services Initiative)
• InterOp Vlab GSO– Virtual Laboratory on Enterprise Interoperability– To develop a new science: Enterprise Interoperability
• Agence Nationale de la Recherche– JOnES, SCORWARE, ISYCRI, SEMEUSE
• EU-IST-FP7– SOA4ALL, Synergy
46
Quelques mots sur EBM WebSourcing
Être le leader Européen des solutions Open Source pour la SOA et un acteur de premier plan au niveau mondial
Participer activement à la dynamique de la communautéOpen Source dédiée au thème du middleware
Notre ambition
Nous engager directement dans les projets de nos Clients, en partenariat avec des intégrateurs leaders sur le thème de la SOA
47
MERCI DE VOTRE ATTENTION
• Christophe Gras – Directeur Hortis� +41 78 878 18 70christophe.gras@hortis.ch
• Pascal Portes – Directeur Commercial�+ 33 6 82 81 83 73pascal.portes@ebmwebsourcing.com
• Gaël Blondelle – Directeur Technique� + 33 6 88 34 67 02 gael.blondelle@ebmwebsourcing.com