The Eucalyptus Open-Source Cloud-Computing System The Eucalyptus open-source software framework for cloud computing implements “Infrastructure as a Service”—systems that let users run and control entire virtual machine instances deployed across a variety of physical resources. More»

Cloud computing is one of today’s most-discussed technical topics. Despite the relative decline of grid computing and unfulfilled promises of utility computing, cloud computing appears to be catching on in both industry and academia. Compared to its predecessors, cloud computing seems to be better positioned in terms of economic viability, cost-effective approaches to scale and reliability, early adoption of interfaces, and open source implementations. For the September 2009 Computing Now theme, I selected a few articles that address some of these topics.

Economy

Using clouds, IT departments have more options to fully understand the costs associated with owning versus renting CPUs, storage, and networking. The costs usually revolve around managing equipment (operational) and not just buying it (capital). Amazon and other providers are relying on consolidating resources with automated management to make it cheaper for customers to rent resources than buy them. “The Real Cost of a CPU Hour” from Computer magazine addresses this topic in more detail.

Developing applications

Developers understand how to write applications for locally accessible servers, as well Web services accessible over the Internet. What does it mean to write applications for cloud computing? How are they different from traditional models? Presumably, they should be elastic (scale from a few users/nodes to a large number of them), delivered on demand without significant dependencies, composable, and so on. For more details, read “Navigating the Next-Generation Application Architecture” from IT Professional.

Security

Security concerns gain new dimensions in cloud computing. In the past, security meant not letting anyone access computing infrastructure and data, but now the data resides somewhere in the cloud. While there are reasonable guarantees and technical means to isolate users inside a shared infrastructure, higher-level concerns arise around business continuity: Can I really trust that the cloud provider will be always there? How can I gain access to my data? Read “Data Security in the World of Cloud Computing” from IEEE Security and Privacy for more on this topic.

Databases

Despite the availability of commodity and open-source databases, databases at the enterprise scale remain extremely costly. It takes a lot of effort, expertise, and money to tune high-end servers to run DB2 or Oracle. Cloud computing, along with Hadoop and Pig, offers a tremendous opportunity to accomplish similar scale and reliability at a fraction of the cost. For more on these topics, read “SQL in the Clouds” from Computing in Science and Engineering.

Standards and Open Source

Many companies are exploring public and private clouds, and a key factor for success will be interoperability. In much the same way that early networks needed standard protocols that eventually resulted in the ubiquitous Internet, cloud computing providers will have to come up with similar standards that will enable access to any cloud. Eucalyptus is an open source implementation of Amazon Web Services, which seems to be the approach other software infrastructure packages are using. To learn more about Eucalyptus, read “The Eucalyptus Open-Source Cloud-Computing System” from Proc. 9th IEEE/ACM Int'l Symp. Cluster Computing and the Grid.

What do you think about cloud computing? Share your opinion by answering our poll questions.

Dejan Milojicic is the founding editor of Computing Now. He has served on the editorial boards of IEEE Parallel & Distributed Technologies, IEEE Concurrency, IEEE Distributed Systems Online, and IEEE Internet Computing magazines. He chaired the IEEE Technical Committee on Operating Systems and has been involved with several other technical committees and Computer Society-sponsored conferences.

Dejan is a senior research manager at HP Labs. He has worked in the areas of operating systems and distributed systems for more than 20 years. He has been engaged in standardization bodies, such as OMG and GGF. He is a member of the IEEE, ACM, and USENIX. He received his BSc and MSc from University of Belgrade and PhD from University of Kaiserslautern. He can be reached at computing_now@computer.org.