Difference between revisions of "Nova/EucalyptusFeatureComparison"
< Nova
Line 1: | Line 1: | ||
__NOTOC__ | __NOTOC__ | ||
− | This page attempts to enumerate how | + | This page attempts to enumerate how [[OpenStack]], Eucalyptus and [[CloudStack]] compare. |
− | = | + | = General API Support = |
− | |||
− | |||
{| border="1" cellpadding="2" cellspacing="0" | {| border="1" cellpadding="2" cellspacing="0" | ||
− | | Feature | + | | Feature |
| Eucalyptus | | Eucalyptus | ||
+ | | [[OpenStack]] | ||
|- | |- | ||
− | | EC2 Query API | + | | EC2 Query API |
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
− | | EC2 Soap API | + | | EC2 Soap API |
| (./) | | (./) | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
− | | OpenStack API | + | | OpenStack API / Rackspace API |
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | | (./) | ||
|- | |- | ||
− | | | + | | SSL Between Components |
| (./) | | (./) | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
− | | | + | | Horizontal Component Scalability |
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | | (./) | ||
|- | |- | ||
− | | | + | | Web-based UI |
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
− | | Command line interface | + | | Command line interface |
| (./) | | (./) | ||
+ | | (./) | ||
|} | |} | ||
− | = Amazon EC2 | + | = Amazon EC2 High Level Feature Support = |
− | Note: Info on Eucalyptus was provided entirely by | + | {| border="1" cellpadding="2" cellspacing="0" |
+ | | EC2 feature | ||
+ | | Eucalyptus | ||
+ | | [[OpenStack]] | ||
+ | |- | ||
+ | | Shared AMIs | ||
+ | | (./) | ||
+ | | (./) | ||
+ | |- | ||
+ | | Parameterized launch (user-data) | ||
+ | | (./) | ||
+ | | (./) | ||
+ | |- | ||
+ | | Instance metadata | ||
+ | | (./) | ||
+ | | (./) | ||
+ | |- | ||
+ | | Public AMI's | ||
+ | | (./) | ||
+ | | (./) | ||
+ | |- | ||
+ | | Reboot Instance | ||
+ | | (./) | ||
+ | | (./) | ||
+ | |- | ||
+ | | Start/Stop Instance | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |- | ||
+ | | Retrieve Console Output | ||
+ | | (./) | ||
+ | | (./) | ||
+ | |- | ||
+ | | Paid AMI's | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |- | ||
+ | | Multiple Instance Types | ||
+ | | (./) | ||
+ | | (./) | ||
+ | |- | ||
+ | | Instance Launch Time | ||
+ | | (./) | ||
+ | | (./) | ||
+ | |- | ||
+ | | Elastic IP's | ||
+ | | (./) | ||
+ | | (./) | ||
+ | |- | ||
+ | | Availability Zones | ||
+ | | (./) | ||
+ | | (./) | ||
+ | |- | ||
+ | | Region Support | ||
+ | | (./) | ||
+ | | (./) | ||
+ | |- | ||
+ | | User selectable kernels | ||
+ | | (./) | ||
+ | | (./) | ||
+ | |- | ||
+ | | Elastic Block Store | ||
+ | | (./) | ||
+ | | (./) | ||
+ | |- | ||
+ | | Booting without a ramdisk | ||
+ | | (./) | ||
+ | | (./) | ||
+ | |- | ||
+ | | Windows Support | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | | (./) | ||
+ | |- | ||
+ | | Reserved Instances | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |- | ||
+ | | Auto Scaling | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |- | ||
+ | | Elastic Load Balancing | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |- | ||
+ | | [[CloudWatch]] | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |- | ||
+ | | Virtual Private Cloud (IPSec) | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |- | ||
+ | | Shared Snapshots | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |- | ||
+ | | AMI's backed by EBS | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | | (./) | ||
+ | |- | ||
+ | | Spot Instances | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |- | ||
+ | | Sticky session in Elastic LB | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |- | ||
+ | | cc1.4xlarge | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |- | ||
+ | | Specify IP address for inst in VPC | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |- | ||
+ | | Tags | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |- | ||
+ | | Filters | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |- | ||
+ | | Idempotent [[RunInstance]] Calls | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |- | ||
+ | | Import keypair | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | | (./) | ||
+ | |- | ||
+ | | SSL termination | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |} | ||
+ | |||
+ | = Amazon EC2 API Compatability = | ||
+ | |||
+ | Note: Info on Eucalyptus was provided entirely by doing a grep of the source code. The Eucalyptus repository is here: https://launchpad.net/eucalyptus. Info on [[CloudStack]]'s [[CloudBridge]] EC2 Commands was provided from [[CloudStack]]'s Cloud Bridge Guide: http://docs.cloudstack.org/@api/deki/files/165/CloudBridgeGuide.pdf. Eucalyptus and [[OpenStack]]'s EC2 support is integrated into the respective code bases. [[CloudStack]]'s support is provided by running a [[CloudBridge]] proxy server. Source code for the [[CloudBridge]] proxy is here: https://github.com/CloudStack/CloudBridge | ||
{| border="1" cellpadding="2" cellspacing="0" | {| border="1" cellpadding="2" cellspacing="0" | ||
| EC2 API method | | EC2 API method | ||
| Eucalyptus | | Eucalyptus | ||
+ | | [[OpenStack]] | ||
|- | |- | ||
| AllocateAddress | | AllocateAddress | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| AssociateAddress | | AssociateAddress | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| AttachVolume | | AttachVolume | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| AuthorizeSecurityGroupIngress | | AuthorizeSecurityGroupIngress | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| BundleInstance | | BundleInstance | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| CancelBundleTask | | CancelBundleTask | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| CancelSpotInstanceRequests | | CancelSpotInstanceRequests | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| ConfirmProductInstance | | ConfirmProductInstance | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| CreateImage | | CreateImage | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| CreateKeyPair | | CreateKeyPair | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| CreatePlacementGroup | | CreatePlacementGroup | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| CreateSecurityGroup | | CreateSecurityGroup | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| CreateSnapshot | | CreateSnapshot | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| CreateSpotDatafeedSubscription | | CreateSpotDatafeedSubscription | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| CreateTags | | CreateTags | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| CreateVolume | | CreateVolume | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| DeleteKeyPair | | DeleteKeyPair | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| DeletePlacementGroup | | DeletePlacementGroup | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| DeleteSecurityGroup | | DeleteSecurityGroup | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| DeleteSnapshot | | DeleteSnapshot | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| DeleteSpotDatafeedSubscription | | DeleteSpotDatafeedSubscription | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| DeleteTags | | DeleteTags | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| DeleteVolume | | DeleteVolume | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| DeregisterImage | | DeregisterImage | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| DescribeAddresses | | DescribeAddresses | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| DescribeAvailabilityZones | | DescribeAvailabilityZones | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| DescribeBundleTasks | | DescribeBundleTasks | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| DescribeImageAttribute | | DescribeImageAttribute | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| DescribeImages | | DescribeImages | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| DescribeInstanceAttribute | | DescribeInstanceAttribute | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| DescribeInstances | | DescribeInstances | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| DescribeKeyPairs | | DescribeKeyPairs | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| DescribePlacementGroups | | DescribePlacementGroups | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| DescribeRegions | | DescribeRegions | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| DescribeReservedInstances | | DescribeReservedInstances | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| DescribeReservedInstancesOfferings | | DescribeReservedInstancesOfferings | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| DescribeSecurityGroups | | DescribeSecurityGroups | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| DescribeSnapshotAttribute | | DescribeSnapshotAttribute | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| DescribeSnapshots | | DescribeSnapshots | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| DescribeSpotDatafeedSubscription | | DescribeSpotDatafeedSubscription | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| DescribeSpotInstanceRequests | | DescribeSpotInstanceRequests | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| DescribeSpotPriceHistory | | DescribeSpotPriceHistory | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| DescribeTags | | DescribeTags | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| DescribeVolumes | | DescribeVolumes | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| DetachVolume | | DetachVolume | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| DisassociateAddress | | DisassociateAddress | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| GetConsoleOutput | | GetConsoleOutput | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| GetPasswordData | | GetPasswordData | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| ImportKeyPair | | ImportKeyPair | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| ModifyImageAttribute | | ModifyImageAttribute | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| ModifyInstanceAttribute | | ModifyInstanceAttribute | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| ModifySnapshotAttribute | | ModifySnapshotAttribute | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| MonitorInstances | | MonitorInstances | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| PurchaseReservedInstancesOffering | | PurchaseReservedInstancesOffering | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| RebootInstances | | RebootInstances | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| RegisterImage | | RegisterImage | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| ReleaseAddress | | ReleaseAddress | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| RequestSpotInstances | | RequestSpotInstances | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| ResetImageAttribute | | ResetImageAttribute | ||
| (./) | | (./) | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| ResetInstanceAttribute | | ResetInstanceAttribute | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| ResetSnapshotAttribute | | ResetSnapshotAttribute | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| RevokeSecurityGroupIngress | | RevokeSecurityGroupIngress | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| RunInstances | | RunInstances | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| StartInstances | | StartInstances | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| StopInstances | | StopInstances | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|- | |- | ||
| TerminateInstances | | TerminateInstances | ||
| (./) | | (./) | ||
+ | | (./) | ||
|- | |- | ||
| UnmonitorInstances | | UnmonitorInstances | ||
|<span style="font-size: large; color: white; background: red">|X</span> | |<span style="font-size: large; color: white; background: red">|X</span> | ||
+ | |<span style="font-size: large; color: white; background: red">|X</span> | ||
|} | |} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
---- | ---- | ||
[[Category:Nova]] | [[Category:Nova]] |
Revision as of 16:24, 6 April 2012
This page attempts to enumerate how OpenStack, Eucalyptus and CloudStack compare.
General API Support
Feature | Eucalyptus | OpenStack |
EC2 Query API | (./) | (./) |
EC2 Soap API | (./) | X |
OpenStack API / Rackspace API | X | (./) |
SSL Between Components | (./) | X |
Horizontal Component Scalability | X | (./) |
Web-based UI | (./) | (./) |
Command line interface | (./) | (./) |
Amazon EC2 High Level Feature Support
EC2 feature | Eucalyptus | OpenStack |
Shared AMIs | (./) | (./) |
Parameterized launch (user-data) | (./) | (./) |
Instance metadata | (./) | (./) |
Public AMI's | (./) | (./) |
Reboot Instance | (./) | (./) |
Start/Stop Instance | X | X |
Retrieve Console Output | (./) | (./) |
Paid AMI's | X | X |
Multiple Instance Types | (./) | (./) |
Instance Launch Time | (./) | (./) |
Elastic IP's | (./) | (./) |
Availability Zones | (./) | (./) |
Region Support | (./) | (./) |
User selectable kernels | (./) | (./) |
Elastic Block Store | (./) | (./) |
Booting without a ramdisk | (./) | (./) |
Windows Support | X | (./) |
Reserved Instances | X | X |
Auto Scaling | X | X |
Elastic Load Balancing | X | X |
CloudWatch | X | X |
Virtual Private Cloud (IPSec) | X | X |
Shared Snapshots | X | X |
AMI's backed by EBS | X | (./) |
Spot Instances | X | X |
Sticky session in Elastic LB | X | X |
cc1.4xlarge | X | X |
Specify IP address for inst in VPC | X | X |
Tags | X | X |
Filters | X | X |
Idempotent RunInstance Calls | X | X |
Import keypair | X | (./) |
SSL termination | X | X |
Amazon EC2 API Compatability
Note: Info on Eucalyptus was provided entirely by doing a grep of the source code. The Eucalyptus repository is here: https://launchpad.net/eucalyptus. Info on CloudStack's CloudBridge EC2 Commands was provided from CloudStack's Cloud Bridge Guide: http://docs.cloudstack.org/@api/deki/files/165/CloudBridgeGuide.pdf. Eucalyptus and OpenStack's EC2 support is integrated into the respective code bases. CloudStack's support is provided by running a CloudBridge proxy server. Source code for the CloudBridge proxy is here: https://github.com/CloudStack/CloudBridge
EC2 API method | Eucalyptus | OpenStack |
AllocateAddress | (./) | (./) |
AssociateAddress | (./) | (./) |
AttachVolume | (./) | (./) |
AuthorizeSecurityGroupIngress | (./) | (./) |
BundleInstance | X | X |
CancelBundleTask | X | X |
CancelSpotInstanceRequests | X | X |
ConfirmProductInstance | X | X |
CreateImage | X | X |
CreateKeyPair | (./) | (./) |
CreatePlacementGroup | X | X |
CreateSecurityGroup | (./) | (./) |
CreateSnapshot | (./) | (./) |
CreateSpotDatafeedSubscription | X | X |
CreateTags | X | X |
CreateVolume | (./) | (./) |
DeleteKeyPair | (./) | (./) |
DeletePlacementGroup | X | X |
DeleteSecurityGroup | (./) | (./) |
DeleteSnapshot | (./) | (./) |
DeleteSpotDatafeedSubscription | X | X |
DeleteTags | X | X |
DeleteVolume | (./) | (./) |
DeregisterImage | (./) | (./) |
DescribeAddresses | (./) | (./) |
DescribeAvailabilityZones | (./) | (./) |
DescribeBundleTasks | X | X |
DescribeImageAttribute | (./) | (./) |
DescribeImages | (./) | (./) |
DescribeInstanceAttribute | X | X |
DescribeInstances | (./) | (./) |
DescribeKeyPairs | (./) | (./) |
DescribePlacementGroups | X | X |
DescribeRegions | (./) | (./) |
DescribeReservedInstances | X | X |
DescribeReservedInstancesOfferings | X | X |
DescribeSecurityGroups | (./) | (./) |
DescribeSnapshotAttribute | X | X |
DescribeSnapshots | (./) | (./) |
DescribeSpotDatafeedSubscription | X | X |
DescribeSpotInstanceRequests | X | X |
DescribeSpotPriceHistory | X | X |
DescribeTags | X | X |
DescribeVolumes | (./) | (./) |
DetachVolume | (./) | (./) |
DisassociateAddress | (./) | (./) |
GetConsoleOutput | (./) | (./) |
GetPasswordData | X | X |
ImportKeyPair | X | X |
ModifyImageAttribute | (./) | (./) |
ModifyInstanceAttribute | X | X |
ModifySnapshotAttribute | X | X |
MonitorInstances | X | X |
PurchaseReservedInstancesOffering | X | X |
RebootInstances | (./) | (./) |
RegisterImage | (./) | (./) |
ReleaseAddress | (./) | (./) |
RequestSpotInstances | X | X |
ResetImageAttribute | (./) | X |
ResetInstanceAttribute | X | X |
ResetSnapshotAttribute | X | X |
RevokeSecurityGroupIngress | (./) | (./) |
RunInstances | (./) | (./) |
StartInstances | X | X |
StopInstances | X | X |
TerminateInstances | (./) | (./) |
UnmonitorInstances | X | X |