Bird
Raised Fist0
GCPcloud~30 mins

HTTP(S) Load Balancer (Layer 7) in GCP - Mini Project: Build & Apply

Choose your learning style10 modes available
Create a Basic HTTP(S) Load Balancer on GCP
📖 Scenario: You are setting up a simple web service on Google Cloud Platform (GCP). To distribute incoming web traffic evenly and securely, you want to create an HTTP(S) Load Balancer. This will help your users get fast and reliable access to your website.
🎯 Goal: Build a basic HTTP(S) Load Balancer on GCP that routes traffic to a backend service with an instance group.
📋 What You'll Learn
Create a backend service named my-backend-service
Create a URL map named my-url-map that routes all traffic to the backend service
Create a target HTTP proxy named my-http-proxy linked to the URL map
Create a global forwarding rule named my-forwarding-rule that listens on port 80 and directs traffic to the target HTTP proxy
💡 Why This Matters
🌍 Real World
HTTP(S) Load Balancers are used to distribute web traffic across multiple servers to improve availability and performance.
💼 Career
Understanding how to configure load balancers on cloud platforms like GCP is essential for cloud engineers and infrastructure specialists.
Progress0 / 4 steps
1
Create the backend service
Write a gcloud command to create a backend service called my-backend-service with the protocol set to HTTP.
GCP
Hint

Use gcloud compute backend-services create with the name my-backend-service and specify --protocol=HTTP and --global for a global load balancer.

2
Create the URL map
Write a gcloud command to create a URL map named my-url-map that sends all requests to the backend service my-backend-service.
GCP
Hint

Use gcloud compute url-maps create with the name my-url-map and set --default-service to my-backend-service.

3
Create the target HTTP proxy
Write a gcloud command to create a target HTTP proxy named my-http-proxy that uses the URL map my-url-map.
GCP
Hint

Use gcloud compute target-http-proxies create with the name my-http-proxy and link it to my-url-map using --url-map.

4
Create the global forwarding rule
Write a gcloud command to 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 gcloud compute forwarding-rules create with the name my-forwarding-rule, specify --global, set --target-http-proxy to my-http-proxy, and listen on port 80 with --ports=80.

Practice

(1/5)
1. What is the primary function of an HTTP(S) Load Balancer in Google Cloud Platform?
easy
A. Distribute incoming web traffic across multiple backend services
B. Store user data securely in the cloud
C. Create virtual machines automatically
D. Monitor network latency between regions

Solution

  1. Step 1: Understand the role of HTTP(S) Load Balancer

    It is designed to spread incoming web traffic to multiple backend services to improve performance and reliability.
  2. Step 2: Eliminate unrelated functions

    Storing data, creating VMs, and monitoring latency are not functions of the load balancer.
  3. Final Answer:

    Distribute incoming web traffic across multiple backend services -> Option A
  4. Quick Check:

    Load balancer = traffic distribution [OK]
Hint: Load balancer = spreading traffic to backends [OK]
Common Mistakes:
  • Confusing load balancer with storage or VM services
  • Thinking it monitors network latency
  • Assuming it creates resources automatically
2. Which component is NOT part of the HTTP(S) Load Balancer setup in GCP?
easy
A. Cloud Storage bucket
B. Forwarding rule
C. Target proxy
D. URL map

Solution

  1. Step 1: Identify components of HTTP(S) Load Balancer

    It includes URL maps, forwarding rules, and target proxies to route traffic.
  2. Step 2: Recognize unrelated components

    Cloud Storage bucket is for storing files, not part of load balancing setup.
  3. Final Answer:

    Cloud Storage bucket -> Option A
  4. Quick Check:

    Storage bucket ≠ load balancer component [OK]
Hint: Storage buckets store files, not route traffic [OK]
Common Mistakes:
  • Confusing storage services with load balancer parts
  • Mixing forwarding rules with storage buckets
  • Assuming all GCP services are load balancer components
3. Given this URL map configuration snippet, which backend service will handle requests to /images/*?
{
  "hostRules": [{"hosts": ["*"], "pathMatcher": "allpaths"}],
  "pathMatchers": [{
    "name": "allpaths",
    "defaultService": "backend-service-default",
    "pathRules": [{"paths": ["/images/*"], "service": "backend-service-images"}]
  }]
}
medium
A. backend-service-default
B. backend-service-images
C. backend-service-static
D. backend-service-api

Solution

  1. Step 1: Analyze path rules in URL map

    The path rule for /images/* points to backend-service-images.
  2. Step 2: Understand default service role

    Requests not matching specific paths use backend-service-default, but /images/* matches a specific path rule.
  3. Final Answer:

    backend-service-images -> Option B
  4. Quick Check:

    Specific path rule overrides default service [OK]
Hint: Specific path rules override default backend [OK]
Common Mistakes:
  • Choosing default service instead of specific path service
  • Ignoring path pattern matching
  • Confusing backend service names
4. A user configures an HTTP(S) Load Balancer but finds that requests to /api/* are not routed to the intended backend service. Which is the most likely cause?
medium
A. The backend service is not in the same region
B. The forwarding rule is missing
C. The target proxy is not HTTPS
D. The URL map lacks a path rule for /api/*

Solution

  1. Step 1: Check URL map path rules

    If /api/* is missing in path rules, requests won't route correctly.
  2. Step 2: Verify other components

    Forwarding rule and target proxy affect traffic flow but missing path rule directly causes routing failure. Backend region mismatch usually causes latency, not routing failure.
  3. Final Answer:

    The URL map lacks a path rule for /api/* -> Option D
  4. Quick Check:

    Missing path rule = routing failure [OK]
Hint: Check URL map paths if routing fails [OK]
Common Mistakes:
  • Assuming forwarding rule absence causes routing error
  • Confusing HTTPS proxy with routing logic
  • Ignoring URL map path rules
5. You want to design a scalable web application using GCP's HTTP(S) Load Balancer that routes traffic based on URL paths to different backend services. Which design approach ensures high availability and efficient routing?
hard
A. Use a single backend service for all traffic and scale it vertically
B. Deploy multiple forwarding rules each pointing to different backend services without URL maps
C. Configure URL map with path matchers directing to multiple regional backend services behind managed instance groups
D. Use TCP Load Balancer instead of HTTP(S) Load Balancer for path-based routing

Solution

  1. Step 1: Understand path-based routing needs

    HTTP(S) Load Balancer uses URL maps with path matchers to route requests to different backends efficiently.
  2. Step 2: Ensure scalability and availability

    Using multiple regional backend services behind managed instance groups provides scalability and high availability.
  3. Step 3: Evaluate other options

    Single backend limits scalability; multiple forwarding rules without URL maps cannot do path-based routing; TCP Load Balancer does not support Layer 7 routing.
  4. Final Answer:

    Configure URL map with path matchers directing to multiple regional backend services behind managed instance groups -> Option C
  5. Quick Check:

    URL map + regional backends = scalable routing [OK]
Hint: Use URL maps with regional backends for scalable routing [OK]
Common Mistakes:
  • Using single backend limits scalability
  • Misusing forwarding rules for path routing
  • Choosing TCP Load Balancer for HTTP path routing
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