Configuring ingresses on a Raspberry Pi cluster

I’ve set up a Microk8s cluster of four Raspberry Pi 4s on my home network that I want to run a few services on. I’ve previously run the services on a Docker swarm using traefik as the ingress, and I’m now trying to get them to work with the microk8s ingress addon.
My first test has been to set up sabnzbd from the Linuxserver repo and I have a service and a deployment that respond if I curl them on my cluster controller with the IP address it has been allocated. I have used the default namespace.
I have an ingress that follows the example given in the microk8s documentation (now slightly out of date, but corrected) with a hostname that is served from my router DNS with the IP address of the cluster controller.
If I try and access the service using the hostname I get an nginx 404. Using microk8s kubectl describe ingress I can see that the ingress is listening on localhost, which doesn’t quite make sense, and I also get the error Default backend: default-http-backend:80 (<error: endpoints "default-http-backend" not found>).
It feels like I’m missing something and I’m not sure what. I can’t see where to look for ingress logs or the nginx config, which would probably help a lot.