540 likes | 1.48k Views
ESB pour les nuls. A quoi ca sert un ESB. Agenda. ESB: Contexte, Théorie et Use cases ESB: Méthodologie et bonnes pratiques Petals Link, l’éditeur de Petals ESB Discussion ouverte: l’édition OpenSource. Vous avez dit « ESB » ?. ?? ?? Vous avez dit « ESB » ?? ??. Contexte.
E N D
ESB pour les nuls A quoi ca sert un ESB
Agenda ESB: Contexte, Théorie et Use cases ESB: Méthodologie et bonnes pratiques Petals Link, l’éditeur de Petals ESB Discussion ouverte: l’édition OpenSource
Vous avez dit « ESB » ? • ?? • ?? Vous avez dit « ESB » ?? • ??
Contexte • Architecture: • Architecture d’entreprise • Architecture du système d’information • Service Oriented Architecture (SOA) • Event Driven Architecture (EDA)
Cartographie d’un SI: L’existant Depository Banks Vendor Setup Vendor Process Servers Customer Perceived Maintenance Universal Account Budget (Imaging) In-Stock VAN NEW Soundscan Shows Reconcilliation Analysis Tool Mesa Data Printer S20-Sales Maintenance Polling I13- Auto Hand Scan Replenishment Customer Apps Printer PO Order Insertions Sales Reports Orders Corrections Calendar Warehouse Due Dates Print Costing Management General Invoice App Broadcast Maintenance Stores & Mrkts PO Filter Interface Smart Plus Millennuim 3.0 Smart Plus Sales Posting Launcher Cell Return to Phones Tally Sheet D01 Post Load Vendor Millennium Credit App Billing Equifax • Non urbanisé: • Réutilisabilité difficile, • Interopérabilité difficile, • Forts coûts de MCO, • Durées longues des évolutions Stock Options Solution Employee Satellite Software Change Notice Resource System A04 - Cust -Promo Scheduling Refund Chks 1 DFK Analysis On-line New Hire Entry AAS Price Resumix P01- Marketing Employee Support Masterfile Bus Systems P09 - P17 Cobra ABC - ISP Cyb. website Co Cycle Physical Tracking CTS Home Inventory ACH Deliveries V04-Sign Prodigy System CTO - Banks - ACH and Pos to POS Transfers Pay Host to AS400 Communication Plan Administrators (401K, PCS, Life) Spec Source Stock SKU Tracking Status Price Counts Testing Supplier Compliance Sales Intercept Employee Layaways Scanning Tax Purchase Spec PO Source SKU Receiving Scorecard Performance Mkt Reactions Coop Polling Price Management SKU Selection Bonus/HR Inventory Info System Tool DRK Customer Repair Planning ABBX I35 Early Warning Tracking System Rebate SKU Rep Transfer SKU Purchase Store Information Order Ad Expense Monitor General PowerSuite Ledger Store Scorecard Sign Tex A System N. Count Corrections Store Budget Reporting Media Merchandise Tx Writer Analysis BMP - Bus Workspace performance Mngt EDI Coordinator Mngr Approval Batch Forcasting Journal Entry Tool Kit AIMS AP Ad Measurement INVENTORY CONTROL APPS - PC INVENTORY CONTROL APPS - PC ACCTS REC APPS - PC Cellular Rollover AIMS OTHER APPS - PC Ad Reporting House Launcher Charges Recon Op. PSP File Capital Projects Connect 3 Credit SS In-Home Data Warehouse Repair Connect 3 Connect 3 Cash Receipts/Credit PDF Transfe Reports Fixed Misc Accounting/Finance Apps - PC/NT Assets Warranty Billing Repair Cash Over/ System Short
Cartographie d’un SI: Tendance • Source: Livre Blanc, « Comprendre et savoir utiliser un ESB dans une SOA », http://blog.xebia.fr
Les enjeux de la soa • Etatcible du SI • Homogène • Rationnel • Etatactuel du SI • Hétérogène • Redondant Agile Rigide • Divergence • Besoins métier • SI • Alignement • Besoins métier • SI Agilité du SI : Aptitude du SI à absorber les pressions métiers et technologiques sans accroître sa complexité tout en augmentant sa fiabilité et en diminuant son coût
Les enjeu de la SOA….et de Petals Link • Etatcible du SI • Homogène • Rationnel • Etatactuel du SI • Hétérogène • Redondant Comment ? Agile Rigide • Un modèle d’Urbanisation • Architecture Orientée Services (SOA) • Des outils de développements et d’infrastructures • BPM / ESB / MDM • Notre méthodologie préférée • Implémentation Bottom up / Gouvernance • Un modèle économique • Open Source professionnel
Les principes de la SOA Services Enterprise Service Bus • La fin des applications traditionnelles…. • …au profit de la trilogie: BPM, Services, ESB • …et du MDM “MDM needs SOA and SOA needs MDM” Andrew White - Gartner
Enterprise Service Bus L’interaction entre un consommateur et un fournisseur de service passe par un médiateur : l’Enterprise Service Bus Portails Portlets Workflow Applications BPEL J2EE Partenaires • Enterprise Service Bus • Couplagefaible • Routage des messages • Sécurité • Gestion des Services • Qualité de Service • Supervision • Valorisation de l’existant Connecter Orchestrer Transformer ERP Serveurs d’applications J2EE .NET Applicationsspécifiques Cobol, C
Petals ESB : les cas d’usages SI Échanges • Echanges B2B / B2C • Intégration Intégration Appli 1 Appli 3 A2A Appli 2 Appli n • SOA Appli 1 Exposition de services Appli n A2A / B2B / B2C
PETALS – L’ESB des standards Connecteurs (BC) New SE Transformation Orchestration BAM Composants d’intégration (SE)
Topologies d’intégration Modèle « Concentrateur » • Un serveur unique auquel se connectent les applications • Pour exposer des services • Pour consommer des services • Constitue le point sensible de l’architecture (Single Point of Failure)
Business Services Business Services Business Services Business Services Business Services Business Services WS-BPEL WS JMS JMS WS WS WS-BPEL Distributed registry Centralized Administration and Monitoring Business Services Business Services ESB: classique VS distribué ESB ESB JMS JMS JMS Administration Administration JBI distribué Environnement JBI classique JBI Env. JBI Env. XSLT Petals Link a étendue la spécification JBI, afin de proposer un ESB nativement distribué JBI Env.
PETALS, L’ESB Distribué Portail Services Web Front Office Connecteur Soap/http Moteur d’Orchestration BPEL, SCA, JSR181 Noeud Petals Transformation XSLT Routage Peer to Peer Protocole Adaptatif Noeud Petals Noeud Petals Annuaire distribué ConnecteurMultiConnect Connecteur JMS Connecteur Soap/http Back Office Exposition des applications existantes en COBOL ou C sous forme de services Services Web Services JEE
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
ESB D’entreprise / De domaine applicatif Infrastructure de service transverse au SI Connecter / Router Application ESB Applicatif ESB Applicatif Connecter Orchestrer Transformer Connecter Orchestrer Transformer Application BPEL Workflow BPEL Workflow Legacy J2EE Legacy J2EE
PETALS – L’ESB des standards Connecteurs New SE New Transformation Orchestration BAM Composants d’intégration
Exemples de projets • Retours d’expériences
Cas d’usage: Portail usagers Portail CG33 Annuaire AAE Bus de services PEtALS IODAS PEGASE Bourses Scolaires RMI APA Demandes de transports Demandes de bourses
Cas d’usage : Exposition de Services chez ACOSS (II) • Architecture technique ACOSS • 8 Data Centers • 2 points d’accès sur Internet 4 serveurs • 8 serveurs régionaux 16 serveurs • Connecte 105 MainFrames • Gère 30 * 105 = 3150 instances de services exposés vers des partenaires • Routage basé sur l’annuaire des cotisants • Certains services correspondent à l’enchaînement de plusieurs services Mainframe • Transformations de format • Installé sur HAWAI, socle standardisé ACOSS • Distribution CentOS • Serveurs Linux bi-processeur dual-core • Les résultats obtenus • 5000 utilisateurs (extension en cours jusqu’à 10 000 utilisateurs) • Tests effectués à 200 requêtes / seconde sur un serveur • Temps d’échange total inférieur à 200 ms sur ptf de test
Cas d’usage : Plate-forme d’intégration chez Orange (I) Cmd.-Livr. SAV VOD-prov Fact./Reco. Rev. … Réseau ROSE … CLID,ND,Login/ Passwd,EPID SMV1 SMV2 TV …
Cas d’usage : Plate-forme d’intégration chez Orange (II) • ROSE : ROutingSErvices • Petals ESB en tantquebrique de médiation • Haute disponibilité et scalabilité • De 2 à n PFS (10 plateformesactuellement) • Routagedynamique de WS basésur le contenu de la table de routage • IdClient->PFS • Split/Agrégation de données en mode asynchrone • Transformation de lots d’appelsasynchrones en appelssynchrones • Priorisation des flux
Cas d’usage : Plate-forme d’échanges à la DGME (I) Partenaire Partenaire UDDI Données Espace de partage ESB – Petals Processus de Routage ko Réception Validation Récupération PJs Interrogation UDDI Envoi Acquittement 1 2 3 4 5 6 ko ko ko Administration Presto
Cas d’usage : Plate-forme d’échanges à la DGME (II) Portails : MonServicePublic.fr, … ESB – Petals Processus de Routage ko Réception Validation Récupération PJs Interrogation UDDI Envoi Acquittement 1 2 3 4 5 6 ko ko ko Vue technique ESB – Petals Flux GF 2 4 5 6 1 3 SA SA SA SA SA SA SA SA SA SA SA SA SA SA Pub/sub Pub/sub Pub/sub Pub/sub Métadonnées SIRET Service Guichet Numéro Dossier Métadonnées Métadonnées SE KPI Nom des PJs Connecteur Coordonnées BDD
Approche(s) Source: http://blog.xebia.fr
Approche : Top/Down • Est la voie royale: • Pilotage de la SOA par les besoins métiers • Minimise la redondance de services • Mais: • Implique une refonte de tout ou partie du SI, • jugée: • trop couteuse, • trop risqué, • trop longue • Adhésion difficile des équipes de développement Source: http://blog.xebia.fr
Approche : Bottom/Up • Séduit par plusieurs aspects: • Proche de la démarche habituelle de développement: • « culture projet » • Coût faible du ticket d’entrée • Mais: • Bloque le pilotage par le métier, • Risque fort de : • perte de l’« agilité », • mauvaise granularité, • Contraint d’avoir un coût logiciel cohérent avec le budget du projet • ESB JBI open source prends toute sa dimension Source: http://blog.xebia.fr
Approche recommandée • Démarche progressive de mise en œuvre et de déploiement • Introduction d’un « couplage lâche » entre les systèmes applicatifs • Respect des normes et standards => garantie d’interopérabilité • Mise en œuvre encadrée, • Bonne granularité des services • Répartition des rôles plus efficace • Recentrage des équipes fonctionnelles sur leur « cœur de métier » • Spécialisation et capitalisation sur les problématiques d’intégration ESB ESB Init. Cadrage Lot 1 Moa + Moe Dossier d’architecture Processus de déploiement par lot Implémentation Lot 1 Projet d’ouverture de services (Portail, partenaires,….)
Petals Master - Positionnement Gestion / capitalisation des services s s s s s s s s s s s s s s • Pourquoi: • Connaissance • Partage • Mutualisation • Capitalisation • Réutilisation • Maîtrise / Qualité • Comment: • Catalogue / Référentiel • Surveillance / Alerte • Contrats de services • SLA / QOS L’outil stratégique de la DSI
Architecture retenue : des techniques d’EAI SU d’exposition SU métier SU métier • Couplage faible : • Format technique, • Format pivot, • Format métier, • Transformation • Agilité • Services techniques • Services métiers • Content-based routing BC Format métier SE Format pivot BC Format technique Service techniques
Retour sur les coûts de développement ? • Composant JBI (BC/SE): • Coût important car c’est le moteur des services, • Services (SU) • Sur SE: • Les coûts de spécifications sont plus important que ceux de développement car nécessite : • de bien définir l’interface, • de veiller à la granularité, • développer paramétrer le composant • Sur BC • Moindre coûts de spécifications car dirigées par le service associé sur la ressource applicative. • Moindre coût de développement car pas de logique métier.
PetalsLink, • L’éditeur de la solution Petals
Petals Link • Editeur de solutions Open Source professionnelles pour l’intéropérabilité et l’infrastructure de la SOA Petals ESB : le bus de services distribué Petals Master: la solution de gouvernance des services Au sein d’une communauté Open Source dédiée au thème du middleware • Effectifs (01/2010): 30 personnes • Profils : Architectes Middleware, Consultants Architectures, Développeurs Java/JEE • Chiffre d’affaires : 2 M€ en 2009 • Siège social à Toulouse – Agence à Grenoble – (Paris en 2010) Petals Link a pour ambition de figurer de manière durable dans le TOP 3 mondial des éditeurs de solutionsOpen Source pour la SOA
Nos Différentiateurs (I) • Des investissements R&D constants et importants pour créer des solutions SOA accessibles en Open Source • 8 projets R&D en cours • A ce jour, notre roadmap est financée jusqu’en 2012 • Des solutions basées sur des standardsJava Business Integration • WSDL, Web Services, WS* • BPEL • SCA • CBDI • UDDI
Nos Différentiateurs (II) • Une solution d’infrastructure distribuée et best of breed • La volonté de Petals Link de s’engager directement sur la mise en œuvre opérationnelle et le maintien en conditions opérationnelles de la suite Petals • Consulting / Formation / Expertise / Support
Références / Intégrateurs Almerys Ils font confiance à Petals Link :
L’offre de services Petals Link Missions Architecture • Spécifications Architecture – Best practices SOA • Expertise / Conseil / Cadrage de projets ESB Compétences • Développement Java / J2EE / JBI / Petals • Architectes SI et solutions d’intégration • Conseil & Intégration / Mise en œuvre SOA Missions Intégration / Mise en oeuvre • Intégration / Prototypage / Développement de composants / Spécialisation Formations SOA / Petals • Introduction à la SOA (1 j) • Mise en œuvre Petals ESB (3 j), Petals Master (2j) • Administration / Exploitation Petals ESB (2 j) • Gouvernance SOA (2j) Souscriptions Petals • Développement / Production / OEM
Profitez du modèle open source • Capacité d’évolution du produit en fonction de vos besoins (Customisation) • Evolution de la solution (évolutions génériques): • Par l’Editeur: Roadmap • Par les utilisateurs ou Intégrateurs: • Contributions reversées (Cf. principe de la licence LGPL) et intégrées dans une release officielle par l’éditeur • Financement (éventuellement mutualisé) de l’évolution auprès de l’éditeur • En accord entre le Client et nous: • Elaboration ou validation de la solution technique • Planification de la release officielle correspondante • Prestation de support assurée en continuité • Cofinancement multi-parties • Spécialisation possible de la solution selon le niveau de spécificités Client
Discussion ouverte • Bonnes surprises / Points de difficulté
Merci pour votre attention Petals Link 4, rue Amélie 31 000 Toulouse : + 33 5 62 73 43 80 : + 33 5 62 24 40 90 contact@petalslink.com www.petalslink.com Pascal PORTES pascal.portes@petalslink.com Christophe DENEUX christophe.deneux@petalslink.com