Ends in
00
days
00
hrs
00
mins
00
secs
SHOP NOW

🎆 New Year Sale Extension - 25% OFF on ALL Reviewers to Start Your 2026 Strong with our New Year, New Skills Sale!

Back to Course

GCP PlayCloud Labs

0% Complete
0/0 Steps
  1. GCP PlayCloud Labs
  2. Guided Lab: How to Launch a GCP Compute Engine Linux Instance
  3. Guided Lab: Creating a VM Using Instance Templates
  4. Guided Lab: Creating and Managing Instance Groups in Compute Engine
  5. Guided Lab: Creating a Spot VM Instance
  6. Guided Lab: Configuring Shielded VM Options
  7. Guided Lab: Exploring Instance Metadata in Google Cloud
  8. Guided Lab: Vertically Scaling a VM Instance
  9. Guided Lab: Setting up a Web Server on a VM Instance
  10. Guided Lab: Creating a Custom Image from a VM Instance with Web Server in Google Cloud
  11. Guided Lab: Setting Up and Managing a Database on a VM Instance
  12. Guided Lab: Installing WordPress on an Ubuntu VM Instance with LEMP Stack
  13. Guided Lab: Reserving or Promoting a Static IP Address for a VM Instance
  14. Guided Lab: SSH Access to GCP VM Instance from Local Machine using SSH Key Pair
  15. Guided Lab: Creating a Cloud Storage Bucket
  16. Guided Lab: Hosting a Static Website in Google Cloud Storage Bucket
  17. Guided Lab: Protecting Data on Cloud Storage Bucket Against Accidental Delete and Overwrite Using Object Versioning
  18. Guided Lab: Creating a Cloud SQL Instance
  19. Guided Lab: Running SQL Commands in Cloud SQL Studio
  20. Guided Lab: Creating and Restoring Cloud SQL Backups
  21. Guided Lab: Integrating Cloud SQL Database instance with a VM instance
  22. Guided Lab: Connecting Cloud SQL Database with MySQL Workbench (Local)
  23. Guided Lab: Creating a Cloud NAT Gateway
  24. Guided Lab: Creating a Google Kubernetes Engine (GKE) Cluster
  25. Guided Lab: Connecting to a Kubernetes Engine Cluster
  26. Guided Lab: Deploying a Simple Web Application on GKE
Lesson 7 of 26
In Progress

Guided Lab: Exploring Instance Metadata in Google Cloud

Description

Instance metadata in Google Cloud provides information about your VM that can be accessed programmatically from within the instance. Metadata includes details such as the VM’s name, zone, machine type, network configuration, and custom user‑defined values. Each virtual machine (VM) maintains its metadata on a dedicated metadata server, and the VM can access this server’s API directly without requiring any additional authentication.

In this guided lab, you will learn how to explore and query instance metadata from a VM using the metadata server.

Prerequisites

This lab assumes you have experience creating a VM instance and are familiar with its basic components. If you feel that your knowledge in this area is insufficient, we highly recommend taking this lab to gain the necessary understanding:

Objectives

In this lab, you will:

  • Create a VM instance.
  • Access the metadata server from within the VM.
  • Retrieve and explore metadata values such as instance name, zone, machine type, networking details, and service account information.

Lab Steps

Create a VM Instance

1. In the Google Cloud Console, go to Compute Engine → VM instances → Create Instance.

2. Create a VM instance using the following machine configurations:

  • Name: Enter your desired instance name.
  • Machine type: Choose e2-micro (Preset)

3. Leave other configurations at their default values.

4. Once done, click the Create button.

Connect to the VM

1. From the VM instances page, click SSH next to your VM.

2. Once connected, verify you are inside the VM by running:

hostname
Query Instance Metadata

1. Use curl to query the metadata server. The metadata server is available at http://metadata.google.internal/.

2. Run the following commands:

# Retrieve the VM's name
curl -H "Metadata-Flavor: Google" \
http://metadata.google.internal/computeMetadata/v1/instance/name

# Retrieve the VM's zone
curl -H "Metadata-Flavor: Google" \
http://metadata.google.internal/computeMetadata/v1/instance/zone

# Retrieve the VM's machine type
curl -H "Metadata-Flavor: Google" \
http://metadata.google.internal/computeMetadata/v1/instance/machine-type

# List all available metadata keys
curl -H "Metadata-Flavor: Google" \
http://metadata.google.internal/computeMetadata/v1/instance/ -v
Explore network and service account metadata

Run the following commands:

# Retrieve the VM's internal IP address
curl -H "Metadata-Flavor: Google" \
http://metadata.google.internal/computeMetadata/v1/instance/network-interfaces/0/ip

# Retrieve the VM's external IP address
curl -H "Metadata-Flavor: Google" \
http://metadata.google.internal/computeMetadata/v1/instance/network-interfaces/0/access-configs/0/external-ip

# Retrieve the VM's service account email
curl -H "Metadata-Flavor: Google" \
http://metadata.google.internal/computeMetadata/v1/instance/service-accounts/default/email

# List all available service account scopes
curl -H "Metadata-Flavor: Google" \
http://metadata.google.internal/computeMetadata/v1/instance/service-accounts/default/scopes

Congratulations! You have successfully explored instance metadata in Google Cloud. You created a VM, queried metadata such as name, zone, and machine type, and explored networking and identity metadata like IP addresses and service account details. This workflow demonstrates how metadata can be used to dynamically configure applications, discover networking information, and manage identity programmatically.

Skip to content