Deploying a VM via a Deployment Manager Template
Start course

*** NOTICE: This course contains outdated information and has been deprecated ***

This course has been designed to teach you how to deploy and implement Google Cloud Platform solutions. The content in this course will help prepare you for the Associate Cloud Engineer exam.

Learning Objectives

  • To learn how to deploy Kubernetes Engine resources on Google Cloud Platform
  • To learn how to deploy and implement App Engine and Cloud Functions resources
  • To learn how to use Cloud Launcher and Deployment Manager

Intended Audience

  • Those who are preparing for the Associate Cloud Engineer exam
  • Those looking to learn more about GCP networking and compute features


To get the most from this course then you should have some exposure to GCP resources, such as Kubernetes Engine, App Engine, Cloud Functions, Cloud Launcher, and Deployment Manager. However, this is not essential.


Over the last two lessons, we covered the creation of a deployment manager template file and we also covered the role of the configuration file. In this lesson, I'm going show you how to combine the two to deploy a VM instance. 

So, let's get started. 

Before I do anything, I need to decide which project I'm going to use, since Deployment Manager requires a GCP Console project to be specified. For this exercise, I'm using my existing Cloud Academy project. 

I'm going to run this deployment from Google Cloud Shell, which comes with gcloud installed. Gcloud is what we are going to use to deploy our template. 

To run my deployment from Cloud Shell, I need to launch the shell and then launch the code editor window. So let's go ahead and activate Cloud Shell. And then we'll launch the code editor window. 

At this point, I need to drag my templatedemo folder from my workstation into the explorer here in code editor. This will allow me to run my commands and to access the files that they reference. So let me go down here and open my Desktop here. 

You can see here that my templatedemo folder, and everything in it, is now up in cloud shell 

So, now that I have everything in my environment set up, I can begin my deployment. 

What I'm going to do here is change to my templatedemo directory and then run my deployment from there since that's where my files are. To run my deployment here, using the demovm template that I showed you earlier, I need to run the command that I'm going to show you here on your screen. And I'll copy this in here 'cause it's a long command. So what we're going to do here is we're going to use gcloud deployment-manager to create a deployment called myvm-with-templates and we're going to configure that deployment using the myvm.yaml file. 

When this deployment runs, my config file will import that template and remember the config file is the YAML file. And that's going to import the ginger file which is the template via the imports section that was added to that configuration file and we covered that earlier. So we'll go ahead and hit Enter here. And we can see the deployment begins. 

Now if we switch over to the console here and go into compute engine, we can see my first VM being deployed. Let's switch back over to Cloud Shell here and we'll continue with the deployment. Now, this'll take a few minutes to complete and we can see here that it's completed with no errors. 

What I'm going to do now is run the gcloud deployment-manager command that we're going to pull in here and what this command is going to do is allow me to view my deployment. So let me pull this command in here. We're calling gcloud deployment manager and we're using the deployments command and instead of using a create, we're using a describe and essentially what this is doing is telling Deployment Manager to show me the deployment called myvm-with -emplates. So we'll go ahead and hit Enter here. 

And as you can see here, this command returns my deployment information. We can see the name, the end time, the operation type, the progress of the deployment when it started and its status. We can also see who ran it. At the bottom here we can see the status is complete. So, with that, you now know how to create a basic VM deployment using a template!

About the Author
Learning Paths

Tom is a 25+ year veteran of the IT industry, having worked in environments as large as 40k seats and as small as 50 seats. Throughout the course of a long an interesting career, he has built an in-depth skillset that spans numerous IT disciplines. Tom has designed and architected small, large, and global IT solutions.

In addition to the Cloud Platform and Infrastructure MCSE certification, Tom also carries several other Microsoft certifications. His ability to see things from a strategic perspective allows Tom to architect solutions that closely align with business needs.

In his spare time, Tom enjoys camping, fishing, and playing poker.

Covered Topics