By now, most of you have heard that yesterday we released the inaugural version of the OpenStack Cloud Computing Platform. The OpenStack project is comprised of two major subprojects, OpenStack Compute and OpenStack Object Storage.
Where is it?
OpenStack Object Storage:
OpenStack Compute (Nova)
Multi-hypervisor support: Compute now supports KVM, QEMU, User-Mode Linux and Xen, are supported through libvirt and XenServer is supported by a nifty abstraction and plug-in contributed by Citrix.
API changes: In addition to the EC2, Compute has added a native OpenStack API that is based on the Rackspace Cloud Servers API. We are excited to have an API that we can extend. We also added support for EC2 Security Groups.
Image registry and delivery service: We have added the Glance project, which is an image registration and discovery service (Parallax) and an image delivery service (Teller). These services are used in conjunction by Open Stack Compute to deliver images from object stores, such as OpenStack’s Object Storage service, to Nova’s compute nodes. Glance can be used to serve images for Compute, but is not enabled by default in this release.
Networking Model: OpenStack Compute now supports two network models on compute nodes; VLANs with DHCP, and flat with either static IP pools or DHCP.
Scheduler: We added a base scheduling service to Openstack Compute that we will extend in future releases.
WSGI: In an effort to reduce the number of dependencies in OpenStack Compute and create a standard API layer with reusable components, we’ve decided to use WSGI. As a part of this we ported our current EC2 API code from Tornado to WSGI.
Rename server support: We added support for rackspace style user-friendly names, and renaming if running instances compute.
Code refactoring: OpenStack Compute completely refactored the ORM. The result is a much simpler code that is easier to understand. We also refactored the networking code for simplicity.
SQL support: A big part of the ORM refactor was the addition of support for SQLAlchemy Database toolkit. This will allow people to make use of existing SQL infrastructure when deploying OpenStack Compute. The refactor also removed support for redis. This should not be seen as a judgement about redis. We will visit re-adding support for nosql data stores during the next two release cycles.
OpenStack Object Storage (Swift)
Stats system: OpenStack Object Storage add a stats system that processes the logs generated by the system to produce per-account hourly summaries of system usage.
ACL’s and public containers: Object Storage added the ability for users to set ACL’s and grant public access to containers.
Metadata access: Object Storage now supports API access to account and container metadata.
Rate limiting: Rate limiting was extending from just supporting errors returned, to allowing requests to be slowed down and supporting stair stepped rate limits based on container size.
WSGI refactor: WSGI support was improved and pulled into middleware.
Documentation: We started the release with almost no documentation and our wonderful technical writer, Anne, managed to create documentation from a constantly moving code base. Please visit the [wiki.openstack.org] and have a look.
I want to offer a special thanks to everyone who helped us reach this exciting stage in the future of OpenStack. Whether you wrote code, tested, wrote docs, tweeted, designed t-shirts, defended us in blog posts, or just attend IRC meetings and gave us your opinion, all of you were instrumental in getting this release out the door. I hope to work with all of you for many more.
“Damn the torpedoes, full speed ahead!”
Rick Clark Chief Architect, OpenStack