Options for building and deploying Web-based applications to
the “cloud” are abundant. Amazon’s EC2 offering has been out for a while and
offers a variety of operating systems, databases and storage solutions. Linux
choices include Red Hat Enterprise Linux, OpenSolaris, Fedora, openSUSE,
Gentoo, Oracle Enterprise Linux, Ubuntu and Debian. When you look at the way
Amazon prices their options, you’ll quickly see that Linux options are
significantly cheaper than Windows.
Amazon’s application development options are somewhat
limited when compared to building things on your own server. You can choose any
development platform you’d like as long as it’s either Java or Ruby on Rails.
The real benefit of choosing Amazon for your cloud provider is their reach and
scale. EC2 is not immune to outages as can be attested to by some very high
profile Web sites.
New Options
Zimory is a new player in
the “cloud computing” space and offers what they feel are a number of unique capabilities.
The focus of their service is to provide a hosted environment for any type of
Linux virtual appliance. All of the Zimory product offerings are built upon
standard hypervisor technologies with support for VMWare Server 1.x, ESX 3.5 and
Xen 3.2. You can build your own application appliance and then deploy it to the
Zimory cloud as needed.
The second piece of the puzzle that Zimory provides is what
they call their Public Cloud Gateway. This piece makes it possible to extend
the compute resources of an enterprise on demand in a dynamic way and then
scale back down when needed. You really appreciate this level of control when minimizing
cost is a key factor your organization. The service is currently in beta and
available for testing purposes to interested parties.
Setup and Configuration
Once you have a Zimory account it’s a pretty simple process
to create a new deployment and provision it to any number of different data
centers in the US and Europe. Zimory offers three basic appliances including
Ubuntu 8.10 running under VMWare, a Xen-based LAMP appliance based on Debian,
and a smaller LAMP version with a limited disk footprint. You can also upload
your own appliance as long as it runs under VMWare or Xen.
After you select your appliance you must choose how much
memory to provision (between 128 and 8192 MB) and the number of processors you
want dedicated to your application. Finally, you must choose a cloud site (or
sites) to deploy your image to and you’re all done. The Zimory Web-based
dashboard gives you a quick summary of your deployments, their status and quick
links to start / stop and manage the instance through a browser-based VNC
session.
One thing we learned pretty quickly is you’ll need the
latest Java Runtime for the VNC viewer to work properly. When we attempted to
connect to the service from a laptop running Ubuntu 9.04, our Firefox prompted
us for the missing plugins and loaded them right up. All that was needed was a
quick Firefox restart and we were good to go.
Once you have a deployment up and running you use the Zimory
Cloud Manager for starting / stopping, managing through a remote VNC session
and performing a storage backup on your virtual machine. Zimory also provides
an Application Programming Interface (API) based on SOAP and REST for managing
virtual machines. This makes it possible to develop automated provisioning
workflows that set up and tear down virtual machines in an automated fashion.
The real beauty of the Zimory approach is the level of
control given to the user. You essentially get a full Linux distribution to do
with what you want. The downside of this approach is that you pay for what you
use, making it even more important to know what you have running on your
virtual machine and how much storage and bandwidth you’re using. Open source
tools to address these issues are plentiful, so there’s no excuse not to use
them.
Details, Details
All this sounds great, but the devil is always in the
details. From a security perspective the virtual machine approach offers a
solid and secure way to isolate different operating environments running on the
same physical hardware. All communication between components uses standard
secure protocols and provides the same level of protection you have over any
https type of connection.
Zimory offers three different Service Level Agreements
(SLAs) with differing guarantees of service. The higher the level, the more you
pay. This is then combined with actual monitored usage of CPU, network traffic
and storage to come up with a monthly cost. While the service is in beta there
is no cost, but you can see what their proposed costs would be on their web
site.
For really big applications you’ll need to use the Zimory
Cloud Manager’s planning module to optimize how your application resources are
distributed. The planning module gives you the ability to determine how
resources are dynamically added and removed based on usage profiles and actual
monitored heuristics. This makes it possible to enable an automated management capability
that responds to the demand in real time.
Bottom Line
All you have to do to get started is register at the Zimory
site for a beta account. Once that’s completed you’ll have full access to the service
to determine if it’s something you can use. It’s definitely a great way to get
some experience with building and deploying applications to the cloud for
anyone with an interest.
Article courtesy of Linux Planet.