Transcripts
1. Introduction: Hello and welcome to the first
module of this training. Before we actually dive
into Amazon Web Services, you should have a solid
foundation of cloud computing. So without any further
delay, let's get started. In this module, we are going to cover what is cloud computing? What are the different types
of cloud deployment models? We will also talk about datacenters and how did cloud computing come
into existence? What are the different types
of cloud service models? Some important concepts
related to cloud. We will then move on to different cloud providers that are providing cloud services. And more importantly,
the benefits of cloud computing over
traditional methods. We will go over each
topic in great detail so that you get a clear
understanding as they are very important to
understand before moving onto AWS upon successful
completion of this module, you will have a
thorough understanding of cloud computing, its key concepts and benefits. You will be able
to decide when you should use cloud
computing and which models and services you should employ that you take notes
throughout this training. As naughts make that
learning a lot easier by providing you with quick
support whenever you want. That's all for this video. In the next one, we will cover
what is cloud computing. See you in the next video.
2. What is Cloud Computing? : Welcome students. From this video. We will start our journey of cloud computing with
Amazon Web Services. In this video, you
will learn what is cloud computing and what are different cloud
computing services. So let's get started. Cloud computing is the
on-demand delivery of compute, storage, database, networking, and many more services
over the Internet. I am assuming debt. You are a beginner. These terms miss out new to you. But don't worry, I am going
to explain them shortly. Let's first understand what
on-demand delivery is. On-demand means, get
it when you need it. Let's understand this with
the help of an example. Suppose you are a foodie and you love cooking
and try new recipes. Imagine how great
it would be to get the exact amount of
ingredients every time you try a new recipe so
that you will get the best taste and will not end up wasting
any ingredients. It may not sound possible
when it comes to ingredients, but it is undoubtedly possible in the case
of Cloud computing, you get exactly what
you need and that too, when you order it. Another thing that makes
cloud computing so simple, it's pay as you go pricing. You only pay for what you request and what you
use in cloud computing. Once you are done with
any service or resources, you can easily delete
or deallocated. Hence, you do not need to
pay for anything extra. Only pay for what you
use is in that grid. There are four core Cloud
computing services which are compute, storage,
database, networking. Let's understand
them one by one. Compute is the processing
power of your machine. Let's understand this
with an example. Suppose you are creating a PowerPoint presentation
for your final year project. As you need a lot of the
information for your project, you have opened a few web
browsers, depths loved music. So you are playing
music as well as your computer is doing
several tasks simultaneously. You notice that your
computer starts hanging. You close a couple of tabs
and stop the music player. Now your computer starts
running smoothly. Again. It's because your computer
has a definite compute power and it can process only a limited amount
of request at a time. That's why to run heavy
applications are games. You go for a decent
processor and more RAM. In the same way. To process your data or run your application in the Cloud. You need compute service
that cloud computing offers. That's about compute. Let us now understand another cloud computing
service that is storage. Let's take the same example. Suppose you have completed your PowerPoint presentation
and you then saved the PPD, some additional documents
on your computer. That means your computer has a storage unit to
store your data. But what happens if your
computer's hard disk crashes? You will lose all
your data, right? In that case, you can backup your documents on
a hard disk drive. So by definition,
Storage enables you to save your data within
a data storage device. You can store data
such as videos, music, documents, pictures, etc. The data that you have saved on any storage device remain permanently in the device
until you delete it. Similarly, if you want
to store data either temporarily or
permanently on the Cloud, you can use Cloud Storage. This was about storage. Let's now understand
the database. Again. The same example. Suppose while working
on the project, you created an Excel sheet. This sheet has
information regarding your projects in
rows and columns. When you arrange your data or information in certain
rows and columns, it is called structured data. The data in an Excel sheet
is also structured data. It is basically a
format which makes it convenient to store or fetch
the data whenever you want. Excel sheets are fine
for a certain data site. But to store a huge
amount of structure data, you will need a special type of storage called a database. There are different types
of databases like MySQL, Oracle, or SQL Server based on the type of
data you want to store. Database enables you to store an organized collection of structured information or
your application's data. So if you need to store
structured data in the Cloud, you can use a database. Alright, let's move on to
the networking service. When you use compute, storage and database
in the cloud, these services need to be connected either privately
or with the Internet. And that's where networking
comes into picture. It is a service that provides connectivity among
different services. Networking is an
interesting topic. We will cover it in detail
in a separate module. Alright, let's go back to the definition
of cloud computing. Again. Cloud computing offers on-demand computing services
such as database storage, compute, and networking
over the Internet. Hope you now understand the definition of
cloud computing. That's all for this lesson. We will cover Cloud
deployment models and understand them
in the next lesson. See you soon.
3. Cloud Deployment Models: Hello and welcome back. In the previous lesson, we learned about cloud
computing and in this lesson we will talk about different Cloud
deployment models. But before that, let's
try to understand why do we need different types of cloud deployment models? The answer, It's simple. Different organizations
have different requirements and different levels of control on their
Cloud infrastructure. So to cater to their needs, we have different types of
cloud deployment models. Each model offers a different
level of management, security, and cost to the users. So once you understand on
the cloud deployment models, you will be able to decide which cloud model best suits
you and your customer. Now, let's look at the definition of cloud
deployment model. It is based on three
main attributes. That is Cloud
infrastructure located, who controls it, and who
can access and use it. There are three types of
cloud deployment models. Public Cloud, private
Cloud, and hybrid cloud. Public cloud is a cloud
computing infrastructure maintained and operated by
a Cloud service provider. Some of the public
cloud providers are Amazon Web Services, microsoft Azure,
and Google Cloud. In the public Cloud
computing model, cloud services such
as compute, storage, database, and network
are available over the internet and
anyone can use them. It means a startup,
big organization, or even an individual can
use public Cloud services. The Cloud service providers are responsible for maintaining
the physical infrastructure, including building power,
cooling and hardware failure. We will learn about these public Cloud providers in detail later in this module. Now, let's go to
the Private Cloud. Private Cloud is a Cloud
computing infrastructure that is specifically
provisioned for a company. In the private cloud
computing model, cloud services such
as compute, storage, database, and network
are available to an organization and
its users only. However, the infrastructure can be maintained either
by the organization itself or by the third party who is providing
the Cloud services. Similarly, the hardware can be located on-site audit
the third party site. So when a cloud
computing infrastructure is available for us, such an organization and to
their internal people only. This is called Private Cloud. Private Cloud are more
expensive than public Cloud. As huge upfront capital is required to set them
up and maintain them. They are generally more
secure than public Clouds. Therefore, organizations
that want to run their mission-critical
applications refer private clouds due
to security reasons. We will talk about Cloud
security in a separate module. The next is hybrid cloud. As the name suggests, hybrid means the
combination of two or more. A hybrid cloud is a cloud computing infrastructure
that benefits from both public and private models and enables organizations
to use both. So when an organization uses a public cloud along with
their private cloud, that's called Hybrid Cloud. In other words, a hybrid Cloud combines
a public cloud and private cloud to allow data and applications to be
shared between them. Now you must have an idea about the three
deployment models of cloud computing and what makes them different
from each other. That's all for this video. In the next lesson, we will cover
traditional datacenters and understand them. See you in the next video.
4. Traditional Data Centers: Hello and welcome back. In this video, we are going to understand what is
the datacenter, its components, and
some common challenges associated with
on-premise data centers. Let's get started. Well, to understand
what a data center is, let's go back 20 years and see how traditional
IT used to work. Then you might
know that a lot of companies started either from
the study room or garage, including Amazon,
Apple, and Google, which started from the garage. So the founders of these
companies got a computer, put it in their
garage or study room, and deploy these websites
on the Internet. These computers provided
the website with underlying hardware required
to run the website. And as their business grew, they added more and more
computers to meet the demand. This worked well
in the beginning. But there were times when the garages were
packed with computers and there was no space left
to accommodate new computers. So they moved these computers
to a bigger space or a building that can
accommodate the hardware's based on the demand. Hence, a physical space
where organizations keep the computer systems and related hardware required
for their websites, apps, or IT infrastructure
is known as a datacenter. Now you will also hear about traditional datacenters,
an on-premises. Don't worry. These
are all the same. The terms datacenter
on-premises and traditional data-center
are used interchangeably. A datacenter is all
about big computers and related hardware that are required to run a
website or an app. You can add more systems and hardware based on the
growth of your company. These works well. What, what are the
challenges with the traditional datacenters that are making organizations
move to the Cloud. Let's now talk about
these challenges. First and foremost, cost is a major challenge with the
traditional datacenter. Because setting up
a datacenter needs a huge upfront investment
in building hardware, cooling, power, ventilation,
equipment, etc. That doesn't end here. You will have to spend a significant amount on
the maintenance as well. Another big problem with the datacenter is
capacity planning. They should always be
ready to meet the demand. And it's hard to predict the
actual hardware requirement. If businesses grow five times, we need five times more servers. If businesses grow eight times, we need eight times
more servers. Also, if it does not grow
at the expected rate, you will have extra servers due to these unexpected demand. Most of the time, we end up over-provisioning
the servers, that leads to a waste of computing space, cooling,
electricity, etc. At the end of the day, it is all about cost. Staffing and
technical skill sets. In addition to the
servers and storage, datacenters also include
applications connecting cables, network connectivity,
cooling systems, power, and much more with
everything running at once. So to monitor the
datacenters and troubleshoot them
during any issue, we need skilled staff, which further leads
to additional cost. Now you understand
the datacenter and the challenges of maintaining and running the data center. Is there a way to
reduce this hassle of setting up and
maintaining a datacenter. Is it possible to outsource
this from a third party? And the answer is yes. This has been done by
many organizations as maintaining and
running a data center is not their core business. They work with third
party data centers, service providers to rent space in the provider's
facility to either keep their servers or
rent servers from them and pay the
service provider for managing their servers. That's a better way to offload some challenges like
staffing and training. However, capacity planning and upfront investment would
still be major issues. And that's where cloud
computing comes to rescue us. Because hosting applications and storing data has
now become handy. As you do not need to spend on physical space and
maintain it regularly. You can get compute,
storage, database, and network on-demand
without having to worry about setting up and
maintaining data centers. That's all for this video. In the next lesson, we will cover Cloud service
models and understand them. See you in the next video.
5. Cloud Service Models: Hello students, welcome back. In this video, we will learn
about cloud service models. This is an important concept in cloud computing
that will help you understand how cloud provides us with flexible ways to
deploy our applications. Cloud computing is offered in three different
service models, each satisfying a unique
business requirement. These three models
are Infrastructure as a Service or Platform
as a Service, and Software as a
Service or SaaS. So let's start. Do you know what an organization
will have to manage if they decide to host an application on their
on-premise datacenters. Fast. The application itself, this application will
have a database for data. It must be developed in any
programming language, right? So they need a web or application server
that's called runtime. They also need a
programming language and some middleware software
to run the application. Then off course, they
need an operating system. The physical server, which is virtualize multiple
operating system and applications on a
single physical server. We will understand
virtualization in a later video. Storage for saving data and networking to connect
IT systems like router, switches, other
computers, and Internet. Their team will have to
manage so many things. It's similar to making
the whole pizza at home. You will have to get everything that's needed
to make the pizza, from madoff to toppings
or when gas, etc. But there are other
ways you can enjoy a picture without having
to do anything yourself. Similarly, cloud computing also offers different models to
host your applications. Let's take a look. The first Cloud service model is Infrastructure as a Service, also known as Eyegaze. This model provides us the fundamental building blocks
for hosting applications, such as networking, storage,
compute, and virtualization. As an application developer, you don't have to worry about the underlying core services. And your team can now focus on the things that matter the
most for your application. If we compare this with
our pizza example, you get a well equipped
kitchen gas oven. Now you only have to make the pizza toppings
and cook on your own. The next cloud service model is Platform as a Service or pass. This model adds an additional
layer on top of Eyegaze, which are operating system
middleware runtime. In this model, cloud providers
will take care of runtime, middleware and
operating systems, along with the core
services like networking, storage, servers,
and virtualization. It provides even
more flexibility to the application development
team so they can focus on application development,
deployment and management. Again, take a example. You get a ready-made
piece that off. Now you simply add toppings
of your choice and then cook. The final Cloud Service model is software as a service
which provides organizations with
complete software that is developed and managed
by a third party provider. It means Cloud providers
will be responsible for everything that is required to develop and deploy
an application. In SAS offering, you actually don't have to worry
about anything at all. One of the most common
examples of SAS is a Gmail service
where you only care about sending and
receiving emails. There are many more
SaaS applications like Google Drive, Dropbox, etc. Surprisingly, we have been
using says All this way. Please note, by definition, SAS applications work on
a pay as you go basis. We pay a subscription price
to use these services. If we compare this again
with the pizza example, says is basically
Domino's, Pizza Hut, etc. Who are popular for
pizza as a service. You order and pay for a visa
and get it with no hassle. To sum up, let's have
a quick look at what these Cloud services
models have to offer. Is model offers the
computing resources to host, build, and run applications. The past model provides
an environment for application developers to
build and deploy applications. And finally, the
SaaS model delivers paid software to users and
companies over the Internet. That's all for this video. In the next lesson, we will cover key cloud
concepts and understand them. See you in the next video.
6. Key Cloud Concepts: Hello students, welcome back. In this video, we
will learn about some key concepts in cloud
computing like scalability, which includes vertical
and horizontal scaling, elasticity, agility, high availability,
and fault tolerance. So let's start with scalability. Let's assume you have a web application running
on a virtual machine. If virtual machine is a new
term for you, don't worry. We will understand this in the introduction
to compute module. For the time being, think of it as your
laptop or desktop with computing power to process
any request or command. When more people access
your application, it will require more
computing power, which is nothing but CPU and memory to serve all the users. So you will have to scale up this virtual machine by
increasing its computing power. If you decide to
increase the size of your existing
virtual machine, you are moving along
the vertical line, which is why this is
called vertical scaling. And increasing the size of the resource is
called scaling up. If you decrease the size
or power of the machine, this is known as scaling down. Instead of increasing the
size of your virtual machine, you can also scale
up your resources by adding more virtual machines
to your infrastructure. In this case, we are moving
along the horizontal line. Hence, this type of scaling
is called horizontal scaling. If you increase the number
of your Virtual Machines, this is called scaling out. And if you decrease the number
of the virtual machines, this is called scaling in. To summarize, scalability is the ability of the
system to scale. In this case, scaling
is a process of increasing or decreasing
the compute power. Next is elasticity. Let's assume your
application is working fine. But you notice that the load on your application varies
throughout the day. The traffic is more during the daytime and less
during the nighttime. So as the day progresses, your application
needs more power, but you don't need
the same amount of resources during the night. Hence, the ability to scale
the Virtual Machines based on the demand of the application
is known as elasticity. In other words, you design the system in such
a way that it will be able to allocate and de-allocate virtual
machines whenever needed. If this process is
done automatically, this is called
automatic scaling. Elasticity is the ability of the system to scale dynamically. The next concept is agility. Let's take the same
application example again. Whether you want to achieve scalability or elasticity
for your application, you need more virtual
machines, right? So the question is, how quickly can you get virtual machines
when you need them? One of the major
differences between the Cloud and
on-premises is dead. Requesting resources in the on-premises environments
usually takes days, weeks, or even months. Whereas in the Cloud, this could be done in
minutes or even seconds. Hence, agility is the
ability to react quickly. The next concept is
high availability. Again, going back to our
example application, you are running an application
on one virtual machine. Now your security
team needs to abduct security patches to
the operating system, which will take an R or so. So during this time, your application will be done. That's not a good
user experience. For your users won't be able to use your application
for around an hour. In IT terms, we could say the application is
not highly available. So high availability is
the ability of a system to operate continuously
without failure for a designated period. In this case, to make the application available
for your users, you can run the application
on to virtual machines. So while your security team will do patching on one
virtual machine, another will be available. The next concept is
fault-tolerance. Alright, let's continue
with the same example. Your application is
now highly available as you are running your application on
to virtual machines. Now you have a strict
requirement that your application runs on two virtual machines
all the time. Let's assume there is a hard disk crash in
one virtual machine. So your application will stop working on that Virtual Machine. In simpler terms,
your virtual machine is not able to tolerate
hard disk failure. To cope with such situations, you need a
fault-tolerant system. Tolerance means the ability
of a virtual machine to remain up and running during component and
service failures. A fault-tolerant system
takes care of any failure, repairs it, and keeps
the application running. So fault tolerance
refers to the ability of a system, computer,
network, storage, etc, to continue
operating without interruption when one or
more of its components fail. Alright? I hope you now understand
the meaning of these clouds specific terms as they are important from the
interview point of view. So make sure you are
able to explain them. That's all for this video. In the next lesson, we will cover benefits of cloud computing and
understand them. See you in the next video.
7. Benefits of Cloud Computing: Hello students, welcome back. So far in this module, we have understood the
traditional data-center cloud computing and different elements and features of Cloud Computing. Let us now look at the main advantages of
using cloud computing as knowing these
benefits can really help you make an
informed decision. So let's start with
the first benefit. Trade fixed expense
for variable expense, it simply means that
you can completely eliminate the upfront cost
of setting up a datacenter. In the case of
traditional datacenters, you have to invest a
large amount of money in acquiring physical space
to set up your datacenter. Acquiring the hardware and the staff for racking and
stacking these hardware. These upfront
investment is called CapEx capital expense
or fixed expense. On top of that, you will need a technical team to keep the data center running. These cost is known as OPEX, operational expense or
a variable expense. Combining both CAPEX
and OPEX can be hundreds of thousands of dollars for a medium
to large datacenter. For a small organization
or startup, that's a significant amount. Another challenge is the
utilization of the datacenter. It does not matter
whether you use the full capacity of
the datacenter or not. You have already invested CapEx amount and will have
to be a regular OpEx. Cost is one of the
main benefits of cloud computing because billing with the Cloud is fundamentally different from the
traditional data-center. With Cloud, you will have to pay monthly based on the
resources you consume. That's the grid part. If you are just starting
with your venture, there's no need to invest thousands of dollars to
set up the datacenter. Instead, you can offer cloud and pay only
for what you use. And in case your bill exceeds
your allotted budget. You can find ways
to save money on Cloud by turning off
unused resources, deleting old resources, and
optimizing your applications. Now, let's move on
to the next one. That is the benefit from
massive economies of scale. You get the cloud at
a very low price. That's because of
economies of scale. Simply put, when you do
something at large scale, the cost goes down. Cloud providers are building big data centers all
around the vault by investing in huge amount of hardware and Cloud experts. Due to this, they get
everything at a lower price. Then they install and
run it efficiently. Due to all of these factors, you get cloud facilities at a lower variable cost than
running your own datacenter. Next is stop guessing
the capacity. When you build a
traditional data-center, you need to estimate what capacity you will
need to run your business. Let's say you estimated
that you will have 5 million users
over the next two years. So you purchased enough hardware to sustain that
growth in the future. However, it turned out that you only have about 1 million users, which is much lower
than you anticipated. Now you are stuck
with the cost and hardware that you bought
for the 5 million users. Basically, you
overestimated the capacity. On the other hand, if you
underestimate the capacity, you will have to expand
your capacity and add more hardware to handle the growth before
you lose customers. But that takes time. So the bottom line is that guessing your capacity
upfront can be problematic and you are very likely to over or
underestimate it. But that's not the case
with cloud computing. You don't need to
guess the capacity. You can just provision
the resources based on your current
business needs. And use the simple
scaling mechanisms of cloud computing to scale up or down resources based on real life needs
is in that grid. Let's move on to
the next benefit, which is one of my favorites, increase speed and agility. If you are someone who
loves trying new things, cloud computing can
make it very easy for you to experiment with
new ideas and products. You can quickly spin up new environments based
on your requirement. And once you are done, you can just delete
those resources and stop incurring
any additional costs. I hope by now you have understood that we don't
have the same flexibility with the on-premise datacenter
because it's scaling up requires buying new
hardware and installing them, which sometimes take
weeks and even months. The flexibility of Cloud
computing helps you focus on the things that
mattered the most and drive innovation
for your business. Next is stopped spending money in running and
maintaining datacenters. If you need a server or an
application for your business, you don't really need
to spend your time and money on running and
maintaining datacenters. Instead, you can opt for cloud and focus on
your core business. Just get what you require
from the Cloud and let the cloud providers take care of servers and data centers. You put all your effort and energy to flourish
your business. And last but not least, is go global in minutes. Let's assume you are
a company based in India and want to expand
your operations to Japan. You have datacenters in India to serve your
customers in India. But to operate in Japan, you will need
datacenters in Japan. One way is to set up the
datacenters in Japan, but that's long and expensive. So Cloud providers have their data centers
all over the world. If you are using cloud
computing in India, you can start and run your application in almost
any region of the world. In just a few clicks, Cloud providers have their
datacenters across the world. We will understand
this in detail in the AWS global
infrastructure module. So take advantage of the global presence of
Cloud providers and replicate your application in Japan or any part of the world. Taking the traditional
approach would take months or years. Whereas with Cloud, it
just takes minutes. So these are the six main
benefits of using the cloud. And I recommend that
you study more about these advantages and find out companies that are operating
globally using Cloud. That's all for this video. The next lesson, we will cover different Cloud providers
and understand them. See you in the next video.
8. Different Cloud Providers: Hello and welcome back. In this video, we are
going to talk about different Cloud service
providers in the market. As you know, this training is all about Amazon Web Services. However, there are
other Cloud providers available in the market as well. So before we fully
dive into AWS, let us briefly explore
how cloud computing began and who are some of the key players in the
cloud computing industry. Before the emergence
of cloud computing, there used to be
client-server computing, which is basically
centralized storage, hosting of all the
software applications and storing the data
on the server side. Now suppose any user wants to access specific data
or run a program. The first need to connect
to the server, again, appropriate access, and
then perform the task. Shortly after
client-server computing, distributed computing came
into existence in which computers were
networked together and share their
resources when needed. The concept of shared computing
brought a revolution. That revolution is what we are
studying in this training. Cloud computing. Around 1961, John McCarthy and American computer
scientist suggested that computing can be
sold like a utility, just like water or electricity. It was a thoughtful idea, but it was ahead of its time. Like all brilliant ideas. The time passed. And in 1999,
salesforce.com started delivering its application to users using a simple website. Customers were able to access the Salesforce application
over the internet. This is the first
time we saw the dream of computing being
sold as a utility come true in 2
thousand to Amazon started amazon Web Services. It was a wing of
Amazon.com itself, but its purpose was to
provide amazon.com with the storage and compute services required to run the
e-commerce website. After successfully using
it for four years. In 2006, Amazon Web Services decided to sell compute as a service to the general public. That was the time
when the public Cloud first came into
existence in 2009. Google started it's
Google App as a Platform, as a Service offering. By this time, the big pears began to enter the cloud
computing evolution. In the same ear, Microsoft
also launched Windows agir. And after that,
other companies like Oracle and HP also
joined the game. So that's how cloud
computing started. These are the main players in
the Cloud computing market. I recommend you learn more about these service providers as they will help you understand their offerings, strengths,
and limitations. Knowing all these will help
you in your interviews. That's all for this video. In the next lesson, we will summarize the whole module one. See you in the next video.