54
Integraon in the cloud - IPaaS with Fuse Technology Charles Moulliard Apache Commier Enterprise Architect @ RedHat

iPaas with Fuse Fabric Technology

  • View
    3.622

  • Download
    1

Embed Size (px)

DESCRIPTION

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, ...

Citation preview

Page 1: iPaas with Fuse Fabric Technology

Integration in the cloud - IPaaS with Fuse Technology

Charles MoulliardApache CommitterEnterprise Architect @ RedHat

Page 2: iPaas with Fuse Fabric Technology

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

Page 3: iPaas with Fuse Fabric Technology

Agenda

● Introduction & Key concepts● What is iPaas ?● Fuse Fabric ?● Fabric in the cloud● Demo & Conclusion

Page 4: iPaas with Fuse Fabric Technology

Introduction

Page 5: iPaas with Fuse Fabric Technology

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, ...

Page 6: iPaas with Fuse Fabric Technology

IaaS

● IaaS : Provide computers/virtual machines or resources (= Infrastructure)● Virtual machines uses hypervisor (Xen, KVM, ...)

Page 7: iPaas with Fuse Fabric Technology

PaaS

● Deliver a computing platform typically including operating system, programming language, execution environment, database, web server, …

Page 8: iPaas with Fuse Fabric Technology

SaaS

● Install and operate application software in the cloud and cloud users access the software from cloud clients.

Page 9: iPaas with Fuse Fabric Technology

All together

● Can we resume ?

Page 10: iPaas with Fuse Fabric Technology

Deployment models

● Public / Hybrid / Private● Is it different from Extranet/Intranet ...

Page 11: iPaas with Fuse Fabric Technology

iPaaS“A new paradigm or simply a

easiest way to deploy projects”

Page 12: iPaas with Fuse Fabric Technology

iPaas

● What is Integration Platform as a Service ?● Combination of Iaas and Paas

Page 13: iPaas with Fuse Fabric Technology

Integration

● Integration everywhere = iPaaS

Page 14: iPaas with Fuse Fabric Technology

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

Page 15: iPaas with Fuse Fabric Technology

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 ...

Page 16: iPaas with Fuse Fabric Technology

Apache Karaf

Page 17: iPaas with Fuse Fabric Technology

Apache Karaf

Page 18: iPaas with Fuse Fabric Technology

Characteristics● Administration console →

local, remote - ssh, web, jmx● Provisioning system (features)● Hot deployment & configuration

management● Instances management● Security - Authentication (JAAS)

Page 19: iPaas with Fuse Fabric Technology

Architecture - Messaging

from(«ftp://server/dir»).beanRef(«myBean»);

from(«cxf:bean:myWS»).beanRef(«myBean») ;

Bus operates the exchanges between endpoints using Camel, NMR, JBI

Page 20: iPaas with Fuse Fabric Technology

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>

Page 21: iPaas with Fuse Fabric Technology

Architecture - Messaging + Java

from(« cxf:bean:myWS »).beanRef(« myBean », « validate »).beanRef(«jpaService»).beanRef(« genResponse »);

Services consumed by different clients

Page 22: iPaas with Fuse Fabric Technology

Architecture - Messaging + Java + Web

Can be web platform, it uses Jetty Web Server

Page 23: iPaas with Fuse Fabric Technology

Fuse Fabric

Page 24: iPaas with Fuse Fabric Technology

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!

Page 25: iPaas with Fuse Fabric Technology

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

Page 26: iPaas with Fuse Fabric Technology

Karaf Administration

● Allows to create instances & administrate locally / remotely BUT

● Instances Not “cloned”● Configurations updated manually● Process is error prone

Machine A

Machine A

Machine B

Machine B

Karaf“root”

Karaf“toto”

Karaf“nestor”

Karaf“nestor”

admin:create

Copy instance

Page 27: iPaas with Fuse Fabric Technology

Fuse Fabric

● Fabric will create instances & manage • Locally• Remotely (ssh)• In the cloud (jclouds)

● Deploy artifacts● Cloud instance created using jclouds api

Machine A

Machine A

Cloud Infra

Cloud Infra

Fabric“master”

Fabric“toto”

Fabric“nestor”

Fabric“aws-ec2”

fabric:create

fabric:create ….

Page 28: iPaas with Fuse Fabric Technology

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

Page 29: iPaas with Fuse Fabric Technology

Registry● Based on Apache ZooKeeper● Is a Centralized Coordination Service, distributed and Highly Reliable● Uses a directory

& File

based structure● Part of Fuse

“Ensemble”

Page 30: iPaas with Fuse Fabric Technology

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)

Page 31: iPaas with Fuse Fabric Technology

Cloud Machine

Fuse Fabric : How it works

Fabric “Master”

Zookeeper

Shell script

Fabric command

Fabric“Instance”

ssh

Maven

Page 32: iPaas with Fuse Fabric Technology

jclouds “A Cloud Tooling framework”

Page 33: iPaas with Fuse Fabric Technology

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.

Page 34: iPaas with Fuse Fabric Technology

jclouds

● BlobStore api

= storage mngt (S3, ...) ● Compute Api

= manage nodes● Node api● Tools = Karaf

Page 35: iPaas with Fuse Fabric Technology

jclouds

● 30 cloud providers & cloud software stacks including Amazon, GoGrid, Ninefold, vCloud, OpenStack, and Azure.

Page 36: iPaas with Fuse Fabric Technology

Who uses jclouds

● RedHat - OpenShift to deploy applications to Terremark, RackSpace & EC2● Twitter, Adobe ● GigaSpace, SalesForces● General Electric● Camel, Karaf, Cellar, Fabric

Page 37: iPaas with Fuse Fabric Technology

Fuse Fabric : Cloud providersCloustackAmazon EC2

Openstack

Page 38: iPaas with Fuse Fabric Technology

Fuse Fabric - Install

● Deploy features (= artifacts required)

● Will install commands, libraries required to communicate with Cloud Providers and manage instances

Page 39: iPaas with Fuse Fabric Technology

Fuse Fabric - Setup

● A. Create “ensemble” (optional)

● B. Add a provider

A = Api of the jclouds provider B = Public key C = Password

B

C

A

Page 40: iPaas with Fuse Fabric Technology

Fuse Fabric – Create VM

● A. Create a container in the cloud

● B. Connect

ssh session

Jclouds in action

Page 41: iPaas with Fuse Fabric Technology

Fuse FMC to simplify your life

Page 42: iPaas with Fuse Fabric Technology

Fuse FMC

Page 43: iPaas with Fuse Fabric Technology

Fuse FMC

Page 44: iPaas with Fuse Fabric Technology

Fuse FMC

Page 45: iPaas with Fuse Fabric Technology

Fuse FMC

Page 46: iPaas with Fuse Fabric Technology

iPaaS Architectures

Page 47: iPaas with Fuse Fabric Technology

Architecture - “On an Island”

Cloud A

Cloud B

Container1

Container2

Container3

Container1

Container2

Fabric Ensemble

Fabric Ensemble

Page 48: iPaas with Fuse Fabric Technology

Architecture - “Interconnected”

Cloud A

Cloud B

Container1

Container2

Container3

Container4

Fabric Ensemble

Client Service

Page 49: iPaas with Fuse Fabric Technology

Using Fabric Camel

Page 50: iPaas with Fuse Fabric Technology

Architecture - “Integrated”

Cloud A

Container3

Container4

Intranet

Container1

Container2

Network of Broker

Fabric Ensemble

Page 51: iPaas with Fuse Fabric Technology

Using Fabric ActiveMQ

Page 52: iPaas with Fuse Fabric Technology

Demo & Conclusion

Page 53: iPaas with Fuse Fabric Technology

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

Page 54: iPaas with Fuse Fabric Technology

Questions

Fuse Fabric : http://fabric.fusesource.org

@cmoulliard [email protected]

cmoulliard.blogspot.com slideshare.net/cmoulliard