Order app can't reach its database or storage
The order app can't reach its database or its storage.
- Get vm-orders reaching srv-db on 1433
- Get vm-orders reaching stlogs01 on 443 over its private endpoint
- Keep vm-orders blocked on other outbound ports, like SSH to srv-dbbroken
- Keep public access on stlogs01 offbroken
Background
"The order app is broken. It can't read from the on-premises database, and it can't write to blob storage either. We moved it to Spoke 1 on Friday." vm-orders needs srv-db, the on-premises SQL server, on 1433, reached over the hub's VPN gateway. It also writes to stlogs01, a blob storage account, through a private endpoint in the hub. Public access on stlogs01 stays off, and vm-orders may only use the ports it needs.
- 1See it fail
Prove the problem yourself before you change anything. Reports are often wrong.
VM commands forVMsssh vm-ordersWhat's this?
Opens a shell on vm-orders, 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.
nc -zv 192.168.10.5 1433What'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 words192.168.10.5where to connect1433the port to try
Ticks off when the test runs on vm-orders.
- 2Find where it stops
- 3Name the cause
- 4Fix it and test again
?
- 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-orders → srv-db:1433should work: not workingvm-orders → stlogs01.blob.core.windows.net:443should work: not working