=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)== https://ceur-ws.org/Vol-2803/paper6.pdf
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