Traditional computing is based around dedicated server hardware performing a function such as web hosting, email services or database serving. Over the years, dedicated servers have become more powerful, and their capacity is frequently underutilised. However the dedicated server still requires the same amount of electricity to power and cool it. Then Virtual Servers came along to help address this by providing the facility to have more than one virtual server on dedicated server hardware. This has helped alleviate some of the waste but there is a chance that the virtual servers will be sat idling for a high proportion of the time.
In order to fully utilise capacity, what's needed is a method for starting and stopping virtual servers as demand increases or decreases. This is the basis for Cloud Infrastructure-as-a-Server (IaaS) and Openstack is an Open Source version of this.
There are two major components to Openstack - Nova, the computing platform and Swift, the object store. Industry heavyweights such as Rackspace, Citrix, Dell, Intel and AMD have jumped on the Openstack bandwagon to help its commercial development and drive adoption by users.
Nova provides the virtual server provisioning part, akin to Amazons EC2, with Swift providing a redundant storage solution that is independent of the virtual servers, like Amazons S3. Openstack API's provide a method of controlling the virtual servers through the use of a programming language.
As Openstack is Open Source anyone can download and create their own IaaS, and utilise a mixture of legacy dedicated hardware if desired. However, there's still a lot of work needed to make your current application Cloud aware. Openstack isn't a magic wand that you can wave at your application and suddenly it's Software-as-a-Server (SaaS).
ForLinux are currently evaluating Openstack in order to provide support for a private cloud running the Openstack platform.