Cloud Computing Tutorials for Beginners | Pravin Mishra | Skillshare

Playback Speed


1.0x


  • 0.5x
  • 0.75x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 1.75x
  • 2x

Cloud Computing Tutorials for Beginners

teacher avatar Pravin Mishra, Cloud For Everyone

Watch this class and thousands more

Get unlimited access to every class
Taught by industry leaders & working professionals
Topics include illustration, design, photography, and more

Watch this class and thousands more

Get unlimited access to every class
Taught by industry leaders & working professionals
Topics include illustration, design, photography, and more

Lessons in This Class

    • 1.

      Introduction

      1:43

    • 2.

      What is Cloud Computing?

      7:13

    • 3.

      Cloud Deployment Models

      4:48

    • 4.

      Traditional Data Centers

      5:37

    • 5.

      Cloud Service Models

      6:18

    • 6.

      Key Cloud Concepts

      6:24

    • 7.

      Benefits of Cloud Computing

      7:41

    • 8.

      Different Cloud Providers

      3:39

  • --
  • Beginner level
  • Intermediate level
  • Advanced level
  • All levels

Community Generated

The level is determined by a majority opinion of students who have reviewed this class. The teacher's recommendation is shown until at least 5 student responses are collected.

196

Students

--

Projects

About This Class

The course teaches cloud computing in its simplest form so that any individual can have a basic understanding of it. It is important to understand the power of cloud computing in order to utilize and source modern technologies. After learning the basics, you'll gain a deeper understanding of how your business's software operates.

Meet Your Teacher

Teacher Profile Image

Pravin Mishra

Cloud For Everyone

Teacher

AWS Community Builder | AWS Solutions Architect - Professional | Google Cloud Certified Trainer

12+ years of experience in IT and 8 years of teaching experience. Enterprise Architect, specialized in Architecting, Designing, Developing and Implementing Multi-Cloud base solutions.

See full profile

Level: Beginner

Class Ratings

Expectations Met?
    Exceeded!
  • 0%
  • Yes
  • 0%
  • Somewhat
  • 0%
  • Not really
  • 0%

Why Join Skillshare?

Take award-winning Skillshare Original Classes

Each class has short lessons, hands-on projects

Your membership supports Skillshare teachers

Learn From Anywhere

Take classes on the go with the Skillshare app. Stream or download to watch on the plane, the subway, or wherever you learn best.

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.