Cloud Computing Tools For Managing Amazon, Google Services

Getting the most out of Amazon's Web Services or Google's App Engine requires the right tools. We run down the benefits of Elastra, Coghead, Heroku, Enomaly, and Hyperic CloudStatus.
Google App Engine

Google's App Engine is the search giant's first major foray into making its massive server farm into a cloud computing infrastructure that most anyone can use. Because the Google App Engine is still very new, it doesn't yet have the breadth of third-party support as Amazon. It's also limited in terms of its app support: the only kinds of applications that can run on the engine are Python apps.

That said, some intrepid folks have already stepped into this space and have started offering ways to plug in to Google's cloud. Hyperic CloudStatus doesn't deal with programming support per se, but offers another function that's fairly critical to anyone planning to do serious work with cloud computing: health and performance monitoring. Clouds are still somewhat flaky beasts, so any way to keep an eye on them automatically is a big help. CloudStatus sports plug-ins for both Google App Engine and Amazon Web Services, so it's not limited to monitoring any one cloud service either.

Cohesive FT takes a slightly different approach to aiding development of App Engine apps. They allow you to create a local instance of Google's Dev Web Server -- a way to run App Engine applications outside of Google's cloud -- and also run it in any number of elastic environments, such as Amazon EC2. This is useful if you want to develop for GAE in a "disconnected" fashion, something possible with Google Gears, but given an additional level of flexibility this way.

Here and there, people are also discovering little ways to augment the work they do with GAE. Since GAE has no formal integrated development environment -- all the programming is done in Python, so any IDE that respects Python syntax will do -- one programmer decided to whip up a way to turn the Komodo Edit program into an integrated IDE for GAE. This reduces the amount of window-switching and "by-hand" heavy lifting needed to set up and maintain a GAE project.

Where To From Here?

Because cloud computing as we currently know it is still so new -- and, consequently, so prone to being reinvented on the fly -- the toolsets themselves are bound to evolve with it.

The most critical tools to come will be more ways to migrate existing data and code into the cloud, since few people interested in reaping the benefits of the cloud will want to completely reinvent all of their wheels.

Another key area ought to be profiling -- not just uptime monitoring, but products that can analyze existing code for performance bottlenecks and optimizations that are specific to cloud-computing environments. A given application that works fine on a conventional server may also work fine in the cloud as-is, but any programmer would want to know if there was more he or she could do for the sake of speeding up cloud performance.

Be sure to check out InformationWeek's Virtualization Briefing Center for case studies and whitepapers on virtualization, as well as our new site,, for detailed day-by-day analysis of cloud computing's ins and outs.