ClouDesire @ Italian DevOps Initiative 2013 #idi2013

Post on 26-Jun-2015

209 views 2 download

Tags:

description

Verso il primo cloud application store italiano, con OpenNebula, Puppet e REST: ClouDesire. Nonostante il proliferare di piattaforme e soluzioni cloud, queste tecnologie richiedono know-how e risorse per poter essere pienamente abbracciate, soprattutto in Italia, dove applicativi e architetture legacy regnano (ancora) sovrani. ClouDesire si pone come obiettivo di semplificare il processo per portare su cloud un'applicazione (web o legacy), e distribuirla in modalità XaaS, fornendo tutti i necessari tool di supporto.

transcript

?

A solution to reduce time to sell for software vendors, in a dedicated and customized store or in a global marketplace, using a cloud computing environment. ClouDesire doesn't embrace a single product, technology or service, and expose full-stack API for a complete control of its behavior, to avoid vendor lock-in.

-

Create an account

on ClouDesire

1

Configure a private

store

2

Configure the base template

with required application stack

3

Install the application into the customized

template

4

Define SLA and metrics pricing for

application template

5

Sell the application on the store(s)

6

-

Browse the vendor's catalogue or the ClouDesire

marketplace

1

"Buy It!"

2

Proceed with payment

3

Wait a few minutes for the

application deployment

4

Start using the application

5

-

Wait for deployment requests arising after an order

1

Provide resources

monitoring and

alerting

2

Bill to vendor

4

Send to vendors periodic reports on applications

revenue

3

FEA

TUR

ES

Open Source Data Center Virtualization Framework

• Physical Hosts & VM resources usage and monitoring

• Heterogeneous hypervisors support (KVM, Xen, VMWare)

• Public Cloud connectors (EC2)

• Remote Cloud connectors (Federation)

• Public API: XML-RPC, EC2, OCCI

• Images catalog

• Enforcing infrastructure security policy with ACL

• Focusing on data center virtualization

• High-performances core, scriptable drivers

• All in one package, without external deps

• Truly OSS, user-driver development

• API-agnostic

Don't reinvent the wheel

- ?

No license costs

Developed with interoperability and industry standards in mind

Functions served by remote API, not only GUI

Easily extensible to support multiple clouds/hypervisors

CMS is a Web Service exposing an abstraction layer for wrapping and aggregating the main functions provided

by the underlying Cloud Management Framework.

It provides independence and more high-level functions of the underlying

Cloud Management Framework.

REST-API for accessing cloud resources

Frontends: native API, CIMI, EC2

Backends: OpenNebula, Amazon, IBM SmartCloud, OpenStack, Arubacloud […]

It is used to create a new Virtual Context after a customer purchase, to instantiate the required resource and

to monitor step-by-step the deployment status: if something go wrong, it will retry until success.

FEA

TUR

ES • Search for pending deployment orders

• Injects requests in a newly created context, interacting with CMS to launch new VM instances

• Monitors the deployment process and retry on temporary failures

• De-schedule VMs when expiration date is reached

Template

Environment It is a collection of Contexts, associated to a particular customer. Each vendor have access to all customers Environments.

Building

Block

Virtual

Context

VC contains one or more BB, usually providing value-added vendor services. Each Agent inside a BB can interact with any Agent inside the same Virtual Context.

It is a ready-to-be-deployed Virtual Context, containing one or more BB, created, configured and maintained by a particular vendor, stored in a catalog.

BB is the minimal deployable entity on ClouDesire which contains one or more vendor Apps. It is composed by a single or multiple VMs, and should be provided with a specific platform integration module, named Agent.

Web Service that expose all the business-logic functions to achieve the platform requirements.

It rely on the CMS to interact with the lower infrastructure.

FEA

TUR

ES

• Catalog management and Billing

• Monitoring and metrics gathering

• Backups and restores

• Agent Communication

• Template/Sandboxing management

• User management and Authentication

A software component that is used in a Building Block, as platform integration point for instance management

and metrics gathering.

FEA

TUR

ES

• Monitors the services status inside VM

• Receives remote commands (e.g.: restart services)

• Pub-Sub communications between agents inside the same virtual context

Every request needs to be routed to the correct destination

This is the users entry point to reach a running application.

FEA

TUR

ES • Implements user authentication,

based on SSO

• Enforce access policies

• Map each HTTP request to the correct deployed application

A Symfony2 web application where different entities can:

Orders status, BB availability and basic instance management.

Customers

List of their Customers, Orders, BBs. Monitoring and automation of deployed instances. Template and billing management.

Vendors

Managing and monitoring of the entire platform. Administrators

Twitter bootstrap: front-end framework for geeks Guzzle: HTTP-client REST-friendly

NoVNC: HTML5 VNC viewer (NO MORE JAVA)

A web application where a software vendor

can publish its own applications,

along with others vendors apps.

Customers can browse the catalog and

place orders on them.

FEA

TUR

ES

• Catalogue Management

• Products Listing, Featured products

• Shopping Cart

A web application where vendors can manage

their own applications catalog and customers can place

orders on it.

Snippets are provided for easy integration

into an existing web site ("Buy this" button).

FEA

TUR

ES

• Catalogue Management

• Interface customizations

• Billing & Metrics Management

• App Sandboxing

More on ClouDesire http://www.cloudesire.com

We are hiring!

job@liberologico.com

Contact me

http://twitter.com/gionn

g.toraldo@liberologico.com