cloudesire @ italian devops initiative 2013 #idi2013
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!
Contact me
http://twitter.com/gionn