Bird
Raised Fist0
GCPcloud~30 mins

Cloud CDN integration in GCP - Mini Project: Build & Apply

Choose your learning style10 modes available
Cloud CDN integration
📖 Scenario: You are setting up a website hosted on Google Cloud Platform (GCP). To improve the website's speed and reduce load on your server, you want to use Cloud CDN (Content Delivery Network) to cache content closer to users worldwide.
🎯 Goal: Build a simple Google Cloud configuration that creates a backend service with Cloud CDN enabled, linked to a URL map and HTTP proxy, ready to serve cached content globally.
📋 What You'll Learn
Create a backend service named my-backend-service with Cloud CDN enabled
Create a URL map named my-url-map that routes all requests to my-backend-service
Create a target HTTP proxy named my-http-proxy that uses my-url-map
Create a global forwarding rule named my-forwarding-rule that listens on port 80 and directs traffic to my-http-proxy
💡 Why This Matters
🌍 Real World
Many websites use Cloud CDN to speed up content delivery by caching content closer to users worldwide, reducing latency and server load.
💼 Career
Cloud engineers and DevOps professionals often configure CDN services to optimize web application performance and scalability.
Progress0 / 4 steps
1
Create the backend service
Create a backend service named my-backend-service with Cloud CDN disabled initially.
GCP
Hint

Use the google_compute_backend_service resource with enable_cdn = false for now.

2
Enable Cloud CDN on the backend service
Modify the backend service my-backend-service to enable Cloud CDN by setting enable_cdn = true.
GCP
Hint

Set enable_cdn to true inside the backend service resource.

3
Create URL map and HTTP proxy
Create a URL map named my-url-map that routes all requests to my-backend-service, and create a target HTTP proxy named my-http-proxy that uses my-url-map.
GCP
Hint

Use google_compute_url_map with default_service set to the backend service, and google_compute_target_http_proxy with url_map set to the URL map.

4
Create global forwarding rule
Create a global forwarding rule named my-forwarding-rule that listens on port 80 and directs traffic to the target HTTP proxy my-http-proxy.
GCP
Hint

Use google_compute_global_forwarding_rule with port_range = "80" and target set to the HTTP proxy.

Practice

(1/5)
1. What is the primary purpose of Google Cloud CDN in a web application architecture?
easy
A. To cache content closer to users for faster delivery
B. To store user data securely in the cloud
C. To manage database connections efficiently
D. To provide virtual machines for computation

Solution

  1. Step 1: Understand Cloud CDN's role

    Cloud CDN caches static and dynamic content at edge locations near users to reduce latency.
  2. Step 2: Compare with other options

    Options A, B, and D describe other cloud services unrelated to CDN's caching function.
  3. Final Answer:

    To cache content closer to users for faster delivery -> Option A
  4. Quick Check:

    Cloud CDN = caching content near users [OK]
Hint: Cloud CDN speeds up content by caching near users [OK]
Common Mistakes:
  • Confusing CDN with storage or compute services
  • Thinking CDN manages databases
  • Assuming CDN is for security only
2. Which GCP component must be configured to enable Cloud CDN for a backend service?
easy
A. Create a Cloud Storage bucket
B. Set up a Cloud SQL instance
C. Enable CDN on the backend service
D. Configure a Pub/Sub topic

Solution

  1. Step 1: Identify CDN enabling step

    Cloud CDN is enabled by turning on the CDN option on the backend service linked to the load balancer.
  2. Step 2: Eliminate unrelated components

    Cloud Storage buckets, Cloud SQL, and Pub/Sub are unrelated to enabling CDN on backend services.
  3. Final Answer:

    Enable CDN on the backend service -> Option C
  4. Quick Check:

    Enable CDN = backend service setting [OK]
Hint: Enable CDN directly on backend service in GCP [OK]
Common Mistakes:
  • Trying to enable CDN on storage buckets only
  • Confusing CDN with database or messaging setup
  • Missing the backend service step
3. Given this simplified request flow for Cloud CDN: User -> HTTP(S) Load Balancer -> Backend Service (CDN enabled) -> Origin Server. What happens when a user requests a cached object that is still valid in the CDN cache?
medium
A. The load balancer fetches the object from the origin server
B. The CDN serves the cached object directly to the user
C. The backend service disables caching for that request
D. The request is redirected to another region

Solution

  1. Step 1: Understand CDN cache hit behavior

    If the requested object is cached and valid, Cloud CDN serves it directly from the cache without contacting the origin.
  2. Step 2: Analyze other options

    The load balancer fetches the object from the origin server is incorrect because the origin is bypassed on cache hit; options B and C do not describe CDN cache behavior.
  3. Final Answer:

    The CDN serves the cached object directly to the user -> Option B
  4. Quick Check:

    Cache hit = CDN serves cached content [OK]
Hint: Cache hit means CDN serves content, no origin call [OK]
Common Mistakes:
  • Assuming origin is always contacted
  • Confusing backend service disabling cache
  • Thinking request redirects on cache hit
4. You configured Cloud CDN but notice that content is not being cached. Which of the following is the most likely misconfiguration?
medium
A. CDN is not enabled on the backend service
B. The load balancer is using HTTP instead of HTTPS
C. The origin server is unreachable
D. The forwarding rule is missing a static IP

Solution

  1. Step 1: Check CDN enablement

    Cloud CDN must be explicitly enabled on the backend service to cache content.
  2. Step 2: Evaluate other options

    Using HTTP vs HTTPS or missing static IP does not prevent caching; origin unreachable causes errors but not silent no-cache.
  3. Final Answer:

    CDN is not enabled on the backend service -> Option A
  4. Quick Check:

    CDN enabled on backend = caching works [OK]
Hint: Always enable CDN on backend service to cache content [OK]
Common Mistakes:
  • Assuming HTTPS is required for caching
  • Thinking static IP affects caching
  • Ignoring backend service CDN setting
5. You want to design a scalable web app using Cloud CDN to serve static assets from a Cloud Storage bucket. Which setup correctly integrates Cloud CDN for this use case?
hard
A. Configure a forwarding rule to Cloud Storage and enable CDN there
B. Directly enable CDN on the Cloud Storage bucket without a load balancer
C. Use Cloud SQL as backend and enable CDN on it
D. Create a backend bucket pointing to Cloud Storage, enable CDN on it, then configure an HTTP(S) load balancer with this backend bucket

Solution

  1. Step 1: Understand Cloud CDN integration with storage

    Cloud CDN integrates with Cloud Storage via a backend bucket configured in an HTTP(S) load balancer.
  2. Step 2: Evaluate options

    Directly enable CDN on the Cloud Storage bucket without a load balancer is invalid because CDN cannot be enabled directly on storage buckets; C and D misuse services or configurations.
  3. Final Answer:

    Create a backend bucket pointing to Cloud Storage, enable CDN on it, then configure an HTTP(S) load balancer with this backend bucket -> Option D
  4. Quick Check:

    Backend bucket + load balancer + CDN = correct setup [OK]
Hint: Use backend bucket with load balancer to enable CDN on storage [OK]
Common Mistakes:
  • Trying to enable CDN directly on storage buckets
  • Using databases as backend for CDN
  • Misconfiguring forwarding rules without load balancer
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard