cover-img

Cloud Computing: Benefits and Basics of Google Cloud Platform

8 October, 2023

6

6

2

Introduction

Cloud computing has become an essential part of the modern digital world. It offers a wide range of benefits to businesses of all sizes, from startups to large enterprises. Cloud computing services can help you to reduce costs, improve scalability and agility, and accelerate innovation.

In this blog post, we will discuss the basics of cloud computing, the benefits it provides, the types of cloud, and the Google Cloud Platform (GCP).

What is cloud?

Clouds are not these clouds, the cloud is basically someone else’s server or someone else’s computer on which we send the data.


The cloud refers to remote web servers in various data centers that host databases and run application code. Cloud providers deliver their services to customers or end users via the Internet.

What is cloud computing?

Before going to understand, cloud computing let's understand some terms with examples.

We have to build a website in which we have to show Hello World on our website and the website would be deployed so that anyone can access and see it.so, you are redirecting your project to deployment.
When we go on the url DNS will redirect to the website. DNS maps domain names with Internet Protocol (IP) addresses like a phone book maps a person's name to a phone number.

You share with your friends, on socials, and traffic increases to 1 million and your system cannot able to handle it.
You will arrange more systems and there will be one main system, which is named LB. The LB decides, which system to send a request to show the website, it will select the system which has fewer users.
Like this, we allocated M/10 to each system. Again the traffic increases, then we arrange some more systems.

This thing is known as On-premise which means everything is working on our system and infrastructure, and we are handling it.

MTBF

It's not a sustainable method to get a new system and maintain it.

  • Let's assume if any one of the systems crashes how does lb know the system crashes?

    The lP allocates to that system but the system doesn't respond.
    The time of not doing anything is known as MTBF Mean time between failures.
    So, sustainability is bad, MTBF is low, and scalability is low.
  • We also have to remember one more term Capex -capital expenditure which means how much money you haven't upfront to get the resources that you need. This means, how much money you spent building the product/application.
  • If you build a product and then people use it you will get the money.
    Similarly, you have to pay for the domain name company to get the domain name that can be accessed by anyone that is Capex.
  • We also have to remember another term is opex- operational expenditures.
    Let's say, if one system fails to load as the load increases you upgrade the system from 8 GB to 16 GB RAM. If another crash of the system occurs you repair it.
  • It means the money you have to spend to fix failures, maintain, and run the application correctly is opex.

Cloud computing is the ability to provide CPU, resources, and business intelligence through the internet.

Remoting delivery of computer services like storage, network, data, software, and business intelligence through the internet.

With the help of the cloud, we Don.t have to stress about these things.
Cloud takes care of mainly 5 things.

  1. Availability
  2. Scalability
  3. Agility
  4. Elasticity
  5. Recovery

Availability:

Availability is managed by the two terms network and region. The cloud will take care of to availability of the system and choose the system that has a good network and is near to the client. Let's say, one system is in the US and another system is in India, it will select the system that has less routing and connects with the nearby server.

Let's understand, we have the regions of continents and Asia is a continent, which we divide into zones such as Asia->India->Mumbai, Asia->India->Delhi. It helps to access the servers easily.

The cloud services set up the server portal on the web in which you can access the server and you will get access to where and how to distribute the server.

Scalability:

Scalability means, let's say, we have a lot of traffic, we can take an example of e-commerce which has more traffic during sales, at that time we have to arrange new systems to handle and after the sales, we don't need extra systems. It means we are scaling up and scaling down. This will be taken care of by the cloud.

We have two types of scalability, Horizontal and vertical. When we have traffic, we increase the systems i.e., horizontal. In vertical, instead of increasing systems, we increase resources of a particular system like increasing Ram. But, vertical is done in certain use cases.

When we have huge traffic, we have to increase the resources. Based on the requirements the cloud allocates another server without any code breakage.

Horizontal vs Vertical

In Horizontal, we have an N1 system that costs 30 dollars/hr, when the traffic increases, we have to increase the systems. We add some type of system and the cost is the same as well.

Whereas in vertical, when we have traffic, we are scaling up the resources like n1 of CPU 2 core is scaled to N2 of CPU 4 core that costs 60 dollars/hr.

So, OPEX increases in vertical scaling and OPEX decreases in horizontal scaling.

In Horizontal scaling, There are multiple systems when we scale. Let's say, in the application, certain users are handled by each system even if one system crashes then other users are handled by other systems.

But in vertical, there is only one machine if the machine crashes, we can not able to handle it.

In technical terms, Horizontal scaling has more resilience(tough to break down) than vertical scaling.

Agility:

Agility means quickly. when we have traffic, we have to add another server to handle that will be done quickly.

The import term is Pay-as-go-model. Let's understand with an example, we have to pay for subscriptions then only we can able to watch. Even if we do not use the application every day, we have to pay for the whole month. The pay-as-go model emphasizes paying the amount for the exact milliseconds or seconds that we used the resources.

If we take the example of E-commerce, the traffic is huge during sales, we need more servers to handle and the traffic is less on normal days. The cloud quickly transfers according to the requirements.

Cloud's provider is super reactive and monitors how many users are there and quickly adjusts the machines.

Agility will scale up and scale down.

Elasticity:

Elasticity shows how flexible the machine is. It will change from 2G to 4G instantly.

Are you confused? Let me clear:

When we have huge traffic, we have to increase the resources

Agility means you should be able to do that quickly.

Elasticity means when you do that the code should not break down.

Scalability means there shouldn't be limits, on how many resources you can add.

Recovery:

We have seen that YouTube and Google will never go down because if they go down they will lose users. Cloud provides a commitment that they fulfill their requirement.

If any hardware problems happen or physical disasters are out of our hands. The cloud solves the problems in three ways:

  1. Replication
  2. Backups
  3. Geography-agnostic-nature

Replication

In Replication, the databases or systems have the same same databases or systems. That we called it Replicas. If anything happens to one database, then we can use the other database. Cloud platform creates replication of systems.

Backups

Here, we are achieving the data or reproducing.

When we use an application, we have to download it first, if anything happens to the application we need to download it again.

As replicas are expensive because we are creating the same systems and we are not using them. Backups create replicas when we need them.

Cloud

There should be a distance between two replicas of 150km.

Let's say, we have all the replicas in the same city, if any disaster happens, then we lose all replicas. So, keeping Replicas in different cities will help to handle the application by using another city replica.

Types of cloud

Three types of clouds. They are :

  1. public cloud
  2. private cloud
  3. Hybrid cloud

Public cloud: All our resources are hosted in a public cloud. That means we don’t own our hardware.

  • Everything runs on cloud provider hardware.
  • No local Hardware
  • Some services share hardware with other customers.

Advantages

-> No CapEx

-> High availability and agility

-> Pay-as-you-go pricing

-> No hardware maintenance

-> No deep technical skills required

Disadvantages

-> Does not provide security

-> No ownership

-> Do not support specific scenarios with unique business requirements.

Private Cloud

We don’t have anything in the public cloud. It hosts everything in your data center. Here, you need to provide all the services of the cloud in your own data center.

  • Everything runs on your own data center.
  • Self-service should be provided.
  • You maintain the hardware

Advantages

-> Can support any scenario

-> Control over security

-> Can meet any security requirements.

Disadvantages

-> Initial CapEx

-> Limited Agility

-> Technical skills are mandatory.

Hybrid Cloud

In this model, you take advantage of both public and private clouds. You can combine together and provide the greatest flexibility.

Advantages

-> Great flexibility

-> Run legacy apps in a private cloud

-> Utilize existing infrastructure

-> Meet any security requirements

Disadvantages

-> can be more expensive

-> Complicated to manage

-> Technical skills are mandatory

Types of services that are provided by the cloud

IAAS- Infrastructure as a service

PAAS- Platform as a service

SAAS- Software as a service

Let's understand with the help of an example.

You've been provided with raw materials, spices, and a stove for cooking. Now you have to use all of these to cook something. Let's say, you want to cook biryani. So, you're at home in this. In your house, you have a dining table, stove, utensils, and raw materials. You have everything. Using all of these, you just have to prepare dinner and serve it. So, you see, all of these things are available to you at home. You just need to use this and prepare dinner. Technically in this, they provide hardware, storage, operating system, and networking. By using these, we can host our application, i.e. IAAS

Let’s say you are at home and you don’t want to prepare biryani by yourself. So, you picked up your phone and you ordered Briyani to your home. And, you will use your utensils to eat biryani. This is an example of PAAS. Here, you are using the platform and building your application just like you order the food, which is prepared from the restaurant and it reaches your home and you are using your own utensils to eat this.

Let’s say, you want to go to a restaurant to eat biryani, you are using their table and you are ordering food that you want to eat which is prepared there only. you need to go and eat biryani. That is SAAS. Technically, we are using an application according to our use.

Infrastructure as a Service (IaaS) provides you with the underlying infrastructure, such as servers, storage, and networking, that you need to run your applications.

-> CPU memory, storage, and networking are provided as a service.

-> The user needs to manage the OS and the application.

Platform as a Service (PaaS) provides you with a platform for developing, deploying, and managing your applications. This includes the underlying infrastructure, as well as tools and frameworks for development and deployment.

-> The platform is a managed service.

-> All the users provide is the application.

Software as a Service (SaaS) provides you with access to software applications over the internet. You don't need to install or manage the software yourself, and you can access it from anywhere with an internet connection.

-> The platform and software are provided as a service to the user.

-> The user supplies the data.

Various Cloud Providers

Google cloud platform

Amazon web services

Microsoft Azure

Google Cloud Platform Services


image.png

There are Four Ways to interact with Google Cloud. They are:

  1. Google Cloud Console
  2. Cloud SDK and Cloudshell
  3. REST Based API
  4. Cloud Console mobile app

The Cloud Console provides a web-based GUI for you to manage Google Cloud projects and resources. It is a centralized console for all project data. It executes common tasks using simple mouse clicks.

Interface of Google Cloud Console:

By clicking on the Navigation Menu, we can see the list of services that the Google Cloud platform offers.

Every Google Cloud service, we use is associated with a project. If we want any services, resources, and API , we can enable them in our project and will have to pay as mentioned. We have to pay the bill for project resources.

Every project has three identifying attributes. They are

In order to create a project, We have to click on "Select project ".

The cloud SDK is a command line interface for Google Cloud products and services. We have to download it locally on our laptop or computer.

Examples: gcloud, gsutil,bq

Cloud Shell is an alternative to the Cloud SDK. It's a browser-based CLI access to resources. we don't need to install cloud SDK and other tools locally.

We can open the cloud shell in the Google Cloud console by clicking on this icon.

After clicking on this icon. the cloud shell will open. Then we can manage our projects using Cloud Shell. In the cloud shell, we have to use commands.

We can also use API to use Google Cloud and we have an app as well. With that app, we can manage the resources of our project.

Conclusion

Google Cloud Platform is a powerful cloud computing platform that offers a wide range of services to meet the needs of businesses of all sizes. If you are considering using cloud computing, I encourage you to learn more about Google Cloud Platform.

If you're still here, Thanks for reading the blog and investing your time 😊. I hope you find this blog insightful and you learn something out of this. If you did, then shower some support by 🤍the blog and follow me on , Twitter, and Linkedin.



showwcase

blog

cloudcomputing

writetowin

6

6

2

showwcase

blog

cloudcomputing

writetowin

Iqra Firdose
GDSC Lead 2023 | Frontend Developer 💻 | Open source Contributor @aviyelHQ |Technical writer✍️ |Communities 👥

More Articles

Showwcase is a professional tech network with over 0 users from over 150 countries. We assist tech professionals in showcasing their unique skills through dedicated profiles and connect them with top global companies for career opportunities.

© Copyright 2024. Showcase Creators Inc. All rights reserved.