In this demonstration, I'll use Deployment Manager to create a GCP deployment and maintain it. I'll also view resource usage in a virtual machine using Google Stackdriver. I'll work with Deployment Manager using Cloud Shell. For the sake of convenience, I'm going to define an environment variable containing my preferred GCP zone. I already have an environment variable containing my GCP Project ID. Now, I will create my Deployment Manager template using a text editor. I've created my template in another window, and I'll paste it in here. Now, let's take a look at what we have. This template defines a virtual machine as a resource. It's named My VM. This virtual machine is defined to have a startup script apt get update which calls for its database of the applications to be updated. Be aware that the SIM tags of Deployment Manager requires you to specify the preferred zone in a few places and the GCP project ID in a few places. We'll substitute them into this file using the sed to command or write my file out to disk. Now, let's use sed to substitute in our project ID. The sed command has no output when it is successful. Similarly, we'll use the sed command to substitute in our preferred zone. Let's look at the file again and see our results. Our GCP zone has been substituted into the template as has our GCP project ID. Now, we're ready to build a deployment from this template. The template will create a new deployment and compute engine. It will be called My First Depl, and it will use the template mydeploy.yaml. It's done. We can confirm his status using the gcloud command. There's our deployment, My First Depl. Now, let's look at the resulting virtual machine. We'll go to the computer engine VM instances page. There's our virtual machine My-VM. We click on its name to open its details and scroll down, and there's it's startup script apt get update. Now, let's make a change to our template. I'm going to add a command to the startup script. This new command installs the nginx light web server. Now, we'll update our deployment. Now that the update is complete, let's go back to our virtual machine instance detail page and now look again at the startup script. The startup script has been updated. Now, let's put some CPU load on the VM we created and monitor it using Stackdriver. First, we'll log into the virtual machine by connecting to it using SHH. This Linux command creates an artificial CPU load on the virtual machine. In essence, it forces the CPU to continuously attempt to compress random data. Now, let's return to the GCP console and set up Stackdriver Monitoring. In the products and services menu, we scroll down to Stackdriver Monitoring. We confirmed that we want to create an account and we'll confirm that we wish to monitor our GCP project. We don't want to monitor any AWS accounts, so we'll click Skip AWS Set Up. For this particular activity, there is no need to install the Stackdriver Monitoring Agent, so we just click Continue. We don't need to get reports by email for this demonstration, so we click No Reports. Now, we click launch monitoring. We'll click Continue with the Trial. Notice that our CPU utilization increased sharply a few minutes ago when we started our artificial load. In this demonstration, I used two GCP services, Deployment Manager, and Google Stackdriver. Using Deployment Manager, I created a deployment and I maintained it. Using Google Stackdriver, I viewed resource usage inside of a virtual machine.