By Bill Ward | February 11, 2017
Cloud computing is everywhere these days. If you would like to jump on the technical bandwagon, then this article will get you pointed in the right direction. We will cover the basics of cloud computing architectures and how they are implemented today.
Cloud Computing Architecture Areas
When discussing cloud architecture, it is helpful to separate the architecture into two areas: front-end architecture and back-end architecture. Front-end architecture is the area where the end users interact with the cloud. Typically, these are browser based thin-clients that don’t do any real processing. Increasingly more these days you will find mobile application based front-end clients that can be either thin-clients or thick-clients. Finally, you will find desktop and/or tablet based thick-clients that do some processing on their end and leave the heavy lifting for the back-end cloud side.
The back-end area is where all the meat is for cloud architecture. This is composed of server farms in a datacenter that house virtualized servers, virtual networks and shared storage. Physical bare-metal servers have special operating systems installed called hypervisors that all virtualization of virtual servers on the same physical server. This allows for a much higher density of servers and provides for a very important feature of cloud computing called elasticity. Elasticity is where virtual machines can be created and destroyed as demand increases or decreases for a service.
Cloud Service Models
Any cloud computing architecture will include one or more service models: Infrastructure as a service, Software as a service, Platform as a service, and Database as a service.
Infrastructure as a Service (IaaS)
This service model provides an infrastructure. This means that you can control and manage everything from the servers themselves, operating systems installed, networking, security, storage and more. Some examples of IaaS providers are Amazon AWS, Google Cloud, and Openstack. This service model is primarily used by information technology departments and engineers.
Software as a Service (SaaS)
Software as a Service provides software in a cloud infrastructure. This is where the application is typically access through a web browser or a mobile application thin-client. Some well-known examples include Google Gmail, Google Docs, and Amazon Cloud Reader. This service model is mostly used by end users. User don’t have to worry about installing the software or upgrading it. This is all handled on the back-end side of the cloud service.
Platform as a Service (PaaS)
Platform as a service delivers a development infrastructure that developers can use host their applications on without having to worry about the technical aspects of an operating system. Developers can focus on their application stack on not have to worry about operating system maintenance. Some PaaS providers include Microsoft Azure, Google App Engine, Heroku, and Pivotal Cloud Foundry.
Cloud Delivery Models
Cloud Computing Architecture can be delivered in several forms.
A public cloud is a cloud infrastructure delivered over the internet by a cloud provider. The infrastructure is commonly shared among other customers and is called multitenancy. They typically charge on a pay-as-you-go model where you are only charged for the resources that you use. Your cloud will be hosted on the cloud service provider’s servers that are in one or many datacenters located all over the world. This option offers the most flexibility but doesn’t have the security that a private cloud can offer.
A private cloud is a cloud infrastructure that is located on your physical premises and on your own network. This offers much more security but understandably increases the costs substantially. This option also takes a significant larger amount of technical expertise to design, build, and manage further increasing the costs associated with this option. However, if security and having the ability to manage the infrastructure are of the upmost importance then a private cloud could be the way to go.
A hybrid cloud is a mixture of a public cloud and a private cloud. Some parts of your cloud are hosted on your own physical servers on your network and some of your cloud is hosted on a public cloud. This is useful if you want to host some things on your private cloud that you want to have the best security for like financial applications and want to leave other projects on the public cloud like web sites, email, or other applications.
This article just covered cloud computing architecture from a very basic level. For more articles about cloud signup for my newsletter and get updates about all my latest cloud articles every Friday.