« Previous 1 2 3 4 Next »
Many Clouds, One API
Outlook
Apache Deltacloud is continually being developed by an active community of programmers. A major aspect of development is compatibility with cloud-oriented storage systems such as S3 and Cloudfiles. A further priority is the creation of new drivers, particularly for vCloud, Red Hat Enterprise Virtualization Manager (RHEV-M), and Google Storage. These extensions are designed to be fully backward compatible, allowing older clients to communicate flawlessly with newer servers. Such API stability comprises not only the parameters of the HTTP requests and the XML format of the responses, but also data, such as error codes and messages reported by the API.
Deltacloud currently is being used in several major projects, including Red Hat’s Cloud Engine, SteamCannon, and Eclipse. The goal of Cloud Engine is to implement an open source cloud broker (Figures 4 and 5). The Deltacloud API is used here to facilitate views on the virtual clouds of each user, as well as for communication with the clouds themselves. SteamCannon creates tools for operating user-specific Platform-as-a-Service (PaaS) clouds for Java and Ruby applications. The Eclipse project is used to develop plugins that aid the management of virtual machines in clouds from within Eclipse, enabling developers to implement even complex application scenarios and architectures with a few simple mouse clicks.
Installing Deltacloud
To install the Deltacloud server, use one of two methods. On Fedora and related Linux distributions, Deltacloud is available as RPMs and can be installed with a simple
yum install deltacloud-core-all
On other operating systems, you need to install Deltacloud as a Ruby gem with the command:
gem install deltacloud-core
The drawback of gem install is that a C compiler must be present because some of the gems Deltacloud depends on need to be compiled.
After installation, the Deltacloud server can be started with
deltacloudd -i mock -r HOSTNAME -p PORT
where HOSTNAME is the hostname or IP address on which the server should be listening. The Deltacloud RPM contains an init script to do this, which is configured by editing /etc/sysconfig/deltacloud-core , but for the sake of explanation, I’ll start the server directly. Under the covers, deltacloudd uses thin, which only supports HTTP, not HTTPS; to get secure connections to a Deltacloud, the server requires those connections to be proxied through another web server like Apache or nginx.
When starting the server, deltacloudd expects a default driver. In this example, I use the mock driver, which just pretends to be a cloud and is useful for testing. But any supported driver, like ec2 or rhevm can be specified here.
« Previous 1 2 3 4 Next »