Cloud computing
COURSE SYLLABUS
Module 1: Overview of Cloud Computing
Introduction and Learning Objectives
Definition and essential characteristics of cloud computing
Expert Viewpoints: Definition and Essential Characteristics of Cloud
Computing
History and Evolution of Cloud Computing
Key Considerations for Cloud Computing
Key Cloud Service Providers and Their Services
Cloud Adoption - No Longer a Choice
Expert Viewpoints: Cloud Adoption Benefits and Use Cases
Cloud Adoption - Some Case Studies
Internet of Things on the Cloud
Artificial Intelligence on the Cloud
Blockchain and Analytics on the Cloud
Module 2: Cloud Computing Models
Introduction and Learning Objectives
Overview of Cloud Service Models
Infrastructure-as-a-Service
Platform-as-a-Service
Software-as-a-Service
Public Cloud
Private Cloud
Hybrid Cloud
Expert Viewpoints: Cloud Computing Service and Deployment
Models
Community Cloud
Module 3: Components of Cloud Computing
Introduction and Learning Objectives
Overview of Cloud Infrastructure
Virtualization and Virtual Machines Explained
Types of Virtual Machines
Bare Metal Servers
Secure Cloud Networking
Containers
Expert Viewpoints: Components of Cloud Computing
Basics of Cloud Storage
File Storage
Block Storage
Object Storage Overview
Object Storage - Tiers and APIs
Content Delivery Networks
Expert Viewpoints: Cloud Storage
Module 4 - Emergent Trends and Practices
Introduction and Learning Objectives
Hybrid Multi-Cloud
Microservices
Serverless Computing
Cloud Native Applications
DevOps on the Cloud
Application Modernization
Expert Viewpoints: Cloud Native and Emergent Cloud Trends
Module 5: Cloud Security and Monitoring, Case Studies, and
Jobs
Introduction and Learning Objectives
What is Cloud Security - Part 1
What is Cloud Security - Part 2
Policies and Principles of Access Management
Identity and Access Management
Cloud encryption
Cloud Monitoring Basics and Benefits
Cloud Monitoring Benefits
Case Studies in Different Industry Verticals
Career Opportunities and Job Roles in Cloud Computing
Expert Viewpoints: Job Market for Cloud Computing
Final Project: Deploy an application on the cloud
Final Exam
Course Overview
In this course, you’ll be introduced to some of the prominent cloud service providers of our times
(e.g. AWS, Google, IBM, Microsoft, etc.) the services they offer, and look at some case studies
of cloud computing across industry verticals. You’ll also be introduced to Cloud Adoption, and
some related technologies such as Blockchain & Analytics and AI.
You will learn about the various cloud service models (IaaS, PaaS, SaaS) and deployment
models (Public, Private, Hybrid) and the key components of a cloud infrastructure (VMs,
Networking, Storage - File, Block, Object, CDN). We also cover emergent cloud trends and
practices including - Hybrid Multicloud, Microservices, Serverless, DevOps, Cloud Native and
Application Modernization. You will also learn the basics of cloud security, monitoring, as well
as different job roles in the cloud industry.
Course Learning Objectives
After completing this course, you will be able to:
Define cloud computing and explain essential characteristics, history, the business case
for Cloud, and the emerging technologies enabled by Cloud.
Describe Cloud service models, including IaaS, PaaS, SaaS
Describe Public, Private, and Hybrid Cloud deployment models.
Explain Cloud infrastructure components.
Explain emerging cloud-related trends, including Hybrid, Multicloud, Microservices,
Serverless, Cloud Native, DevOps, and Application Modernization.
List and describe services of popular cloud platforms, including AWS, Microsoft Azure,
Google Cloud, IBM Cloud, Alibaba Cloud, and others.
Module one : Introduction to cloud computing
Module Introduction
In this module in the first lesson, you will learn the definition of cloud computing and its five
essential characteristics. In the next topic, you will learn about the history and evolution of cloud
computing and the benefits of the pay-as-you-go feature of cloud computing. The third topic will
describe the key considerations, benefits, and challenges of cloud computing. You will next
discuss some common cloud service providers. In the second lesson, you will learn the need for
cloud adoption by businesses. You will then discuss some case studies of businesses that
benefitted from cloud adoption. In the third lesson, you will learn about emerging technologies
like IoT, AI, Blockchain, and so on that leverage cloud’s scalability and processing power to
provide value to individuals and businesses alike, supported by some case studies.
Learning Objectives
After completing this module, you will be able to:
Describe cloud computing as per NIST.
Describe the five essential characteristics of cloud computing.
Summarize the history and evolution of cloud computing.
Describe the benefits of pay-as-you-go.
List the key considerations for cloud computing.
List the benefits of cloud computing.
Enumerate the challenges of cloud computing.
Discuss some common cloud service providers.
Explain the need for cloud adoption.
Discuss the impact of cloud adoption on different businesses.
List the advantages of IoT and cloud connectivity.
Describe the relationship between IoT, AI, and cloud.
View a case study using AI on the cloud.
Explain what Blockchain is.
View a case study using Blockchain on the cloud.
Describe the relationship between Blockchain, AI, and Cloud.
Describe the role of Analytics technologies in cloud.
Explore a case study using analytics technologies on the cloud.
History of cloud computing
Cloud computing is an evolution of technology over time.
The concept of cloud computing dates to the 1950s
when large-scale mainframes with high-volume processing power became available.
The practice of time sharing (or resource pooling)
evolved to make efficient use of the computing power of mainframes.
Using dumb terminals, whose sole purpose was facilitating access to the mainframes,
multiple users could access the same data storage layer and CPU power from any
terminal.
In the 1970s, with the release of an operating system called Virtual Machine (VM),
it became possible for mainframes to have multiple virtual systems,
or virtual machines, on a single physical node.
The virtual machine operating system evolved from the 1950s application
of shared access of a mainframe.
By allowing multiple distinct computing environments
to exist on the same physical hardware.
Each virtual machine hosted guest operating systems
that behaved like they had their own memory, CPU, and hard drives,
even though these were shared resources.
Virtualization thus became a technological driver
and a massive catalyst for some of the most significant evolutions
in communications and computing.
Even 20 years ago, physical hardware was quite expensive.
With the internet becoming more accessible, and the need to make hardware costs more
viable,
servers were virtualized into shared hosting environments, virtual private servers,
and virtual dedicated servers,
using the same functionality the virtual machine operating system provided.
So, for example, if a company needed an ‘x’ number of physical systems to run their
applications,
they could split one physical node into multiple virtual systems.
A hypervisor is a small software layer
that enables multiple operating systems to run alongside each other,
sharing the same physical computing resources.
A hypervisor also separates the Virtual Machines logically,
assigning each slice of the underlying computing power, memory, and storage,
preventing the virtual machines from interfering with each other.
So if, for example, one operating system suffers a crash or a security compromise,
the others can keep working.
As technologies and hypervisors improved and could share and deliver resources reliably,
some companies decided to make the cloud’s benefits accessible to users.
These users did not have an abundance of physical servers to create their cloud
computing infrastructure.
Since the servers were already online, spinning up a new instance was instantaneous.
Users could now order cloud resources from a larger pool of available resources
and pay for them on a per-use basis, also known as pay-as-you-go.
This pay-as-you-go or utility computing model,
became one of the key drivers behind cloud computing's launching.
The pay-per-use model allowed companies and even individual developers
to pay for the computing resources as and when they used them,
just like units of electricity.
This allowed them to switch to a more cash-flow friendly OpEx model from a CapEx
model.
This model appealed to all sizes of companies, those who had little or no hardware,
and even those that had lots of hardware,
because now, instead of making substantial capital expenditures in hardware,
they could pay for compute resources as and when needed.
It also allowed them to scale their workloads during usage peaks,
and scale down when usage subsided.
And this gave rise to modern-day cloud computing.