GCP Global Network

A global private isolated virtual network that provides managed networking functionality for your Google Cloud Platform (GCP) resources.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Made by

Massdriver

Official

Yes

Google Cloud Global VPC Network

Google Cloud's Virtual Private Cloud (VPC) Network is a highly customizable global network that supports various services within Google Cloud. This guide will help you manage and understand the functionalities of a global VPC network on Google Cloud, including private service connect and private services access.

Design Decisions

  1. Routing Mode: The network is configured with a GLOBAL routing mode to enable efficient communication across regions.
  2. IP Address Allocation: Specific IP addresses are reserved for private service connect and private services access to ensure secure and efficient use of Google Cloud services.
  3. Dependency Management: The Terraform module ensures that required APIs are enabled and properly set up before configuring the VPC, addressing any dependency issues.
  4. Service Access: The VPC network is designed to support private service access, allowing you to communicate internally without relying on public IP addresses.
  5. Private Service Connect: Private Service Connect improves security by allowing you to access GCP APIs across VPCs without traversing the public Internet.

Runbook

Issue: Unable to Access Google APIs Privately

Sometimes, you might face issues accessing Google APIs via Private Service Connect. You can use the following commands to troubleshoot and identify the problem.

List Existing Global Addresses and Forwarding Rules

Use these commands to see if the necessary global addresses and forwarding rules are in place:

gcloud compute addresses list --global
gcloud compute forwarding-rules list --global

Ensure that there are entries for Private Service Connect.

Check VPC Peering Connections

Verify that the VPC peering connection is established correctly:

gcloud compute networks peerings list --network=YOUR_NETWORK_NAME

Check for entries related to servicenetworking.googleapis.com.

Issue: IP Range Allocation for Private Services

If IP ranges for private services are not properly allocated, it can cause connectivity issues. Use the following command to debug:

gcloud compute addresses describe YOUR_ADDRESS_NAME --global

Make sure the address type is INTERNAL and it is reserved for VPC peering.

Checking VPC Routes and Subnets

If there are routing issues within the VPC, use these commands to list the routes and subnets configurations:

gcloud compute routes list --filter="network:YOUR_NETWORK_NAME"
gcloud compute networks subnets list --filter="network:YOUR_NETWORK_NAME"

Ensure that there are no conflicting routes and the subnets are correctly created.

Google Service Networking Configuration

If the service networking connection has issues, verify the status using:

gcloud services vpc-peerings list --network=YOUR_NETWORK_NAME

Check if servicenetworking.googleapis.com is listed and the connection is in an ACTIVE state.

This concludes troubleshooting guidance for common issues with managing a global VPC network on Google Cloud.

VariableTypeDescription
private_service_connect_ipstringInternal IP address to use for accessing Google APIs, such as CloudFunctions, GCR or Cloud Storage, privately instead of over the internet via public IPs. This IP cannot conflict with any existing subnets or peered networks. More info: https://cloud.google.com/vpc/docs/configure-private-service-connect-apis
private_services_access_cidrstringCIDR range to deploy GCP services to. This range cannot be used for any other purpose and cannot conflict with existing subnets or peered networks. This range is used by Google to deploy services like MemoryStore and CloudSQL without requiring individual peering connections per instance. More info: https://cloud.google.com/vpc/docs/private-services-access