Your Web News in One Place

Help Webnuz

Referal links:

Sign up for GreenGeeks web hosting
August 5, 2020 01:40 pm GMT

Fundamentals of Cloud Computing

Before we start, I want to state that this tutorial is for absolute beginners who want to get started with Cloud Computing.
(And there are going to be a lot of cloud jokes, I am sorry in advance )

The tutorial has no specific prerequisites.

After reading this tutorial youll be able to answer the following questions:

Alright, let's do this one last time

What is a cloud ?

Definition by Cloudflare.com
The cloud refers to servers that are accessed over the Internet, and the software and databases that run on those servers.

In Layman's Term
It is someone elses computer that you can rent remotely and can be accessed through the internet.

Cloud servers are located in data centres all around the world.

Cloud allows the user to access the same files and applications from almost any device from anywhere in the world, as the storage and computing takes place in data centres.

Alt Text

What is cloud computing?

  • Cloud computing refers to renting resources, like computepower or storage space, on some other company's computers.
  • You only pay for what you use.
  • The company providing these services is referred to as a cloud provider.
  • The cloud provider is responsible for the maintenance ofphysical hardware required to execute your work, and forkeeping it up to date.
  • The cloud computing services offered tend to vary by cloud provider.

cloud computing meme

Some Cloud Computing Services

The two most common services that all cloud providers offer are:

  • Compute power
  • Storage

Compute Power

There are generally three compute options:
Virtual Machines, Containers and Server-less computing.

Virtual Machines

When you are building a product on the cloud you can choose how much work you want to do or how much responsibility for the resources do you want.
If you want to have more control and responsibility for maintenance, you could create a virtual machine.

  • A Virtual Machine on the cloud is an emulation of a computer which is remotely accessed through your computer.
  • Each Virtual Machine includes an operating system like Linux or Windows.
  • You can then install whatever software you need to run your task.
  • The major advantage of a virtual machine is that you do not have to buy any of the hardware or install the operatingsystem.

Containers

  • Containers are very similar to Virtual Machines except they do not require an operating system.
  • The application and its dependencies are packed into a package called a container and then a standard runtime environment is used to execute the app.
  • Docker is a standard open-source project that is used to create, deploy, and run applications using containers.

Server-less Computing (I can't find any emoji for this)

  • Server-less computing is an approach you go for when you want the least control over the server(s).
  • It lets you run your project without creating, configuring, or maintaining a server.
  • The main idea behind server-less computing is that your application is broken down into separate functions that run when triggered by some action.
  • This type of computing is ideal for the tasks that are automated for example using chat-bots which are triggered by a specific keyword or tasks.
Image from docs.microsoft.com

Vm v/s containers v/s server-less computing

Storage

Cloud Storage meme

Most applications need storage to read or/and write data for various purposes.
For example storing user data, images, videos.

  • Most Cloud Providers offer such services that can take care of all your data storing needs.
  • The advantage of using cloud storage is you can scale according to your needs.
  • If you need more storage at any given time, you can pay more and expand your available storage.


BENEFITS OF CLOUD COMPUTING

One of the best things about cloud computing is that it is not an all or nothing approach.
Companies can choose to use cloud resources as much, or as
little, as necessary to fulfil their needs.



Let's learn some of the benefits of cloud computing

It is cost-effective

Cloud computing provides a pay-as-you-go model, which means that you only have to pay for the resources that you use. This model brings with it many benefits, including.

  • There is no upfront cost.
  • You do not need to buy hardware and infrastructure.
  • You do not need to maintain the hardware.
  • You can stop paying for resources that are no longerneeded.
  • It leads to better cost prediction.

It is scalable

You can increase or decrease the resources and services at any given time according to your needs. You can scale your resources both vertically and horizontally according to your
need.

  • Vertical scaling, also known as scaling up, refers to adding resources to increase the power of an existing server. For example adding more GPUs or adding more memory.
  • Horizontal Scaling, also known as scaling out, refers to adding more servers that function together as one unit.

It is reliable

Cloud providers often provide services like data recovery,
disaster recovery and data replication services, as data is the most crucial information and cloud providers help to secure it.
It is achieved through data redundancy.
So, if one component fails, a backup component will take its place.
This is known as fault tolerance.

It is secure

  • You have physical security The data centres are equipped with walls, cameras, security personnel, gates, and so on to protect their assets.
  • You have digital security The cloud providers make sure that your data is secure from any potential threats and unauthorised users.

It is global

Most cloud providers have fully redundant data centres in various regions throughout the globe allowing you to replicate your services into multiple regions for redundancy and locality.

It is current

The cloud hardware is maintained and upgraded by the cloud providers and you can focus on what matters: building and deploying applications.

It is elastic

Your cloud computing system can compensate for workload changes due to spike or drop-in demand by automatically adding or removing resources.

For example Imagine your website experiences a sudden spike in traffic due to some reason. The cloud will automatically allocate more computing resources to handle increased traffic.

When the traffic is normalised the cloud will automatically de-allocate additional resources to minimise cost.
Cloud meme


MAIN SERVICE MODELS OF CLOUD COMPUTING

Software-as-a-Service (SaaS)

SaaS applications are the applications that are hosted on cloud servers and users access then over the internet.
SaaS is just like renting a fully furnished house: you get to use it as your own, but it is still owned by your landlord.

Example: Google Apps, Dropbox, Salesforce

Platform-as-a-service (PaaS)

PaaS is a kind of service in which the vendor offers you everything you need to build your application like development tools, infrastructure, operating system.
You get a complete environment to build, test and deploy your
application.

Example: Microsoft Azure, Heroku, Google App Engine

Infrastructure-as-a-Service (IaaS)

It is the most flexible kind of cloud service.
In this kind of service, a company rents the infrastructure and storage they need from the cloud vendor and then use that cloud infrastructure to build their application.
IaaS is like leasing land on which you can build whatever you want.

Example: Digital Ocean.

Function-as-a-Service (FaaS)

Function as service is also known as serverless computing.
The main idea behind serverless computing is that your
application is broken down into separate functions that run
when triggered by some action.


CLOUD DEPLOYMENT MODELS

Private Cloud

In a Private Cloud, you create a cloud environment in a data centre that is completely dedicated to your organisation. This allows simulation of public cloud to your organisation, but you are completely responsible for the maintenance of hardware and the software services you provide.

Public Cloud

Public cloud service is run by an external vendor. Using virtual machines, individual servers are shared by multiple organisations.

Hybrid Cloud

Hybrid cloud is an assortment of Public Cloud and Private Cloud. An organisation might use public cloud for one service and private cloud for some other service.

Congratulations

You have completed this tutorial

If you liked this tutorial consider supporting by Liking and Sharing this article.

Follow me on Twitter

You can also Buy Me a Coffee

If you want me to make a tutorial on any computer science concept then leave the topic down in the comments.

Any feedback is appreciated

REFERENCES

cloudflare.com
docs.microsoft.com



Original Link: https://dev.to/nirbhayvashisht/fundamentals-of-cloud-computing-5g4g

Share this article:    Share on Facebook
View Full Article

Dev To

An online community for sharing and discovering great ideas, having debates, and making friends

More About this Source Visit Dev To