What is Cloud Computing Architecture? – Learning Guide
Last updated on 15th Jul 2020, Blog, General
- Cloud Architecture refers to the various components in terms of databases, software capabilities, applications, etc. engineered to leverage the power of cloud resources to solve business problems.
- Cloud architecture defines the components as well as the relationships between them.
The various components of Cloud Architecture are:
- On premise resources
- Cloud resources
- Software components and services
The entire cloud architecture is aimed at providing the users with high bandwidth, allowing users to have uninterrupted access to data and applications, on-demand agile network with possibility to move quickly and efficiently between servers or even between clouds and most importantly network security
The various cloud based services have their own distinct and unique cloud architectures:
- Software as a Service (SaaS) involves software hosted and maintained on internet. With SaaS, users do not have to install the software locally.
- Development as a Service (DaaS) involves web based development tools shared across communities.
- Platform as a Service (PaaS) provides users with application platforms and databases, equivalent to middleware services.
- Infrastructure as a Service (IaaS) provides for infrastructure and hardware such as servers, networks, storage devices, etc. running in the cloud, available to users against a pay per usage basis.
- Cloud Computing architecture comprises of many cloud components, which are loosely coupled.
- We can broadly divide the cloud architecture into two parts:
- Front End
- Back End
- Each of the ends is connected through a network, usually Internet. The following diagram shows the graphical view of cloud computing architecture:
- The front end refers to the client part of cloud computing system. It consists of interfaces and applications that are required to access the cloud computing platforms, Example – Web Browser.
- The back End refers to the cloud itself. It consists of all the resources required to provide cloud computing services. It comprises of huge data storage, virtual machines, security mechanism, services, deployment models, servers, etc.
What does a cloud architecture look like?
- Clouds are considered Platforms-as-a-Service (PaaS), since a cloud provider supplies users with both the platform and the underlying IT infrastructure.
- Architecting a cloud platform requires more than just abstracting a computer’s capabilities from its hardware components, which is how providers create and offer cloud infrastructure to users.
- It also requires additional levels of development to incorporate containerization, orchestration, application programming interfaces (APIs), routing, security, management, and automation software.
- User experience design (UX) is also important in order to create a navigable online experience.
- While there are variations of cloud architecture based on what you’re trying to do, most clouds require hardware, middleware, management, and automation software.
- Most clouds also use virtualization to abstract the hardware resources into centrally managed data lakes, while some clouds—known as bare-metal clouds—connect clients directly to hardware.
- Here’s a practical example: OpenStack is a popular open source cloud project that combines a number of other open source projects to build and manage clouds using virtualized resources.
- Red Hat stabilizes the open source project and releases it as Red Hat OpenStack Platform. The product’s twelfth version (released at the end of 2017) bundles the following cloud services, which—together—are representative of a basic cloud architecure.
Components of Cloud Computing Architecture
- There are the following components of cloud computing architecture –
1. Client Infrastructure
- Client Infrastructure is a Front end component. It provides GUI (Graphical User Interface) to interact with the cloud.
- The application may be any software or platform that a client wants to access.
Get Hands-On Practical Cloud Computing Training to Advance Your Career
- Instructor-led Sessions
- Real-life Case Studies
- A Cloud Services manages that which type of service you access according to the client’s requirement.
- Cloud computing offers the following three type of services:
i. Software as a Service (SaaS) –
It is also known as cloud application services. Mostly, SaaS applications run directly through the web browser means we do not require to download and install these applications. Some important example of SaaS is given below –
Example: Google Apps, Salesforce Dropbox, Slack, Hubspot, Cisco WebEx.
ii. Platform as a Service (PaaS) –
It is also known as cloud platform services. It is quite similar to SaaS, but the difference is that PaaS provides a platform for software creation, but using SaaS, we can access software over the internet without the need of any platform.
Example: Windows Azure, Force.com, Magento Commerce Cloud, OpenShift.
iii. Infrastructure as a Service (IaaS) –
It is also known as cloud infrastructure services. It is responsible for managing applications data, middleware, and runtime environments.
Example: Amazon Web Services (AWS) EC2, Google Compute Engine (GCE), Cisco Metapod.
4. Runtime Cloud
- Runtime Cloud provides the execution and runtime environment to the virtual machines.
- Storage is one of the most important components of cloud computing. It provides a huge amount of storage capacity in the cloud to store and manage data.
- It provides services on the host level, application level, and network level. Cloud infrastructure includes hardware and software components such as servers, storage, network devices, virtualization software, and other storage resources that are needed to support the cloud computing model.
- Management is used to manage components such as application, service, runtime cloud, storage, infrastructure, and other security issues in the backend and establish coordination between them.
- Security is an in-built back end component of cloud computing. It implements a security mechanism in the back end.
- The Internet is medium through which front end and back end can interact and communicate with each other.
How Cloud Computing Works
- When talking about a cloud computing system, it’s helpful to divide it into two sections: the front end and the back end. They connect to each other through a network, usually the Internet.
- The front end is the side the computer user, or client, sees. The back end is the “cloud” section of the system.
- The front end includes the client’s computer (or computer network) and the application required to access the cloud computing system.
- Not all cloud computing systems have the same user interface. Services like Web-based e-mail programs leverage existing Web browsers like Internet Explorer or Firefox. Other systems have unique applications that provide network access to clients.
- On the back end of the system are the various computers, servers and data storage systems that create the “cloud” of computing services.
- In theory, a cloud computing system could include practically any computer program you can imagine, from data processing to video games. Usually, each application will have its own dedicated server.
- A central server administers the system, monitoring traffic and client demands to ensure everything runs smoothly. It follows a set of rules called protocols and uses a special kind of software called middleware.
- Middleware allows networked computers to communicate with each other. Most of the time, servers don’t run at full capacity. That means there’s unused processing power going to waste.
- It’s possible to fool a physical server into thinking it’s actually multiple servers, each running with its own independent operating system. The technique is called server virtualization. By maximizing the output of individual servers, server virtualization reduces the need for more physical machines.
- If a cloud computing company has a lot of clients, there’s likely to be a high demand for a lot of storage space. Some companies require hundreds of digital storage devices. Cloud computing systems need at least twice the number of storage devices it requires to keep all its clients’ information stored. That’s because these devices, like all computers, occasionally break down.
- A cloud computing system must make a copy of all its clients’ information and store it on other devices. The copies enable the central server to access backup machines to retrieve data that otherwise would be unreachable. Making copies of data as a backup is called redundancy.