=Paper=
{{Paper
|id=Vol-2803/paper6
|storemode=property
|title=Mastering Google cloud: building the platform that serves
your needs (short paper)
|pdfUrl=https://ceur-ws.org/Vol-2803/paper6.pdf
|volume=Vol-2803
|authors=Khalil Maad M.,Adadurov S.E.,Mahmood M. Sh.
}}
==Mastering Google cloud: building the platform that serves
your needs (short paper)==
Mastering Google cloud: building the platform that serves
your needs
Khalil Maad M.a, Adadurov S.E.b, Mahmood M. Sh.c
a
University of Diyala, Baghdad old rd., Baquba, Iraq
b
JSC “VNIIZHT”, 3rd Mytischinskaya Street, 10, Moscow, Russia
c
Ministry of Higher Education and Scientific Research, Baghdad, Iraq
Abstract
The work describes the concept of cloud computing generally and the Google cloud platform
specifically, a minor comparison between the three major cloud providers (AWS, M.S. Azure
and GCP) is discussed and reasons for choosing GCP are shown. A step-by-step procedure to
create a GCP account with a free $300 from google is also shown and creating an instance is
described in great details. Other aspects are covered such as Billing, Storage, Networking,
Security and much more not to mention where to find all the documentary and necessary classes
and code-labs to completely master all the products and services of GCP.
Keywords 1
Cloud Computing, GCP, AWS, M.S. Azure, Virtual Machines.
1. Introduction one of the world’s leading Cloud computing
providers, providing a very wide variety of
Cloud Computing has been with us for many services and products that can make migrating
years now, but still for many medium and small to the cloud very easy and cost efficient. This
size companies there are many doubts and workshop shows how easy it is to learn and
questions about why and how to migrate there master all the products and services that Google
business to the cloud. Should they invest in a Cloud Platform GCP can offer.
team of IT specialists? Is the process very
complicated? Would it take a very long time 2. Why Google Cloud Platform?
that the company cannot afford? And many
other issues that keep MSB’s (Medium & small There are many cloud providers out there,
size business) afraid to approach Cloud including Amazon, Microsoft, Google,
providers. Cloud hosting offers great flexibility, Rackspace, DigitalOcean, and many more.
which is a good fit for situations where you do With so many competitors in the market, each
not know (or cannot know) how much of these companies must have its own take on
computing power you need. You do not need to how to best serve customers. It turns out that
overprovision to handle situations where you although each provides many similar products,
might need a lot of computing power in the the implementation and details of how these
morning and less or almost none overnight. In products work tends to vary quite a bit[1].
addition, cloud hosting comes with the Google Cloud Platform (GCP) is a portfolio
maintenance built in for several products, of cloud computing services that grew around
which means that cloud hosting results in the initial Google App Engine framework for
minimal extra work to host your systems hosting web applications from Google's data
compared to other options where you might centers [2]. Since the launch of Google App
need to manage your own databases. Google is Engine in 2008, GCP has grown into one of the
Models and Methods for Researching Information Systems
in Transport, Dec. 11-12, St. Petersburg, Russia
EMAIL: maadalomar@gmail.com (A. 1); khomon@mail.ru (A.
2); mahmood@tut.by (A. 3)
ORCID: 0000-0002-9674-739X (A. 1);
©️ 2020 Copyright for this paper by its authors. Use permitted under Creative
Commons License Attribution 4.0 International (CC BY 4.0).
CEUR Workshop Proceedings (CEUR-WS.org)
41
premier cloud computing platforms on the 4. The main console (Dashboard)
market, though it still trails Amazon Web
Services (AWS) and Microsoft Azure in terms After creating a new GCP account a
of market share [3]. According to Google, welcome screen message appears and then
Google Cloud Platform users can expect automatically go to console.cloud.google.com
99.95% reliability [4]. They achieve this level where you will find your dashboard. The
of performance by building in safety nets to dashboard is where you will spend most of your
their application and network architecture, time after migrating your project to the cloud.
assuming that any one element is fallible. With In this page you can find all the information,
integrated redundancy and robust failover resources and controls needed to monitor and
capabilities, data is always accessible through control your project. Performance Dashboard
another system. Last but not least, Google is gives you visibility into the performance of
constantly running performance tests – your Virtual Private Cloud (VPC) network. It
pressure-testing systems in order to proactively provides packet loss and latency (Round Trip
prevent problems and troubleshoot quick Time, or RTT) metrics between the zones
remedies. where you have virtual machine (VM)
instances [5] as shown in Figure 2.
3. Creating a GCP account
Creating a GCP account couldn’t be easier
and can be established in three easy steps:
1. Go to cloud.google.com
2. Click on Create a new GCP account.
3. Enter location and credit card
information.
In order to benefit from the $300 free credit
that google provides for new users to help them
in learning and training with the GCP services,
It is very important to choose the choice
“individual” when choosing the account type in
the step 2 window, the other option “business” Figure 2: The Dashboard
doesn’t include the free offer as shown in From the console a new project can be
Figure 1. created where the user only need’s to give the
project a name and GCP will do all the rest
including giving the project a unique identifier.
Projects are primarily a container for all the
resources we create. For example, if we create
a new VM, it will be “owned” by the parent
project. Further, this ownership spills over into
billing—any charges incurred for resources are
charged to the project. In addition to acting as
the owner of resources, projects also act as a
way of isolating things from one another, sort
of like having a workspace for a specific
purpose. [6]
This isolation applies primarily to security,
to ensure that someone with access to one
project doesn’t have access to resources in
another project unless specifically granted
access.
Figure 1: Creating GCP account
After that you just need to enter your address 5. Creating an Instance
and credit card information and you are all set.
42
To create a new instance you must go to the
main left hand side menu on the console and
from there go to the compute engine menu and
choose VM instances. The first time you click
this link, Google initializes a Compute Engine
for you, which should take a few seconds. Once
that’s complete, you should see a Create button,
which brings you to a page, where you can
configure your virtual machine as shown in
Figure 3. After giving the instance a name it is
necessary to choose in what region you want
your instance to be, google has many data
centers around the world and in a specific
region they have multiple zones as shown in
Figure 4.
Figure 5: Compute power options in GCP
Starting from a small micro processor with
only 1GB of memory to up to 96 high
performance multicore processors with over
multiple Terabytes of memory in some data
centers.
Now the computing power has been
configured it is time to choose what image or
operating system your project is going to run
Figure 3: Creating an instance on. Google also provides a wide variety of
images and multiple versions of each image to
choose from as shown in Figure 6.
Figure 4: GCP regions and zones worldwide.
It is recommended to choose a data center
nearer to the customers or users of your project
to reduce latency, or a data center in your own
country if you have security reasons. Now you
must choose and configure what type of virtual
machine you need to use for your project,
google provides a wide variety of computing
power with a suitable amount of memory to
Figure 6: OS images provided by google.
assist it, as shown in Figure 5.
Next the firewall and security options
should be configured as required and click
create. It will take a couple of seconds for the
43
GCP data centers to prepare the VM, when All of these events can be monitored by
prepared, your instance shall appear and you different triggers, which can then run different
can click on SSH to enter the shell where you functions—it’s this unique ability to knit
can use your VM as you need as shown in different pieces together that makes Cloud
Figure 7. Functions so interesting. Cloud Functions
allows you to associate small pieces of code to
different events and have that code run
whenever those events happen. For example,
you could hook up a function so that it runs
whenever a customer uploads a file into a Cloud
Storage bucket, and that function might
automatically tag the image with labels from
the Cloud Vision API.
7. Storage
When it comes to storage, you should ask
yourself a couple of questions: do you want
Figure 7: Google Cloud Shell
your data to be edge-cached to speed up
downloads for users on the internet? Are you
6. Creating Cloud Functions optimizing for throughput or latency? Is it OK
if the “time to first byte” is a few seconds? How
With Cloud Functions, instead of thinking available do you need the data to be? How
about virtual servers (like Compute Engine), many concurrent readers do you need to
containers (like Kubernetes Engine), or even support? The answers to these questions will
“applications” (like App Engine), you think define what kind of cloud storage is most
only about single functions that run in an suitable for your project [8]. The more your
entirely serverless environment. storage is frequently accessed and spread on
Instead of building and deploying an data centers near your users, the less the latency
application to a server and worrying about how but on the other hand the more the cost, and the
much disk space you need, you write only short, opposite is also true, as shown in Figure 9.
narrowly scoped functions, and these functions
are run for you on demand. Creating a cloud
function can be shown in Figure 8.
Figure 9: Terms of storage.
8. Other GCP Services
GCP provides many services that can
support your project or your migration to the
Figure 8: Creating Google cloud function cloud, here are some of them:
In the world of Cloud Functions, other types • Artificial intelligence & machine
of events from lots of different cloud services learning: AI Hub (beta), Cloud AutoML
can trigger requests (in addition to regular (beta), Cloud TPU, Cloud Machine
HTTP requests). For example, a function can be Learning Engine, Diagflow Enterprise
triggered by someone uploading a file to Cloud Edition, Cloud Natural Language, Cloud
Storage or a message being published via Cloud Speech-to-Text, Cloud Text-to-Speech,
Pub/Sub [7].
44
Cloud Translation, Cloud Vision, Cloud RSA 2048, RSA 3072, RSA 4096, EC P256,
Video Intelligence, Cloud Inference API and EC P384 cryptographic keys.
(alpha), and more.
• API management: API Analytics, API 9. Conclusion and Documentation
Monetization, Cloud Endpoints, Developer
Portal, Cloud Healthcare API As shown, Google cloud has a very wide
• Data analytics: BigQuery, Cloud variety of products and services that can be
Dataflow, Cloud Dataproc, Cloud Datalab, implemented to your project very easily and at
Cloud Dataprep, Cloud Composer, and a low cost. These services can not all be
more. illustrated in this document, but google has
• Databases: Cloud SQL, Cloud provided a number of methods and
Bigtable, Cloud Spanner, Cloud Datastore, documentation to help understand and master
Cloud Memorystore. each service, making GCP one of the easiest to
• Developer tools: Cloud SDK, learn and use cloud services on the market. For
Container Registry, Cloud Build, Cloud more details about each service you can go to
Source Repositories, Cloud Tasks, and cloud.google.com/docs where there is an
more, as well as Cloud Tools for IntelliJ, answer for almost everything. As for training
PowerShell, Visual Studio, and Eclipse. and step by step illustration it is recommended
• Internet of Things (IoT): Cloud IoT to go to g.co/codelabs/cloud where you can find
Core, Edge TPU (beta). many examples and codelabs that you can
• Hybrid and multi-cloud: Google benefit from when learning and using the $300
Kubernetes Engine, GKE On-Prem, Istio on free credit that google generously provides each
GKE (beta), Anthos Config Management, new learner.
Serverless, Stackdriver, and more.
• Management Tools: Stackdriver, References
Monitoring, Trace, Logging, Debugger,
Cloud Console, and more.
[1] S. P. T. Krishnan, Jose L. Ugia Gonzalez,
• Migration: Cloud Data Transfer,
The Google Cloud Platform Difference,
Transfer Appliance, BigQuery Data
Building Your Next Big Thing with
Transfer Service, Velostrata, VM
Google Cloud Platform, Apress, Berkeley,
Migration, and more.
CA, 2015, pp 3-12.
• Networking: Virtual Private Cloud [2] Future of cloud computing, Google cloud
(VPC), Cloud Load Balancing, Cloud platform,
Armor, Cloud CDN, Cloud NAT, Cloud https://services.google.com/fh/files/misc/f
Interconnect, Cloud VPN, Cloud DNS, uturecloudcomputing.pdf
Network Service Tiers, Network Telemetry. [3] Larry Dignan, Top cloud providers in
• Security: Access Transparency, Cloud 2020: AWS, Microsoft Azure, and Google
Identity, Cloud Data Loss Prevention, Cloud Cloud, hybrid, SaaS players,
Key Management Service, Cloud Security https://www.zdnet.com/article/the-top-
Scanner, and more. cloud-providers-of-2020-aws-microsoft-
azure-google-cloud-hybrid-saas/.
In security matters, once the users have [4] Google Cloud Platform: What it is, how to
identified the Google Cloud Platform services use it, and how it compares, Acronis,
that would benefit them, owners can manage https://www.acronis.com/en-
which team members or admins have access to us/articles/google-cloud-
which services. platform/#:~:text=According%20to%20G
Encryption keys are essential for encrypting oogle%2C%20Google%20Cloud,any%20
data at REST [9]. For this purpose, Google one%20element%20is%20fallible..
launched Cloud KMS (Key Management [5] Jonathan Bartlett, Using the Google Cloud
Service). Cloud KMS is a managed service that Platform, Building Scalable PHP Web
lets users create, rotate, and handle encryption Applications Using the Cloud, 2019, pp
keys for Google Cloud services such as Cloud 153-162.
SQL databases and Compute Engine disks. By [6] S. P. T. Krishnan, Jose L. Ugia Gonzalez,
using Cloud KMS, you can handle AES256, Getting Started with Google Cloud
45
Platform. In: Building Your Next Big
Thing with Google Cloud Platform.
Apress, Berkeley, CA., 2015, pp. 13-25.
[7] Mandeep Kumar, Google Cloud Platform:
A Powerful Big Data Analytics Cloud
Platform, International Journal for
Research in Applied Science &
Engineering Technology (IJRASET),
Volume 4 Issue XI, November 2016.
[8] Storing and Analyzing Your Data in
Google’s Cloud, Google Cloud Platform,
https://cloud.google.com/files/articles/goo
gle-cloud_technical-article_overview-of-
storage-options.pdf.
[9] Google Infrastructure Security Design
Overview, Google Cloud Whitepaper,
https://cloud.google.com/security/infrastr
ucture/design/resources/google_infrastruc
ture_whitepaper_fa.pdf.
[10] Khalill M.M., Khomonenko A.D., Gindin
S.I. (2020) Load Balancing Cloud
Computing with Web-Interface Using
Multi-channel Queuing Systems with
Warming up and Cooling. In: Kotenko I.,
Badica C., Desnitsky V., El Baz D.,
Ivanovic M. (eds) Intelligent Distributed
Computing XIII. IDC 2019. Studies in
Computational Intelligence, vol 868.
Springer, Cham pp385-393.
[11] Khomonenko A.D.; Gindin S.I.; Khalil
M.M. A cloud computing model using
multi-channel queuing system with
cooling, 2016 XIX IEEE International
Conference on Soft Computing and
Measurements (SCM). Year: 2016. Pages:
103 – 106.
[12] Khomonenko A.D., Khalil M.M.,
Kassymova D.T., Probabilistic Models for
Evaluating the Performance of Cloud
Computing Systems with Web Interface //
SPIIRAS Proceedings. 2016. № 6 (49).
pp. 49-65.
46