Device won't update

I have one device out of 150 which are all in the same network which won’t update. It has VPN but no API activity (broken heart). The other device in the same app which is on the same switch has updated.

journalctl -u resin-supervisor --no-pager shows that the device initially cannot resolve api.balena-cloud.com but later it is OK and when I log in via ssh to the host it also works.

The only difference I could find is that the broken device resolves api.balena-cloud.com to 34.235.218.52 whereas the other one resolves to 52.55.68.135. Both are valid ips for that address:

host api.balena-cloud.com
api.balena-cloud.com is an alias for resin-d-alb-15sj6u7hs9afn-1069262607.us-east-1.elb.amazonaws.com.
resin-d-alb-15sj6u7hs9afn-1069262607.us-east-1.elb.amazonaws.com has address 34.235.218.52
resin-d-alb-15sj6u7hs9afn-1069262607.us-east-1.elb.amazonaws.com has address 52.55.68.135

This didn’t make any difference and somehow the device magically fixed itself.

While this is great in general it blocked us for hours to apply a software update and there was no way to force the device to “fix” it which it apparently can.

there was no way to force the device to “fix” it which it apparently can

Hi Frank, sorry to hear about the disruption to the software update. Which balenaOS version was the device running? I am not sure if this suggestion would really have helped, but something that you could try (perhaps if it happens again) is to restart the dnsmasq and supervisor services on the device, by opening a shell on the host OS and running:

$ systemctl stop dnsmasq; sleep 1; systemctl start dnsmasq
$ systemctl stop resin-supervisor; sleep 3; systemctl start resin-supervisor

And then check the logs for any errors:

journalctl -au dnsmasq
journalctl -au resin-supervisor

Thanks @pdcastro. I will try this the next time.