Section 1: Compute Resources
Section 2: Storage Options
Section 3: Networking Services
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.
- Learn how to use Google Cloud compute, storage, and network services and determine which products are suitable for specific use cases
- People looking to build applications on Google Cloud Platform
- People interested in obtaining the Google Associate Cloud Engineer certification
To get the most out of this course, you should have a general knowledge of IT architectures.
Now that we've covered the bulk of GCP's network services and reviewed load balancing options, I think it's a good opportunity to take a step back and think about our Google Cloud architecture from a global view. How can we optimize our GCP services in terms of their physical location? One of the best practices around mapping out where our GCP resources will live, ensuring optimal availability, performance, and cost. So in this short lesson, we'll offer some guidance and best practices that should serve both at work and on test day, if you're aiming for certification.
Now, probably the best place to start is with Google Cloud's global location page. This will tell you which services are available in what region. So obviously, if you already know you need a specific GCP product, it's a good idea to ensure that it's available in the region you want. So, for example, as of the recording of this course, GCP BigQuery and Firestore are not available in us-west Oregon region. So plan accordingly if that's what you need.
The general rule is that for latency purposes, we want to have our cloud infrastructure situated near our user base. So if the vast majority of your users are in the EU, it makes sense to use one of GCP's European data centers, perhaps Zurich or Frankfurt. Sure your app will still be usable by people outside of Europe but it might be a little bit slower if they have to cross the ocean in order to hit your data centers.
Now, this gets harder to optimize, of course, if you have a global user base. If traffic is coming and going all around the world, then you need to think about how to distribute infrastructure in a cost-effective way. Now, the earlier lessons on GCP storage products should give you enough guidance to know which services are the best fit for a global or multi-region use case. As far as networking goes, hopefully, the previous lesson on load balancing offered enough insight to know which GCP load balancer offers the best situation, the best offering for a complex worldwide traffic routing. GCP's Cloud CDN is another important piece of the puzzle, as it can serve as a kind of global cache for frequently requested content.
Now, finally, when you're considering resource geolocation, we, of course, can't forget about security. In general, GCP is good for this, but things like, you know, with things like default encryption and a lot of logging for forensic and performance analysis, however, at the network level, we have to think more specifically about connectivity and access control. A good practice is to use a VPC, virtual private clouds. Remember, they can span multiple regions so you can have one VPC hitting the data centers in different parts of the world so that your back-end services can be optimized, and make sure that your requests are properly authenticated coming through a load balancer. If you need some direct access to part of the VPC, consider using GCP's VPN offering to lock down that connection.
So those are some basic tips about planning for a distributed architecture. We could definitely go deeper than this for more unique scenarios but what we have covered here are the main principles to ensure you know enough to get started. Now, we're ready to move on to our last lesson in this section before the demo, that's Cloud DNS. When you're ready, we'll see you there.
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.