multiple compute units in one device architecture

Hi there !

What would be the “best architecture” if your end device contains 2 compute units taht both have internet access (eg. 2 PC + router or 1 nuc + 1 jetson + router…) ?

Given that they both access internet, I would consider that they indeed are separate balena devices. Would you do the same?

Have a nice day :slight_smile:

Hello @luchko,

thanks for your question about a recommended edge architecture.
In general, both device would run their own balenaOS and run the releases from the fleet.
If the applications on both devices are the same, I’d suggest running both devices in one fleet and maintain the releases for the devices in one place.
If the applications are different, I’d recommend running both devices in different fleets as it would separate the concerns of developing, deploying and updating the application only for one of the two edge units.

If you can share more details about your specific application, we appreciate any information so that we can give you more focussed suggestions.

Best regards
Harald

Thanks!
Application will be different, the “main” device will run UI related code and the second one can be seen more like a “computation unit” to run some robotic related software (mapping, trajectory panning …) .

We are currently at the first step of sourcing which board can feat our needs, if you have some experience, that would be great.

NB: we will have to store somewhere the link between 2 balena devices and 1 physical device, that’s why I asked this question at first.

Thanks for sharing more details @luchko

I think for ‘storing’ some link information between two devices, you may want to use device environment variables. Not knowing how this link will look like in your case I just give an example:
Would storing the other devices IPs / mDNS published local hostnames be sufficient in your case?

Best Regards
Harald

Thank you again, I think I will need to store a link between UUIDs, but for now I am trying to overcome another issue I might encounter, maybe you will have (part of) an answer for me ?

In fact, my 2 devices have to be connected to internet. Easier solution would be to use the 1st device internet connexion and share it to the second, but I will have to take care of the upgrade scenarios !

Is that for this needs that balena is developping apps/fleet separation ?

tahnks again !