What is Cloud Computing?

If you’re wondering what is cloud computing and how it works, then this series is for you. In our first post, we’ll answer the question: What is cloud computing, and we’ll talk about cloud computing resources, cloud deployment models, and key cloud concepts.

Stay tuned for our next post, where we’ll cover cloud service models, cloud computing use cases, and more.

What is cloud computing?

Cloud computing adoption is a key strategy for many organizations. The significant business and technical advantages offered by the cloud are changing the landscape of how many companies and corporations operate on a huge scale.

Put simply, cloud computing is a remote virtual pool of on-demand shared resources offering Compute, Storage, and Network services that can be rapidly deployed at scale. Cloud computing technology is based on virtualization. Virtualization allows the possibility of having multiple virtual machines, each essentially running a separate operating system and applications installed on one physical server. These VMs all run at the same time without being aware of each other’s existence, while sharing the underlying hardware resources of the server.

There are obvious benefits of virtualization, including reduced capital expenditure. Because you can have multiple VMs installed on one physical host, you don’t need to purchase as much physical hardware. Less hardware means a smaller footprint for your data center or server farm, and lower costs for power and cooling. In a cloud environment, the optimization of resourcing and equipment means that everyone who uses the infrastructureboth vendors and consumerscan benefit from this approach.
Now, just a quick note before we leave the topic of virtualization. A VM within the public cloud is sometimes referred to as an instance. This term is very vendor specific, but it refers to the same object as a virtual machine.

Cloud computing resources

When discussing resources within cloud computing, it won’t be long before you come across the following terms: Compute, Storage, and Network Resources. A clear understanding of each is essential for identifying what services you want to move to a cloud, should you decide to do so.

Compute. Compute objects provide the brains to process your workload, including what is required to process and run requests from your applications and services. In the cloud, compute resources compare to the hardware devices with CPUs and RAM, typically your servers, and how they work in a classic, on the ground environment.

Storage. Storage resources simply allow you to save your data across a shared environment. Any object that allows you to save your data in the cloud is a storage resource. In a typical environment, these would be seen as server hard discs, network attached storage (NAS) used for file level shared storage access over the network, and the high-speed storage area network (SAM), which is block level shared storage accessed over a high-speed network.

Network Resources. These provide the connectivity that allows all of the other resources to communicate with each other. In a typical environment, this would be accomplished through hardware such as routers (to route traffic between your networks), switches (which provide the background of network connectivity that allows other hosts to talk to one another), and firewalls (to allow or deny traffic into the environment).

If we go back to our original definition of what is cloud computing, we can say that it is a remote virtual pool of on-demand shared resources offering compute, storage, and network services that can be rapidly deployed at scale.

Cloud Deployment Models

Within cloud computing there are three typical cloud models for different levels of management and security: public, private, and hybrid.

Public cloud. A public cloud model is where a vendor makes available the use of a shared infrastructure, including compute storage and network resources that can be provisioned on demand and typically accessed over the internet for public usage. The consumer will never see the hardware used, nor know the exact location of their data, but they will be able to specify the geographical region to aid with the speed of performance, depending on where users are located.

From a design perspective, it makes sense to host your infrastructure as close as possible to your users’ geographic region to reduce latency. All back end maintenance for physical location services such as power, cooling, etc., along with the physical maintenance of host and hardware failures will be maintained by the vendor and invisible to the end user. As a general rule, you can access your services on the public cloud from anywhere as long as you have an internet connection.

Private cloud. With a private cloud, the infrastructure is privately hosted, managed, and owned by the individual company using it, giving it greater and more direct control of its data. As a result, the hardware is usually held on premise. This differs from a typical on-premise server file approach in that the same cloud principles are applied to the design, such as the use of virtualization. This creates a pool of shared compute, storage, and network resources.

With this approach, greater capital expenditure is required to acquire the host and the data center where they physically reside. Additional resources will be needed for the day-to-day operations and maintenance of this equipment. As a result, your daily operational costs will also increase compared to that of a public cloud model.

Hybrid cloud. The hybrid cloud makes use of both public and private clouds. This model may be used for seasonal burst traffic or disaster recovery.

A hybrid model is established when a network link is configured between the private cloud to the services within the public cloud, essentially extending the logical internal network. This takes the benefits given from both the public and private models and allows you to architect your services in the most appropriate model. Hybrid clouds are normally short-term configurations, perhaps for test and def purposes, and can often be a transitional state for enterprises before moving their service to the public cloud entirely.

Key Cloud Concepts

There are a number of important characteristics that allows cloud computing to be such a powerful service.  
On-demand resourcing. When you want to provision a source within the cloud, it’s almost immediately available to you. You can allocate it when and where you need it, so there’s no more waiting around for hardware to be ordered and stored, cabled and configured before using it.

Scalable. Cloud computing allows you to rapidly scale your environment’s resources up and down, and in and out, depending on the requirements and demands of your applications and services. When scaling up and down, you’re altering the power of an instance, perhaps using one with a greater CPU power. When scaling in and out, you’re simply adding or removing the number of instances you’re using. This offers a significant advantage compared to on-premise solutions from a cost perspective alone.
Because public cloud resources are optimized and shared between different organizations, the end user can benefit from exceptionally low compute storage and network costs compared to traditional hosting.

Flexibility and elasticity. Cloud computing offers huge flexibility and elasticity to your design approach. You can choose to have as many or as few resources as you require. You decide how much and how long you want them for, and at what scale. There are no retention contracts to adhere to for services.
Growth. Cloud computing offers your organization the ability to grow using a wide range of resources and services. Couple this with the on-demand element that we’ve already mentioned and your growth constraints are significantly reduced compared to a classic environment.
Utility-based metering. With many cloud services, you only pay for what you use. If you only have one server, or instance, running for two hours, and then shut it down, you only pay for two hours of compute resources. That’s it. You only pay for resources when you use them.

Shared infrastructure. Hosts within the cloud are virtualized. As a result, multiple tenants can be running instances on the same piece of hardware. This significantly reduces the amount of physical hardware required, which in turn reduces the amount of power, cording, and space required in the data center. In turn, this results in lower costs for you.

Highly available. By design, many of the core services with the public cloud and its underlying infrastructure are replicated across different geographic zones. Having data covered in multiple different places automatically helps you ensure the durability and availability of your data and services without even having to configure an architect for this resilience. It’s all provided by the vendor as a part of their service.
Security. This is one of the most discussed topics within cloud computing. Public cloud vendors such as Amazon Web Services and Microsoft Azure are considered to be more secure than your own data center. This is achieved by adhering to a shared responsibility model between the vendor and yourself. The vendor will operate at an exceptionally high standard of security for the underlying infrastructure of the cloud, and it’s down to you, the end user, to then architect security in the cloud using the tools, services, and applications available.

These are the key characteristics of cloud computing. You can see how different it is from the classic on-premise data center deployment that you may be used to.

Next: Cloud service models, use cases, and more

Stay tuned for our next post, or check out our free course What is Cloud Computing?

If you’re interested to learn more about the basic concepts of cloud computing and the different deployment models, I recommend the Cloud Academy’s What is Cloud Computing? Course Watch this short video for an overview of the course.

Avatar

Written by

Cloud Academy Team


Related Posts

Avatar
Logan Rakai
— April 7, 2020

How to Effectively Use Azure DevOps

Azure DevOps is a suite of services that collaborate on software development following DevOps principles. The services in Azure DevOps are: Azure Repos for hosting Git repositories for source control of your code Azure Boards for planning and tracking your work using proven agil...

Read more
  • Azure
  • DevOps
Alisha Reyes
Alisha Reyes
— March 17, 2020

Cloud Academy’s Blog Digest: How Do AWS Certifications Increase Your Employability, How to Become a Microsoft Certified Azure Data Engineer, and more

With everything going on right now, it's likely that the only thing you've been reading lately is related to the coronavirus pandemic. It's important to stay informed during these times, but it's also good to jump into something that can take your mind off of the current situation for j...

Read more
  • AWS
  • Azure
  • blog digest
  • Certifications
  • Cloud Academy
  • programming
  • Security
Avatar
Cloud Academy Team
— March 13, 2020

Which Certifications Should I Get?

As we mentioned in an earlier post, the old AWS slogan, “Cloud is the new normal” is indeed a reality today. Really, cloud has been the new normal for a while now and getting credentials has become an increasingly effective way to quickly showcase your abilities to recruiters and compan...

Read more
  • AWS
  • Azure
  • Certifications
  • Cloud Computing
  • Google Cloud Platform
Avatar
Guy Hummel
— March 10, 2020

How to Become a Microsoft Certified Azure Data Engineer

Data engineering is one of the most sought-after skills in the job market. According to a 2019 Dice.com report, there was an 88% year-over-year growth in job postings for data engineers, which was the highest growth rate among all technology jobs. If you want to become a data enginee...

Read more
  • Azure
  • Data Engineer
  • DP-200
  • DP-201
  • Microsoft
Alisha Reyes
Alisha Reyes
— March 7, 2020

New on Cloud Academy: Intro to GitOps; AWS Courses; Java, Python, Amazon Linux 2, Ubuntu, & Docker Playgrounds; and much more

New Lab Playgrounds This month, our Content Team released six new "playground labs." Our playground labs provide a safe and secure sandbox environment for you to explore your own ideas, follow along with Cloud Academy courses, or answer your own questions — all without having to instal...

Read more
  • AWS
  • Azure
  • gitops
  • Google Cloud Platform
  • lab playground
  • programming
Alisha Reyes
Alisha Reyes
— March 6, 2020

New on Cloud Academy: Intro to GitOps; AWS Courses; Java, Python, Amazon Linux 2, Ubuntu, & Docker Playgrounds; and much more

New Lab Playgrounds This month, our Content Team released six new "playground labs." Our playground labs provide a safe and secure sandbox environment for you to explore your own ideas, follow along with Cloud Academy courses, or answer your own questions — all without having to instal...

Read more
  • AWS
  • Azure
  • gitops
  • Google Cloud Platform
  • lab playground
  • programming
Avatar
Thomas Mitchell
— February 27, 2020

5 Steps to Vulnerability Management for Containers

Organizations have begun embracing containers due to their simplicity and to the fact that they allow for a faster development and deployment velocity. Although developers are thrilled with containers because they allow them to deliver solutions more quickly, security teams are sometime...

Read more
  • AZ-500
  • AZ-500 Exam
  • Azure
  • vulnerability management
Avatar
Chandan Patra
— February 21, 2020

Elasticsearch vs. CloudSearch: AWS Cloud Search Choices

Elasticsearch vs. CloudSearch: What's the main difference? Let's compare AWS-based cloud tools: Elasticsearch vs. CloudSearch. While both services use proven technologies, Elasticsearch is more popular, open source, and has a flexible API to use for customization; in comparison, CloudS...

Read more
  • AWS
  • Azure
  • cloudsearch
  • elasticsearch
Avatar
Andrew Larkin
— February 13, 2020

Cloud Academy Content Roadmap Updates

Welcome to our Q1 2020 roadmap. This is the content we plan to build over the next three months, between February 1 - and April 30, 2020. Let's look at some of our roadmap highlights. Atlassian Bamboo for CI/CD We had a lot of requests for practical guides on how to apply DevOps tool...

Read more
  • Artificial Intelligence
  • AWS
  • Azure
  • Docker
  • Google Cloud Platform
  • Kubernetes
  • Machine Learning
Alisha Reyes
Alisha Reyes
— February 7, 2020

New on Cloud Academy: Git Labs, CKA and CKAD Lab Challenges, AWS and Azure Learning Paths, AGILE, and Much More

We just kicked off our first Free Weekend of 2020. This means we've unlocked our Training Library for just 72 hours. Until Sunday at 11:59 pm (PST), you can get unlimited access to our industry-leading learning paths, courses, certification prep exams, and our most popular hands-on labs...

Read more
  • agile
  • AWS
  • Azure
  • Google Cloud Platform
  • Linux
  • OWASP
  • programming
  • red hat
  • scrum
Alisha Reyes
Alisha Reyes
— January 31, 2020

How to Unlock Complimentary Access to Cloud Academy

Are you looking to get trained or certified on AWS, Azure, Google Cloud Platform, DevOps, Cybersecurity, Information Security, Python, Java, or another technical skill? Then you'll want to mark your calendars. Starting Friday, February 7 at 12:00 a.m. PST (3:00 a.m. EST), Cloud Acade...

Read more
  • AWS
  • Azure
  • cloud academy content
  • complimentary access
  • GCP
  • on the house
Alisha Reyes
Alisha Reyes
— January 6, 2020

New on Cloud Academy: Red Hat, Agile, OWASP Labs, Amazon SageMaker Lab, Linux Command Line Lab, SQL, Git Labs, Scrum Master, Azure Architects Lab, and Much More

Happy New Year! We hope you're ready to kick your training in overdrive in 2020 because we have a ton of new content for you. Not only do we have a bunch of new courses, hands-on labs, and lab challenges on AWS, Azure, and Google Cloud, but we also have three new courses on Red Hat, th...

Read more
  • agile
  • AWS
  • Azure
  • Google Cloud Platform
  • Linux
  • OWASP
  • programming
  • red hat
  • scrum