“CLOUD COMPUTING” – A DEFINITION
This chapter discusses cloud computing technology and cloud models. As
an example of a public cloud we consider Amazon Web Services (AWS), and for a
private cloud VMWare cloud technology. These providers hold most of the market
share in their specific niches, and are worth reviewing.
2.1 An Introduction
to Cloud Architecture
As the introduction notes, the idea of providing centralized computing
services over a network is not new – mainframe timesharing technology was
popular as far back as the 1960s, but was replaced by personal computers and
client-server architecture. Until around 10 years ago, typical enterprise
computing infrastructure consisted of powerful and very expensive servers.
Infrastructure architecture was monolithic, and each of these powerful machines
could easily host 20-30 enterprise applications. This market was dominated by
only a few hardware vendors, such as IBM, Sun, HP, and Dec, whose servers were
expensive to purchase and maintain, took considerable time to install and
upgrade, and in some cases were vulnerable to server outages that could last
several hours until a vendor representative delivered proprietary replacement
operating system was installed directly to hardware, and most of the servers
hosted multiple applications within the same operating system without providing
physical or virtual isolation (see Figure 1). Because it was difficult to
quickly move and rebalance applications across servers, server resources were
not utilized most effectively.
Distributed applications, which were installed over multiple servers,
communicated with each other using CORBA or DCOM communication protocols over
RPC. However, it was a major problem with such protocols that they were
vendor-dependent, and so the implementation of one vendor might not be
compatible with that of others. This was solved at the beginning of the 2000s
by the introduction of web services, which use open specifications that are
language, platform, and vendor agnostic.