Cloud computing architecture

Cloud computing architecture refers to the components and subcomponents required for cloud computing. These components typically consist of a front end platform (fat client, thin client, mobile device), back end platforms (servers, storage), a cloud based delivery, and a network (Internet, Intranet, Intercloud). Combined, these components make up cloud computing architecture.

Cloud client platforms

Cloud computing architectures consist of front-end platforms called clients or cloud clients. These clients comprise servers, fat (or thick) clients, thin clients, zero clients, tablets and mobile devices. These client platforms interact with the cloud data storage via an application (middleware), via a web browser, or through a virtual session.

The zero client

The zero or ultra-thin client initializes the network to gather required configuration files that then tell it where its OS binaries are stored.[1] The entire zero client device runs via the network. This creates a single point of failure, in that, if the network goes down, the device is rendered useless.[2]

Cloud storage

Main article: Cloud storage

An online network storage where data is stored and accessible to multiple clients. Cloud storage is generally deployed in the following configurations: public cloud, private cloud, community cloud, or some combination of the three also known as hybrid cloud.[3]

In order to be effective, the cloud storage needs to be agile, flexible, scalable, multi-tenancy, and secure.[4]

Cloud based delivery

Software as a service (SaaS)

Main article: Software as a service

The software-as-a-service (SaaS) service-model involves the cloud provider installing and maintaining software in the cloud and users running the software from their cloud clients over the Internet (or Intranet). The users' client machines require no installation of any application-specific software - cloud applications run on the server (in the cloud). SaaS is scalable, and system administration may load the applications on several servers. In the past, each customer would purchase and load their own copy of the application to each of their own servers, but with the SaaS the customer can access the application without installing the software locally. SaaS typically involves a monthly or annual fee.[5]

Software as a service provides the equivalent of installed applications in the traditional (non-cloud computing) delivery of applications.[6]

Software as a service has four common approaches:[6][7]

  1. single instance
  2. multi instance
  3. multi-tenant
  4. flex tenancy

Development as a service (DaaS)

Development as a service is web based, community shared development tools. This is the equivalent to locally installed development tools in the traditional (non-cloud computing) delivery of development tools.[6]

Platform as a service (PaaS)

Main article: Platform as a service

Platform as a service is cloud computing service which provides the users with application platforms and databases as a service.[3] This is equivalent to middleware in the traditional (non-cloud computing) delivery of application platforms and databases.[6]

Infrastructure as a service (IaaS)

Infrastructure as a service is taking the physical hardware and going completely virtual (e.g. all servers, networks, storage, and system management all existing in the cloud). This is the equivalent to infrastructure and hardware in the traditional (non-cloud computing) method running in the cloud. In other words, businesses pay a fee (monthly or annually) to run virtual servers, networks, storage from the cloud. This will mitigate the need for a data center, heating, cooling, and maintaining hardware at the local level.[6]

Cloud networking

Generally, the cloud network layer should offer:

Allowing users to have uninterrupted access to their data and applications.
On-demand access to resources requires the ability to move quickly and efficiently between servers and possibly even clouds.
Security is always important, but when you are dealing with multi-tenancy, it becomes much more important because you're dealing with segregating multiple customers.[8]

See also

Further reading

References