Load balancer backends marked down
Clients time out on lb-app at 10.1.1.10.
- Get vm-client reaching lb-app on 443
- Keep SSH from vm-client to the backends blockedbroken
lb-app, at 10.1.1.10, spreads HTTPS from clients across vm-web1 and vm-web2. Clients like vm-client time out. nsg-web allows clients on 443 and denies everything else. Find out what the load balancer thinks of its backends, and fix it.
Connect to vm-client.
ssh vm-clientWhat's this?
Opens a shell on vm-client, so the next commands run on that VM. In this lab it's a shortcut. In real Azure you'd connect through something like Azure Bastion, or SSH to an address you can reach.
Try the frontend. Type exit when done.
nc -zv 10.1.1.10 443What's this?
netcat, a standard Linux tool. Tries to open a TCP connection and reports whether it worked.
-zonly check whether the port answers. Send no data-vprint the result in words10.1.1.10where to connect443the port to try
Look at the probe.
az network lb probe list -g rg-lab --lb-name lb-app -o tableWhat's this?
Works with a load balancer health probe. It checks each backend on a port, and only backends that pass get new connections.
-gthe resource group the resources live in
Look at what filters the backends.
az network nic list-effective-nsg -g rg-lab --name vm-web1-nicWhat's this?
Shows every security rule applied to a VM's network interface, from the subnet's NSG and the NIC's NSG, in the order they're checked.
-gthe resource group the resources live in--namethe name of the thing to look at or change
Let the probe in, ahead of Deny-All-Inbound.
az network nsg rule create -g rg-lab --nsg-name nsg-web --name Allow-LB-Probe --priority 300 --direction Inbound --access Allow --protocol Tcp --source-address-prefixes AzureLoadBalancer --destination-port-ranges 443What's this?
Adds or changes one rule in a network security group (NSG). Rules are checked from the lowest priority number up, and the first match decides.
-gthe resource group the resources live in--nsg-namethe network security group the rule is in--namethe name of the thing to look at or change--prioritywhere the rule sits in the order. Lower numbers are checked first--directionInbound for traffic coming in to the VM, Outbound for traffic leaving it--accessAllow or Deny--protocolTCP or UDP--source-address-prefixeswhich source addresses the rule matches--destination-port-rangeswhich ports the rule matches
--source-address-prefixes AzureLoadBalancerthe service tag for 168.63.129.16
Answer the question below.
Sources on Microsoft Learn (2)
?
- Resource group, the outer dashed frame
- Virtual network, with its address space top right
- Subnet, with range and usable IPs (5 reserved)
- Network security group. A small shield on a VM's NIC means the NIC has one too
- Route table on the subnet
- VM Appliance Private endpoint
- Peering Connected Initiated or access off
- Goal working Goal broken, X marks where it stops
- Private DNS zone, dotted lines go to linked VNets
- Orange pulse: what your last command changed. Drag to pan, Ctrl and scroll to zoom.
vm-client → lb-app-fe:443should work: not working