Elastic Cloud Infrastructure: Scaling and Automation

In this course, Elastic Cloud Infrastructure: Scaling and Automation, you will learn about deploying practical solutions including securely interconnecting networks, customer-supplied encryption keys, security and access management, and more.
Course info
Level
Intermediate
Updated
Jan 17, 2019
Duration
1h 46m
Table of contents
Welcome to Elastic Infrastructure: Scaling and Automation
Interconnecting Networks
Load Balancing
Autoscaling
Infrastructure Automation with Cloud API
Infrastructure Automation with Deployment Manager
Managed Services
Description
Course info
Level
Intermediate
Updated
Jan 17, 2019
Duration
1h 46m
Description

In this course, Elastic Cloud Infrastructure: Scaling and Automation, you will be introduced to the comprehensive and flexible infrastructure and platform services provided by Google Cloud Platform. Through a combination of video lectures, demos, and hands-on labs, you will explore and deploy solution elements, including infrastructure components such as networks, systems and applications services. This course also covers deploying practical solutions including securely interconnecting networks, customer-supplied encryption keys, security and access management, quotas and billing, and resource monitoring.

About the author
About the author

Build, innovate, and scale with Google Cloud Platform.

More from the author
More courses by Google Cloud
Section Introduction Transcripts
Section Introduction Transcripts

Welcome to Elastic Infrastructure: Scaling and Automation
Hello, and welcome. My name is Jasen Baker. I'm a Google Cloud trainer, and in this course, we're going to talk about Elastic Cloud infrastructure, scaling, and automation. So now that you've learned the foundations, you know where your applications are going to live, whether you're going to be deploying it through App Engine or virtual machines, maybe even containers, you need to start to think about scale. Hopefully you're very successful, and you're going to be growing, so we're going to learn about scaling and automation. In this case here, first of all, we may need to scale by interconnecting our on-premises networks. What about load balancing incoming/outgoing traffic across multiple machines? We've decided not to create a monolithic machine, but now we're distributing our workload because now we have the cloud. We can buy as many resources as we want. So how do we do this automatically? How do we automate the deployment? If we're deploying software applications over and over, we want to exclude and potentially eliminate any of that human error, so that's when we'll talk about automation, or maybe we'll just go into managed services. Why even mess with setting up an infrastructure that we came from when Google has created an entire environment where all we have to do is bring our data? That might be another consideration worth considering.

Interconnecting Networks
Hello, and welcome. I'm Mylene Biddle, and I'm a technical curriculum developer for Google Cloud Platform. This is module 1, Interconnecting Networks. There are three general ways to interconnect networks. You can directly connect your data center network to Google's network; you can connect through an intermediary, which is a network service provider that also offers interconnect services; or you can use a technology like virtual private networking, also referred to as VPN, to create one or more secure tunnels through the public internet and connect through them. In this module, we will discuss Cloud VPN, Cloud Router, Cloud Interconnect, direct peering, Cloud DNS, and then you will complete a hands-on lab applying what you've learned about virtual private networks.

Load Balancing
Hello, and welcome. I'm Mylene Biddle, and I'm a technical curriculum developer for Google Cloud Platform. This is module 2, Load Balancing. The purpose of a hardware load balancer is to receive data at one IP address and redirect it to multiple servers. Load balancing as a service in GCP is much more flexible than a hardware load balancer. For example, load balancing in GCP can be configured to redirect sessions based on the geographic location of the requester, sending the traffic to the closest available server. GCP load balancing can be configured to send traffic to pools of servers with some pools serving as overflow capacity to others. This kid of flexibility and behavior comes with additional configuration complexity, which can all be easily configured using the GCP console. In this module, we will cover managed instance groups and different types of load balancing that you can configure using GCP. We can use load balancing to take more advantage of an augmented infrastructure. We've already configured networking between different virtual machines, but how are we going to route our traffic between multiple virtual machines? Load balancing is the first thing that comes into play. There are five types of load balancing covered in this module. We will get into each one in the following lessons, but it's important to note that HTTPS, SSL proxy, and TCP proxy load balancing are global services, whereas network and internal load balancing are regional. You will complete a hands-on lab that includes both network and internal load balancers. Let's get started.

Autoscaling
(Music) Hello, and welcome. I'm Mylene Biddle, and I'm a technical curriculum developer for Google Cloud Platform. This is module 3, Autoscaling. In the last module, we learned about managed instance groups. Managed instance groups offer autoscaling capabilities that allow you to automatically add or remove instances based on increases or decreases in load. Autoscaling helps your applications gracefully handle increases in traffic and reduces costs when the need for resources is lower. In this module, we will discuss autoscaling concepts, policies, and configuration. You will then complete a hands-on lab that includes setting up an autoscaling application and triggering scaling. Let's get started.

Infrastructure Automation with Cloud API
(Music) Hello, and welcome. I'm Mylene Biddle, and I'm a technical curriculum developer for Google Cloud Platform. This is module 4, Infrastructure Automation with Google Cloud Platform APIs. Up to this point, most of the infrastructure you've created has been manually provisioned using the GCP console or Cloud Shell. In one of the earlier labs, you used Cloud Launcher to provision an entire infrastructure solution. In the autoscaling lab, you triggered the autoscaling servers that were provisioned for you dynamically. Now we're going to look at ways you can automate infrastructure provisioning and configuration. These techniques are critical to any production system because they make the generation of the infrastructure documentable, accountable, and repeatable. We will discuss infrastructure automation, images, metadata, scripts, and the Google Cloud Platform API. You will also complete a hands-on lab that explores GCP infrastructure automation. Let's get started.

Infrastructure Automation with Deployment Manager
Hello, and welcome. I'm Mylene Biddle, and I'm a technical curriculum developer for Google Cloud Platform. This is module 5, Infrastructure Automation with Deployment Manager. Calling the cloud API from code is a powerful way to generate infrastructure, but writing code to create infrastructure also has some downfalls. One issue is that the maintainability of the infrastructure depends directly on the quality of the software. For example, a program could have a dozen locations that call the cloud API to create VMs. Fixing a problem with the definition of one VM would require first identifying which of the dozen calls actually created it. Standard software development best practices will apply, and it's important to note that things could change rapidly, requiring maintenance on your code. Another issue is the difficulty of comprehending the infrastructure that we're building from the code. The more complex the infrastructure, the more complicated the code, and the more likely it is that errors would occur. Clearly, another level of organization is needed. That's the purpose of Deployment Manager. Deployment Manager uses a system of highly structured templates and configuration files to document the infrastructure in an easily readable and understandable format. Deployment Manager conceals the actual cloud API calls, so you don't need to write code, and you can focus on the definition of the infrastructure. In this module, we will discuss concepts around Deployment Manager, configuration, and Cloud Launcher. You will complete a hands-on lab that includes downloading Deployment Manager templates and then using them to deploy a specified infrastructure. Let's get started.

Managed Services
Hello, and welcome. I'm Mylene Biddle, and I'm a technical curriculum developer for Google Cloud Platform. This is module 6, Managed Services. In the last few modules, we discussed how to automate the creation of infrastructure. An alternative to infrastructure automation is eliminating the need to create infrastructure by integrating a preexisting solution into your application design. Managed services are partial or complete solutions offered as a service. They exist on a continuum between Platform as a Service and Software as a Service, depending on how much of the internal methods and control are exposed. Using a managed service allows you to outsource a lot of the administrative and maintenance overhead to Google, if your application requirements fit within the service offering. Here's the module agenda. Notice that there is no lab in this module. We will have some demos though. Instead of setting up an infrastructure to support specific types of workloads, you may want to take advantage of some of the many services that we have to offer on GCP. We will be covering Dataproc, Dataflow, BigQuery, and some other managed services. Most of these do revolve around big data and data analytics, which is really where Google shines, especially in the cloud infrastructure. Let's get started.