Bird
Raised Fist0
Azurecloud~30 mins

Backend pools and health probes in Azure - Mini Project: Build & Apply

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Backend pools and health probes
📖 Scenario: You are setting up a simple Azure Load Balancer configuration for a web application. The load balancer will distribute traffic to backend virtual machines. To ensure traffic is only sent to healthy machines, you need to configure backend address pools and health probes.
🎯 Goal: Build an Azure Load Balancer configuration with a backend address pool containing two virtual machines and a health probe that checks their health on port 80.
📋 What You'll Learn
Create a backend address pool named myBackendPool with two IP addresses: 10.0.0.4 and 10.0.0.5.
Create a health probe named myHealthProbe that checks TCP port 80 every 15 seconds with a timeout of 5 seconds.
Associate the health probe with the backend address pool.
Use valid Azure Resource Manager (ARM) JSON syntax.
💡 Why This Matters
🌍 Real World
Load balancers distribute traffic to multiple servers to improve availability and performance. Health probes ensure traffic is only sent to healthy servers.
💼 Career
Understanding backend pools and health probes is essential for cloud engineers managing Azure networking and load balancing.
Progress0 / 4 steps
1
Create the backend address pool
Create a JSON object called backendAddressPool with the name myBackendPool and include two backend IP addresses: 10.0.0.4 and 10.0.0.5.
Azure
Hint

Use the backendAddresses array inside properties to list the IPs.

2
Create the health probe configuration
Create a JSON object called healthProbe with the name myHealthProbe. Set the protocol to Tcp, the port to 80, the interval to 15 seconds, and the number of unhealthy threshold retries to 2. Set the timeout to 5 seconds.
Azure
Hint

Set protocol to Tcp and specify the port and timing values inside properties.

3
Associate the health probe with the load balancer configuration
Create a JSON object called loadBalancer that includes the backendAddressPools array containing myBackendPool and the probes array containing myHealthProbe.
Azure
Hint

Put the backend pool and health probe inside their respective arrays in the load balancer JSON.

4
Complete the load balancer resource with frontend IP configuration
Add a frontendIPConfigurations array to the loadBalancer JSON object with one entry named myFrontEnd and an privateIPAddress of 10.0.0.10.
Azure
Hint

Add the frontend IP configuration as an array with the specified name and IP address.

Practice

(1/5)
1. What is the main purpose of a backend pool in Azure Load Balancer?
easy
A. To create virtual networks
B. To monitor the health of servers
C. To store user data securely
D. To group servers that will share incoming user requests

Solution

  1. Step 1: Understand backend pool role

    A backend pool groups multiple servers to distribute incoming traffic among them.
  2. Step 2: Differentiate from health probes

    Health probes check server status, but backend pools organize servers for load balancing.
  3. Final Answer:

    To group servers that will share incoming user requests -> Option D
  4. Quick Check:

    Backend pool = group servers for requests [OK]
Hint: Backend pools group servers; health probes check server status [OK]
Common Mistakes:
  • Confusing backend pools with health probes
  • Thinking backend pools store data
  • Mixing backend pools with network creation
2. Which of the following is the correct way to define a health probe in Azure Load Balancer configuration?
easy
A. healthProbe: { protocol: 'TCP', port: 80, intervalInSeconds: 15, numberOfProbes: 2 }
B. healthProbe: { protocol: 'FTP', port: 21, intervalInSeconds: 10, numberOfProbes: 3 }
C. healthProbe: { protocol: 'HTTP', port: 8080, intervalInSeconds: 5, numberOfProbes: 1 }
D. healthProbe: { protocol: 'UDP', port: 53, intervalInSeconds: 20, numberOfProbes: 4 }

Solution

  1. Step 1: Identify valid protocols for health probes

    Azure Load Balancer supports TCP and HTTP probes; FTP and UDP are invalid.
  2. Step 2: Check probe parameters

    healthProbe: { protocol: 'TCP', port: 80, intervalInSeconds: 15, numberOfProbes: 2 } uses TCP on port 80 with reasonable intervals and probe counts, matching best practices.
  3. Final Answer:

    healthProbe: { protocol: 'TCP', port: 80, intervalInSeconds: 15, numberOfProbes: 2 } -> Option A
  4. Quick Check:

    Valid protocol and settings = healthProbe: { protocol: 'TCP', port: 80, intervalInSeconds: 15, numberOfProbes: 2 } [OK]
Hint: Use TCP or HTTP protocols for health probes in Azure [OK]
Common Mistakes:
  • Using unsupported protocols like FTP or UDP
  • Setting too few probes causing false negatives
  • Choosing invalid port numbers
3. Given this health probe configuration:
protocol: 'HTTP', port: 8080, intervalInSeconds: 10, numberOfProbes: 3

If the backend server responds successfully on the first two probes but fails on the third, what will Azure Load Balancer do?
medium
A. Mark the server as unhealthy immediately after the first failure
B. Mark the server as unhealthy after three consecutive failures
C. Ignore the probe results and keep the server in the pool
D. Keep the server as healthy because two successful probes passed

Solution

  1. Step 1: Understand numberOfProbes meaning

    numberOfProbes defines how many consecutive failed probes mark a server unhealthy.
  2. Step 2: Analyze probe results

    Only one failure occurred, so the server is still healthy until 3 consecutive failures happen.
  3. Final Answer:

    Mark the server as unhealthy after three consecutive failures -> Option B
  4. Quick Check:

    3 failures needed to mark unhealthy = Mark the server as unhealthy after three consecutive failures [OK]
Hint: Server unhealthy after consecutive failed probes count reached [OK]
Common Mistakes:
  • Marking unhealthy after a single failure
  • Ignoring the numberOfProbes setting
  • Assuming any failure removes server immediately
4. You configured a backend pool with three servers and a health probe. One server is always marked unhealthy even though it is running fine. What is the most likely cause?
medium
A. Backend pool has too many servers
B. Load balancer is not assigned a public IP
C. Health probe is configured with the wrong port or protocol
D. The backend server is overloaded with traffic

Solution

  1. Step 1: Check health probe configuration

    If the probe uses the wrong port or protocol, it will fail to get a healthy response from the server.
  2. Step 2: Rule out other causes

    Too many servers or missing public IP do not cause probe failures; overload affects performance but not probe success directly.
  3. Final Answer:

    Health probe is configured with the wrong port or protocol -> Option C
  4. Quick Check:

    Wrong probe config causes false unhealthy status [OK]
Hint: Check probe port and protocol if server shows unhealthy wrongly [OK]
Common Mistakes:
  • Blaming backend pool size for probe failures
  • Ignoring probe configuration details
  • Assuming public IP affects probe health
5. You want to ensure high availability for your web app using Azure Load Balancer. You have three backend servers and want to configure health probes and backend pools. Which combination best improves reliability and performance?
hard
A. Create a backend pool with all three servers and a TCP health probe on port 80 with 5-second intervals and 2 probes
B. Create separate backend pools for each server and no health probes
C. Create a backend pool with two servers only and an HTTP health probe on port 8080 with 30-second intervals and 5 probes
D. Create a backend pool with all servers and a health probe using unsupported protocol FTP

Solution

  1. Step 1: Use a single backend pool for load distribution

    Grouping all servers in one backend pool balances traffic and improves availability.
  2. Step 2: Configure a valid health probe with appropriate settings

    TCP probe on port 80 with short intervals and few probes quickly detects unhealthy servers.
  3. Step 3: Evaluate other options

    Separate pools reduce load balancing benefits; no probes risk sending traffic to bad servers; unsupported protocols cause failures.
  4. Final Answer:

    Create a backend pool with all three servers and a TCP health probe on port 80 with 5-second intervals and 2 probes -> Option A
  5. Quick Check:

    All servers + valid probe = best reliability [OK]
Hint: Use all servers in one pool with valid health probe for best uptime [OK]
Common Mistakes:
  • Splitting servers into multiple pools unnecessarily
  • Skipping health probes
  • Using unsupported protocols for probes