ConPaaS, integrated runtime environment for elastic Cloud applications
Cloud issues addressed
When you have a new idea for an Internet based business, you need to write an application, make sure you have a database for transactions and other information, and a place to run it so your customers can access it. The "place to run" today is the problem in the Cloud. You can get Virtual Machines and manage them quite easily. But putting your application and databases in there can be difficult when you need many load balanced Virtual machines.
Somewhere in the Cloud lies an abundance of computer capacity. It offers both storage and computing power. It is available, scalable and right there for grabs. Or isn't it?
Well, it is, but it is not so easy to get your web application or service running in a Cloud environment. Setting up and configuring your desired environment requires specialized skills and precise coding. And for each and every new infrastructure (on the web or elsewhere) you would need to adapt to different specifications. And once you're up and running comes the monitoring and maintenance. Let us face it: deploying your application in the Cloud is rather complicated, time-consuming and costly.
That was before ConPaaS. The Contrail Platform-as-a-Service is an open source environment for easy application hosting in the federated Cloud.
Contrail's PaaS component provides a zero-configuration running and load-balancing of a set of applications and databases. You can compose your complex application out of these.
Application platforms supported by ConPaaS:
- Web hosting, supporting static HTML documents, PHP programs and Java servlets
- MapReduce data processing
- Task farming (Bag-of-Tasks) computational programs
Database storage platforms supported by ConPaaS:
- MySQL database
- Scalarix, NoSQL data store
ConPaaS today runs on top of both Amazon EC2 and OpenNebula based Clouds. To make use of the platforms you need to install the ConPaaS system only once. For fine tuning ConPaaS supports Python and Django and allows the upload of custom instance startup scripts.
ConPaaS makes it really simple to get your application running in the Cloud. Click a few buttons, actually specifying your needs, and you're on. Need more servers? You can add any number on the fly. And of course it's just as easy to scale down. ConPaaS is very simple to use and it makes 'your platform' totally scalable. And it is open source and thus extensible.
If more functionality is needed, one can develop new services and register them with the ConPaaS framework.
The MySQL and XtreemFS services allow for persistent storage. You can save and resume an application's configuration with manifests.
The ConPaaS functionality makes it suited for both web applications and HPC environments. For web applications all basic building blocks, including SQL databases and programming tools are present. As an example the implementation of a Word Press powered website is given.
For High-Performance Computing (HPC). the task farming service (Bag-of-Tasks) and the Hadoop data service provide building blocks for high-throughput applications.
The PaaS services managed by ConPaas can be enforced by SLA agreements. This provides elasticity and resource provisioning to guarantee performance at lowest possible cost.
ConPaaS is fully integrated with the XtreemFS Cloud file system. ConPaaS can be used to manage an XtreemFS set-up. In summary:
1. The ConPaaS Service
- Creates and manages XtreemFS deployments in the cloud
- Easy to use web-frontend
2. Features of ConPaaS XtreemFS management
- Manage DIR, MRC and OSD nodes
- Dynamically scale XtreemFS by adding/removing virtual machines as needed
- Volume management
- Policy management
- Replica Selection
- OSD Selection
- Documentation: http://contrail.projects.ow2.org/xwiki/bin/view/Documentation/WebHome
- Developers on OW2: http://contrail.projects.ow2.org/
- Product website: http://www.conpaas.eu
- Online public test bed: https://online.conpaas.eu