Google Cloud Platform has become one of the premier cloud providers on the market. It offers the same rich catalog of services and massive global hardware scale as AWS as well as a number of Google-specific features and integrations. Getting started with GCP can seem daunting given its complexity. This course is designed to demystify the system and help both novices and experienced engineers get started.
This Course covers a range of topics with the goal of helping students pass the Google Associate Cloud Engineer certification exam. This section focuses on identifying relevant GCP services for specific use cases. The three areas of concern are compute, storage, and networking. Students will be introduced to GCP solutions relevant to those three critical components of cloud infrastructure. The Course also includes three short practical demonstrations to help you get hands-on with GCP, both in the web console and using the command line.
By the end of this Course, you should know all of GCP’s main offerings, and you should know how to pick the right product for a given problem.
Learning Objectives
- Learn how to use Google Cloud compute, storage, and network services and determine which products are suitable for specific use cases
Intended Audience
- People looking to build applications on Google Cloud Platform
- People interested in obtaining the Google Associate Cloud Engineer certification
Prerequisites
To get the most out of this course, you should have a general knowledge of IT architectures.
Welcome to the third and final practical Google Cloud demonstration as part of this course. In this video, we're going to go over how to use GCP network services in the Google Cloud web console. There are three specific services we're going to showcase here: VPC, load balancers, and Cloud DNS. We will work with an existing instance and see how we can change VPC configurations such as firewall settings. We'll then create an external load balancer for a back-end service and we'll take a closer look at Cloud DNS to see how zones are created and configured.
So let's start with VPC. As we can see, on the left side we have our network services area and in here we can click on VPC and VPC networks. And then in the VPC network section, we see one called default come up. Now, this default network was created for us automatically. It's similar to AWS: whenever you create a VM in Google Cloud, it's by default placed into a VPC for security purposes. Now, we can see that this one is configured for multiple regions, we have subnets for every region, and then from this dashboard, we can do a lot of different things. We can change firewall rules, we can go click on multiple ones that we don't need and delete them if we want. We can generate new firewall rules here, you just click create and it'll ask for some basic information: a test rule, test tag. Let's say we want for all IP ranges. All right and then, oh sorry, there's an extra period there, and then we can have an additional filtering options for IP ranges. Let's not worry about that for now, we'll just do allow all and we'll go with create. Now, this is a very open firewall rule but just to show how simple it is to create it'll take a while and it'll come up. We can do a few other things here, we can also change our external IP addresses and from here we can reserve new static addresses. It's kind of like Amazon Elastic IPs, so you can reserve new ones here and associate them with instances. So basically, this is your one-stop-shop for all VPC configuration, this section.
Okay, so now let's walk through the process of creating a load balancer. Now, the key thing to remember with load balancers is that they need to be connected to a back-end service and those services need an instance group. You can also connect to a bucket but we're gonna do a service since that's a more common use case. Creating an instance group is similar to how we created an instance in the first demo.
So in compute, go to Compute Engine, we go to instance groups, and there's already one here created for this demo but to create one you just go create instance group, it's the same process as before: you select an operating system and an instance type and then you can generate your instance group. So, to create the load balancer, we're going to go to our Network Services, Load Balancing and we're gonna click Create load balancer.
We'll go with an external HTTP load balancer, this will allow traffic to our service. So we want internet-facing, and we can see here, so we have to give it a name, we'll call it testlb and we're going to do, so back in configuration it's going to ask create or select a backend service or bucket. We're gonna do backend services. There's one there but we'll go through the process of creating it, creating a service. We just give it a name, test-service2, we'll say. Instance groups, we're gonna select an existing instance group. We're gonna have it set for port 80 and basically default capacity. You can actually add more CPU utilization capacity here if you want but we'll stick with the defaults.
And then, we don't need Cloud CDN but we do need a health check. We'll do a standard TCP health check, it'll do a TCP connection to port 80 and make sure the instance is healthy. And then we click Create. and now we've got our back-end service configured. That'll also set up our host path and rules, front-end configuration here, frontend IP, we'll just call it testfrontend. We want HTTP, and we'll click done, we'll click create and just like that, our load balancer will come out. So, this is a, we'll just connect to a set of back-end instances but you can test this yourself if you have a GCP account. Try this yourself, set up a simple web application, maybe a Python flask app or WordPress, and you can, because there are WordPress images actually, then you can create a load balancer and connect to it and there it is.
So finally, let's take a brief look at Cloud DNS. So to do that, you just go to our Networking section here and we go to Cloud DNS and we can see just from the start it gives us the ability to create a zone. So click Create zone. We've put in some information, we've put in a name for the record, we'll call it the example zone. An example DNS name, we'll call it, this is what I actually, erm, examplezone.com, We don't need DNSSEC, we'll put, we don't need a description for now. We're gonna make this a public, this is kind of the key decision here. This is a private zone, this is a public zone. Do external clients need to be able to look this up or is it only our internal GCP services that need it? That's really the question. For this demo, we'll go with public and then we click Create and voila! We have now our manager zone and from here, we can add record sets. Click Add record set up here. We can do A-records CNAMES, txt records, whatever we want. This is an A-record type, so something like that, we can connect it to some IP address and yeah, sure, 192.1.1.1, something like that, Create. And we've got a record now for our DNS. So it's really that simple. And that's basically it.
So that's our basic GCP network service demo. We've covered a few key tools: DNS, load balancing, VPC. This is really just an introduction. Our goal in this course is to get you familiar with the GCP product so that you know which ones solve specific problems. That's the main thing you'll need for the certification exam. Please check out some of our other Cloud Academy courses for a deeper dive on specific features to really learn the ins and outs of each service. Thanks for watching and good luck.
Jonathan Bethune is a senior technical consultant working with several companies including TopTal, BCG, and Instaclustr. He is an experienced devops specialist, data engineer, and software developer. Jonathan has spent years mastering the art of system automation with a variety of different cloud providers and tools. Before he became an engineer, Jonathan was a musician and teacher in New York City. Jonathan is based in Tokyo where he continues to work in technology and write for various publications in his free time.