57
Integraon in the cloud - IPaaS with Fuse technology Charles Moulliard Apache Commier

Cloud fuse-apachecon eu-2012

Embed Size (px)

DESCRIPTION

Integration Platform as a Service architecture based on Fuse Fabric technology (Apache Karaf + Zookeeper + Fabric engines)

Citation preview

Page 1: Cloud fuse-apachecon eu-2012

Integration in the cloud - IPaaS with Fuse technology

Charles MoulliardApache Committer

Page 2: Cloud fuse-apachecon eu-2012

Agenda

● Introduction & Key concepts● What is iPaas ?● Fuse Fabric & Fuse Mngt Console● jclouds & Apache CloudStack● Demo & Conclusion

Page 3: Cloud fuse-apachecon eu-2012

Speaker : Charles Moulliard

● Engineer in Agronomy & Master in Zoology● Solution Architect & Consultant @RedHat ● Committer → Karaf (PMC), Camel (PMC), ServiceMix, DeltaSpike, Fabric

Twitter : @cmoulliard

LinkedIn : http://www.linkedin.com/in/charlesmoulliard

Blog : http://cmoulliard.blogspot.com

Slideshare : http://www.slideshare.net/cmoulliard

Page 4: Cloud fuse-apachecon eu-2012

Introduction

Page 5: Cloud fuse-apachecon eu-2012

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

Page 6: Cloud fuse-apachecon eu-2012

IaaS

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

Page 7: Cloud fuse-apachecon eu-2012

PaaS

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

Page 8: Cloud fuse-apachecon eu-2012

SaaS

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

Page 9: Cloud fuse-apachecon eu-2012

All together

● Can we resume ?

Page 10: Cloud fuse-apachecon eu-2012

Deployment models

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

Page 11: Cloud fuse-apachecon eu-2012

iPaaS“A new paradigm or simply a

easiest way to deploy projects”

Page 12: Cloud fuse-apachecon eu-2012

iPaas

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

Page 13: Cloud fuse-apachecon eu-2012

Integration

● Integration everywhere = iPaaS

Page 14: Cloud fuse-apachecon eu-2012

iPaas - Definition

● Definition : Provide Fabric runtimes top of clouding machines for public, private or hybrid clouds● What is Fabric ?

- Technology based on Apache Karaf

- Is a Agent working closely with Apache Zookeeper

Page 15: Cloud fuse-apachecon eu-2012

Apache Karaf

Page 16: Cloud fuse-apachecon eu-2012

Apache Karaf

Page 17: Cloud fuse-apachecon eu-2012

Fuse Fabric

Page 18: Cloud fuse-apachecon eu-2012

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 19: Cloud fuse-apachecon eu-2012

Fuse Fabric

● http://fabric.fusesource.org/● Open Source Software for “configuring, provisionin

g & running Fuse and Apache software on any machines” physical, virtual, private, public, private+public cloud

● Keeps you DRY from those rainy clouds :) ● Weave your containers into an easy to manage

Fabric● Will be donated soon to Apache foundation

Page 20: Cloud fuse-apachecon eu-2012

Karaf Admin

● Allows to create instances & administrate them locally or remotely

BUT

● Instances not “cloned”● Configurations updated manually● Process is error prone● No deployment platform

Machine A

Machine A

Machine B

Machine B

Karaf“root”

Karaf“toto”

Karaf“nestor”

Karaf“nestor”

admin:create

Copy instance

Page 21: Cloud fuse-apachecon eu-2012

Fuse Fabric in the cloud

● 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 22: Cloud fuse-apachecon eu-2012

What is Fabric

● Storage engine = Configurations & registry ● Agents = Spy !● Profiles = Artifacts to be deployed● But Also a service factory ;-)

● Create “indirection” points● Load balancing and failover● Easy elastic scaling of services

Page 23: Cloud fuse-apachecon eu-2012

Storage engine● Based on Apache ZooKeeper

● Is a Centralized Coordination Service, distributed and highly reliable● Uses a directory

& file based

structure● Part of Fuse

“Ensemble”

Page 24: Cloud fuse-apachecon eu-2012

Storage engine● 2 kinds of “registry” → one for the containers and the other for artifacts● Artifacts = jars, properties files, system, env properties to be deployed

Page 25: Cloud fuse-apachecon eu-2012

Agent● Fabric-agent deployed per Karaf container● Contains a Zookeeper client ● Agent listens to the registry to configure, provision features & services● Send info(s) to

registry (RMI, SSH)

Page 26: Cloud fuse-apachecon eu-2012

Cloud Machine

Fuse Fabric : What happen

● A Karaf fabric container is created

● Fabric agent is registered with Zookeeper

● “Artifacts” to be deployed are loaded from Profile(s)

● Maven proxy is used

Fabric “Master”

Zookeeper

Shell script

Fabric command

Fabric“Instance”

ssh

Maven

Page 27: Cloud fuse-apachecon eu-2012

Fuse Fabric - Installation

● Deploy features (= artifacts required)

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

Page 28: Cloud fuse-apachecon eu-2012

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 29: Cloud fuse-apachecon eu-2012

jclouds “A Cloud Tooling framework”

Page 30: Cloud fuse-apachecon eu-2012

jclouds

● Umbrella project● jclouds : 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 31: Cloud fuse-apachecon eu-2012

jclouds

● BlobStore api

= simplify storage management (S3, ...) ● Compute Api

= manage nodes● Node api● Tools = Karaf client

Page 32: Cloud fuse-apachecon eu-2012

jclouds

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

Page 33: Cloud fuse-apachecon eu-2012

Who uses jclouds

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

Page 34: Cloud fuse-apachecon eu-2012

Apache CloudStack

“Allow to manager virtual machines”

Page 35: Cloud fuse-apachecon eu-2012

CloudStack

● Apache project ● Citrix work (> April 2011)● Software designed to deploy and manage large networks of virtual machines, as a highly available, highly scalable Infrastructure as a Service (IaaS) cloud computing platform.● Supports the most popular hypervisors: VMware, Oracle VM, KVM, XenServer and Xen Cloud Platform

Page 36: Cloud fuse-apachecon eu-2012

CloudStack – Infrastructure

Page 37: Cloud fuse-apachecon eu-2012
Page 38: Cloud fuse-apachecon eu-2012

CloudStack

Page 39: Cloud fuse-apachecon eu-2012

CloudStack – Core Components

Page 40: Cloud fuse-apachecon eu-2012

CloudStack – Self Service Portal

Page 41: Cloud fuse-apachecon eu-2012

CloudStack

● Web console :

Page 42: Cloud fuse-apachecon eu-2012

Fuse Fabric : Cloud providersCloustackAmazon EC2

Openstack

Page 43: Cloud fuse-apachecon eu-2012

Fuse Fabric - Join

● A. Create a container in the cloud

● B. Join the container

● C. Connect

Connect to Zookeeper reg.

ssh session

Jclouds in action

Page 44: Cloud fuse-apachecon eu-2012

Fuse FMC to simplify your life

Page 45: Cloud fuse-apachecon eu-2012

Fuse FMC

Page 46: Cloud fuse-apachecon eu-2012

Fuse FMC

Page 47: Cloud fuse-apachecon eu-2012

Fuse FMC

Page 48: Cloud fuse-apachecon eu-2012

Fuse FMC

Page 49: Cloud fuse-apachecon eu-2012

iPaaS Architectures

Page 50: Cloud fuse-apachecon eu-2012

Architecture - “On an Island”

Cloud A

Cloud B

Fabric Ensemble

Fabric Ensemble

Container1

Container2

Container3

Container1

Container2

Page 51: Cloud fuse-apachecon eu-2012

Architecture - “Interconnected”

Cloud A

Fabric EnsembleCloud B

Container1

Container2

Container3

Container4

Network of Broker

Page 52: Cloud fuse-apachecon eu-2012

Using Fabric Camel

Page 53: Cloud fuse-apachecon eu-2012

Architecture - “Integrated”

Cloud A

Container3

Container4

Intranet

Fabric Ensemble

Container1

Container2

Network of Broker

Page 54: Cloud fuse-apachecon eu-2012

Using Fabric ActiveMQ

Page 55: Cloud fuse-apachecon eu-2012

Demo & Conclusion

Page 56: Cloud fuse-apachecon eu-2012

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● Designed to deploy Camel, CXF, ActiveMQ in the cloud

Page 57: Cloud fuse-apachecon eu-2012

Questions @cmoulliard

[email protected]

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