Cloud Computing AZ-900 Flashcards
NIST definition of Cloud Computing.
Cloud computing is a model for enabling universal, convenient, on-demand network access to a shared pool of configurable computing resources (e.g networks, servers, storage, apps and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.
Define Cloud Computing?
Cloud computing is the delivery of computing services over the internet
Expands the traditional IT offerings to include services like
Internet of Things (IoT)
Machine Learning (ML)
Artificial Intelligence (AI)
Enables organizations to quickly expand their compute footprint without the need to build a datacenter.
Benefits of Cloud Computing
Cloud is a cost effective, global, secure, scalable, elastic and always current.
Allows orgs to transfer risk, operational responsibility and to focus on innovation.
Public Cloud Model and it’s use case
Public Cloud Model:
Everything runs on your cloud provider’s hardware. Advantages include scalibility, agility, pay as you go, no maintenance, and low skills
Use case: Use to skip building your own
datacenter
Private Cloud Model and it’s use case
Private Cloud Model:
A cloud enviroment in your own datacenter. Advantages include legacy suppport, control, and compliance
Use case: Use when you need more
control.
Hybrid Cloud Model and it’s use case
Hybrid Cloud Model:
Combines public and private clouds, allowing you to run your apps in the right location. Advantages include flexibility in legacy, compliance, and scalability scenarios.
Use case: Use when you need more
control.
Economies of scale
The ability to do tasks more efficiently or at a lower cost per unit when operating at a larger scale.
Capital expenditure (CapEx)
It’s the spending of money on physical infrastructure up front.
CapEx is associated with legacy on premises datacenter scenario.
Operational Expenditure
It is spending money on services or products now and being billed as you go.
OpEx is associated with public cloud consumption (pay as you go)
The cloud increases OpEx spending and reduces CapEx spending.
Consumption Based Model
Pay for what you use, typically per unit of time or capacity (per-minute(VM), per-GB (Storage), per execution(Azure Functions)).
Fixed Price Model
You provision resources and pay for those instances whether you use them or not.
Advantage is it ensures predictable costs for your cloud services.
Serverless Architecture
A cloud computing execution model where the cloud provider dynamically manages the allocation and provisioning of servers. hosted as a PAYG model based on use.
Resources are stateless, servers ephemeral(shorter life span) and often capable of being triggered. E.g Functions as service.
Keywords: Stateless, ephemeral & triggered.
How is serverless different from PAAS in terms of responsibility?
PaaS:
More control over deployment enviroment.
Application has to be configures to auto scale.
Application takes a while to spin up
Serverless:
Less control over deployment enviroment.
Application scales automatically.
Applicationcode only executes when invoked.
Similarity:
Developers have to write code.
No server management.
Word Association: Serverless
Logic App
Functions
Event Grid
Logic App
A cloud service that helps you schedule, automate, and orchestrate tasks, business processes, and workflows.
You can choose from a gallery of hundreds of pre-built connectors for Microsoft and 3rd party services.
Logic app is the foundation for power automate(MS Flow).
Functions
An event driven, compute on demand experience that extends the existing Azure application platform with capabilities to implement code triggered by events occuring in Azure as well as on premises systems.
(This enables billing per execution rather than by run time)
Event Grid
Event grid enables you to easily manage events across many different Azure services and applications.
Once a subscription is created, Event grid will push events to the configured destination.
It’s what we call pub/sub model where app or service reacting to an event often called as reactive programming.
Event grid makes it easy for any developer to utilize the “push” model instead of the inefficient “pull” across their serverless architecture.
(Like Azure functions, it is ‘pay per use’)
Keywords: serverless, push
Benefits of using cloud services
1- Availability:
It encompasses availability of the infrastructure, applications and services.
Generally expressed as a number of 9’s, such as five nines or 99.999% availability.
(Availability and uptime are often used interchangeably. Uptime simply measures the amount of time system is running)
2- Scalability:
The ability of a system to handle growth of users or work.
It refers to the ability of a system or service to handle more traffic (to scale up or scale out).
3- Elasticity:
The ability of a system to autmatically grow and shrink based on app demand (Focuses on the ability of a system or service to scale quickly to spikes in demand)
4- Agility:
Focuses on the speed and ease of allocating and deallocating resources.
This allows for vast amounts of computing resources to be provisioned in minutes.
E.g : provisioning a scale set of 10 VMs.
5- Fault Tolerance:
The ability of a system to handle faults in a servce like power, network or hardware failures.
Generally, refers to component-level failures.
6- High Availbility:
The ability to keep services up and running for long periods of time.
Generally, refers to service-level failures.
Characteristics common in cloud platforms and services
Rapid elasticity and scalability
Allows the customer to grow or shrink the IT footprint as necessary to meet needs without excess capacity.
These two are related, but unique. What’s the difference?
Elasticity:
The ability of a system to automatically grow and shrink based on app demand.
Capabilities can be rapidly provisioned and de-provisioned
(scale-out: adding more instances, scale-in: removing those excess instances)
Scalability:
The ability of a system to handle growth of users or work. Ability to grow as demand increases.