iPaas with Fuse Fabric Technology

4,312 views
4,008 views

Published on

Build a Cloud Day presentation about Fuse Fabric technology in the cloud and how integration projects / architectures can be designed top of cloudstack, openstack, amazon, ...

iPaas with Fuse Fabric Technology

  1. 1. Integration in the cloud - IPaaS with Fuse Technology Charles Moulliard Apache Committer Enterprise Architect @ RedHat
  2. 2. Speaker : Charles Moulliard● Engineer in Agronomy & Master in Zoology● Enterprise Architect @RedHat● Committer → Karaf (PMC), Camel (PMC), ServiceMix, DeltaSpike, Fuse Fabric Twitter : @cmoulliard LinkedIn : http://www.linkedin.com/in/charlesmoulliard Blog : http://cmoulliard.blogspot.com Slideshare : http://www.slideshare.net/cmoulliard
  3. 3. Agenda● Introduction & Key concepts● What is iPaas ?● Fuse Fabric ?● Fabric in the cloud● Demo & Conclusion
  4. 4. Introduction
  5. 5. What is the cloud ● Cloud computing is the use of computing resources (hardware and software) that are delivered as a service over a network (typically the Internet). ●Characteristics : Agility, Virtualization, Security, Performance, Reliability, Maintenance, ...
  6. 6. IaaS ●IaaS : Provide computers/virtual machines or resources (= Infrastructure) ● Virtual machines uses hypervisor (Xen, KVM, ...)
  7. 7. PaaS ● Deliver a computing platform typically including operating system, programming language, execution environment, database, web server, …
  8. 8. SaaS ● Install and operate application software in the cloud and cloud users access the software from cloud clients.
  9. 9. All together ● Can we resume ?
  10. 10. Deployment models ● Public / Hybrid / Private ● Is it different from Extranet/Intranet ...
  11. 11. iPaaS“A new paradigm or simply aeasiest way to deploy projects”
  12. 12. iPaas● What is Integration Platform as a Service ?● Combination of Iaas and Paas
  13. 13. Integration ● Integration everywhere = iPaaS
  14. 14. iPaas - Definition ● Definition : Provide Fabric runtimes top of clouding machines for public, private or hybrid clouds ● What is Fabric ? - Combination of Apache Karaf & Java Agent - Agent synchronized with with Apache Zookeeper
  15. 15. Apache Karaf ● Birthdate - June 2010 ● Comes from ServiceMix kernel runtime ● Multi-Technology Java OSGI Server ● Provide lightweight container(s) where ● Camel Integration Routes ● CXF WebServices ● ActiveMQ queues/topics ● Java / Web applications ...
  16. 16. Apache Karaf
  17. 17. Apache Karaf
  18. 18. Characteristics● Administration console → local, remote - ssh, web, jmx● Provisioning system (features)● Hot deployment & configuration management● Instances management● Security - Authentication (JAAS)
  19. 19. Architecture - MessagingBus operates the exchanges between endpointsusing Camel, NMR, JBI from(«ftp://server/dir») .beanRef(«myBean»); from(«cxf:bean:myWS») .beanRef(«myBean») ;
  20. 20. Architecture – Java (Spring / Blueprint)OSGI offers --> Service Registry (aka JNDI) where "interfaces" are registered <bean id="incidentServiceTarget" class="org.apache.camel.service.impl.IncidentServiceImpl"> <property name="incidentDAO"> <osgi:reference interface="org.apache.camel.dao.IncidentDAO"/> </property> </bean>
  21. 21. Architecture - Messaging + JavaServices consumed by different clients from(« cxf:bean:myWS ») .beanRef(« myBean », « validate ») .beanRef(«jpaService») .beanRef(« genResponse »);
  22. 22. Architecture - Messaging + Java + Web Can be web platform, it uses  Jetty Web Server
  23. 23. Fuse Fabric
  24. 24. Fuse Fabric ● “Integration” projects are really hard to install, configure and run ● Distribution of workload/process is not an easy task ● We want to make it easy!
  25. 25. Fuse Fabric● http://fabric.fusesource.org/● Open Source Software for “configuring, provisi oning & running Fuse and Apache software on any machines” physical, virtual, public, private +public cloud● Keeps you DRY from those rainy clouds :)● Weave your containers into an easy to manage Fabric
  26. 26. Karaf Administration● Allows to create instanc Karaf admin:create Karafes & administrate locally / “root” “toto”remotely Karaf Machine AA BUT Machine “nestor”● Instances Not “cloned” Copy instance● Configurations updated manually Karaf “nestor”● Process is error prone Machine BB Machine
  27. 27. Fuse Fabric fabric:create● Fabric will create Fabric “master” Fabric “toto” instances & manage • Locally Machine AA Machine Fabric “nestor” • Remotely (ssh) • In the cloud (jclouds) fabric:create ….● Deploy artifacts● Cloud instance created Fabric using jclouds api “aws-ec2” Cloud Infra Cloud Infra
  28. 28. What is Fabric● Registry of Configurations● Java Agents● Profiles = Artifacts to be deployed● But Also a Service factory ;-) ● Create “indirection” points ● Load balancing and failover ● Easy elastic scaling of services
  29. 29. Registry● Based on Apache ZooKeeper● Is a Centralized Coordination Service,distributed and Highly Reliable● Uses a directory & File based structure● Part of Fuse “Ensemble”
  30. 30. Agent● Fabric-agent deployed / Karaf container● Contains a Zookeeper client● Agent listens to the registry to configure, provision features & services● Send info(s) to registry (RMI, SSH)
  31. 31. Fuse Fabric : How it works Fabric “Master” Fabric command Zookeeper Maven ssh Shell script Fabric “Instance” Cloud Machine
  32. 32. jclouds“A Cloud Tooling framework”
  33. 33. jclouds ● Umbrella project ● Open source library that helps you get started in the cloud ● API gives you the freedom to use portable abstractions or cloud-specific features.
  34. 34. jclouds● BlobStore api= storage mngt (S3, ...)● Compute Api= manage nodes● Node api● Tools = Karaf
  35. 35. jclouds ● 30 cloud providers & cloud software stacks including Amazon, GoGrid, Ninefold, vCloud, OpenStack, and Azure.
  36. 36. Who uses jclouds ● RedHat - OpenShift to deploy applications to Terremark, RackSpace & EC2 ● Twitter, Adobe ● GigaSpace, SalesForces ● General Electric ● Camel, Karaf, Cellar, Fabric
  37. 37. Fuse Fabric : Cloud providers Amazon EC2 Cloustack Openstack
  38. 38. Fuse Fabric - Install ● Deploy features (= artifacts required) ● Will install commands, libraries required to communicate with Cloud Providers and manage instances
  39. 39. Fuse Fabric - Setup ● A. Create “ensemble” (optional) ● B. Add a provider A B C A = Api of the jclouds provider B = Public key C = Password
  40. 40. Fuse Fabric – Create VM ● A. Create a container in the cloud Jclouds in action ● B. Connect ssh session
  41. 41. Fuse FMC to simplify your life
  42. 42. Fuse FMC
  43. 43. Fuse FMC
  44. 44. Fuse FMC
  45. 45. Fuse FMC
  46. 46. iPaaS Architectures
  47. 47. Architecture - “On an Island” Container Container Container 1 2 3 Container Container 1 2 Fabric Ensemble Cloud A Fabric Ensemble Cloud B
  48. 48. Architecture - “Interconnected” Client Service Container Container Container Container 1 2 3 4 Fabric Ensemble Cloud B Cloud A
  49. 49. Using Fabric Camel
  50. 50. Architecture - “Integrated” Container Container 3 4 Network of Broker Cloud A Container Container 1 2 Fabric Ensemble Intranet
  51. 51. Using Fabric ActiveMQ
  52. 52. Demo & Conclusion
  53. 53. Conclusion ● Fuse Fabric technology is ready and mature to allow to deploy iPaas projects ● Use best of Java api (jclouds) and support many cloud providers ● Support Public, Private and Hybrid infrastructure & Virtualization ● Designed to deploy Camel, CXF, ActiveMQ in the cloud … Java Applications
  54. 54. Questions @cmoulliard cmoulliard@redhat.com cmoulliard.blogspot.com slideshare.net/cmoulliard Fuse Fabric : http://fabric.fusesource.org

×