Features/Eucalyptus

= Eucalyptus =

Summary
Eucalyptus is a cloud computing software platform for on-premise (private) Infrastructure as a Service clouds. It uses existing infrastructure to create scalable and secure AWS-compatible cloud resources for compute, network and storage.

Owners

 * Name: Andy Grimm
 * Email: [mailto:agrimm@gmail.com agrimm@gmail.com]

Current status

 * Targeted release: Fedora 17
 * Last updated: 2012-02-07
 * Percentage of completion: 70%

Detailed Description
This feature would include version 3.1 of all of the major components of Eucalyptus:


 * Cloud Controller (The central web service stack, web UI, account management, etc.)
 * Storage Controller (analogous to EBS)
 * Walrus (analogous to S3)
 * Cluster Controller (analogous to EC2)
 * Node Controller (which manages the hypervisor on individual compute nodes in a cluster)

Eucalyptus works with either Xen or KVM, and can use openldap for account management.

Benefit to Fedora
Fedora can be used to build a highly available and scalable AWS-compatible compute/storage cloud.

Scope
The main challenge is in packaging a large number of Java dependencies. There is a list of direct dependencies at Eucalyptus, but it does does contain all transitive build dependencies yet. There will also be some distro integration work, but much of this is happening as part of the upstream packaging and release process.

How To Test
1) Install the following packages:

eucalyptus-cloud eucalyptus-sc eucalyptus-nc eucalyptus-cc eucalyptus-walrus

The configuration will default to "SYSTEM" mode for networking, which would allow a single node configuration to work for test purposes.

2) component configuration and registration will mostly follow my blog post from 1/19, though we may script a simpler process for this.

3) Test image launching either with boxgrinder-generated images or with images from Eustore

4) Possibly run through various automated test cases using the Eutester framework

User Experience
Users will have the ability to build an Amazon-compatible cloud and use tools such as boto, euca2ools, BoxGrinder, HybridFox, etc. to manage compute instances and storage.

Dependencies
Briefly:


 * ActiveMQ
 * Axiom
 * Google Web Toolkit
 * HA-JDBC
 * Hibernate
 * JasperReports (optional)
 * Mule
 * Spring
 * Axis2c
 * WSDL2C (from Axis2/Java, but may be separated into a fragment package, as Axis2/Java has a huge dependency list)

Contingency Plan
We would punt to F18.

Documentation

 * Eucalyptus community page
 * Eucalyptus dependency packaging wiki page

Release Notes
Eucalyptus is an AWS-compatible cloud which allows users to manage compute and storage resources in a private cloud using the same tools and APIs as are used with AWS.

Comments and Discussion

 * See Talk:Features/Eucalyptus