openBalena Local server set-up and raspberry device sync failied

Hi,

I have setup a openBalena server in my ubuntu18.04 laptop, I followed the instructions https://www.balena.io/open/docs/getting-started/. I am partially successful, I could create app myAPP and list it.
I have raspberryPi 3, I followed instructions to flash image after configuring. I am able to see the Raspi is booting perfect but when I run command ‘balena devices’ on balena cli I am not seeing the entry.

Installed balena CLI on VM. So, openBalena server and balena CLI are on different machines in same network.
All instructions are run with login supplied while creating config folder for openBalena server.
Any points where I am missing ?

Hi @pei

Firstly, did you use the openbalena.local domain? This uses mDNS to resolve and I have had issues on some network setups. If you have the ability to setup using a different domain, one which you can control the DNS entries for verbatim, that might be helpful.

Secondly, did you use a development image on your Pi? If so then could you pull the logs for the resin-supervisor service and put them here. To do so:

  1. SSH to the Pi on port 22222, e.g. ssh root@{Pi IP address} -p 22222
  2. run journalctl -u resin-supervisor -n100 --no-pager

This should show what’s going on from the Pi’s perspective.

Hello @richbayliss,

  1. Yest domain is set to openbalena.local w/o it CLI was not able to connect.
  2. I am using development version of Raspberry image.
  3. Bellow is the log of the command. Event: Device bootstrap failed is coming, dont know the reason, have I made any mistake?
    Fullo Log:

Could you also try running, on the Pi:

curl -ik https://api.openbalena.local/ping

and see if you get back OK?

No. “Could not resolve host: api.openbalena.local”.
I see there are no entries for for openbalena.local.

OK well now we know the cause of the problem then; without it being able to curl the API it cannot register and receive instruction.

Personally I don’t use the .local domain in my setup, so I will reach out to someone who might be able to offer some debug advice.

In the meantime, if you can add host entries to your networks’ DNS resolver, then I would setup again using something like openbalena.lan and have entries for api., vpn., registry. and s3. all pointing to the IP of your setup.

Could you also try running avahi-browse -a -r and post the results here too?

root@47e3be4:~# avahi-browse -a -r
-sh: avahi-browse: command not found

avahi-daemon is running.

@pei open-balena currently isn’t advertising addresses on the network so you’ll need to configure DNS properly. If you’re deploying locally, it might be as simple as adding appropriate routes to your router so that devices will be able to resolve the open-balena hostnames. However, by far the easiest way to get a working installation is to setup an instance on a public host following the Getting Started guide.

1 Like

@dfunckt Thank you. I will try.

I have a similar problem as OP had (Device bootstrap fails, curl returns an error), so I’m curious, if the solution is still the same as @dfunckt proposed (configuring DNS) or is there some other solution to this issue?

If you’re using a .local domain then yes; it is better to use a real domain and have DNS configured for it :ok_hand:

1 Like