Interest in building self-service platform for Onion Omega devices?
As far as we all know each Omega ships with its own app named OnionConsole, that is represented as web app with pretty UI to allow remote Onion management.
But think of a use case when you need to manage simultaneously more than one device. My idea is to build a self-service platform that is responsible for device discovery, centralized configuration and software updates.
@Denys-Makogon said in [Interest in building self-service platform for Onion Omega devices?]
Do it in a way that is hardware independent, ie accomodates any Linux router chip/module or comparable platform, a PC impersonating one for testing, and potentially things like an ESP8266, too.
In essence, time invested in software should be independent and portable across hardware details of the "what is cheap and convenient this winter" level.
@Chris-Stratton yeah, that'll be a platform based Go 1.8 with server and agent (on each device), once device gets up it registers itself by sending its IP address, geocode if available, etc. And using server you can distribute configuration, software updated among registered devices.
I use Zabbix for a lot of management purposes, and it has a discovery mode that you can customize. I used discovery in a large ISP environment to scan for new customer nodes coming online, scan the nodes for correct configuration, send alerts to techs when incorrectly configured systems or rogues were found, etc... The quality of the ISP's network went way up when we started detecting configuration issues BEFORE they caused problems.
The only downside is this is a rather application-specific service, so you have a challenge to make it application neutral. that probably means covering the basic common system settings, and making a API that is easy to integrate into the user's application. Being that these devices are great for swarm applications, your idea has a lot of merit. What would be better than a self-configuring swarm?
But I ageree this should be a generic Linux app, just keep it light weight so it works as well on small systems as large ones.
There are a lot of tools to look at that solve needs like this out there, in configuration management and system monitoring, so get some exposure to what others have done, might give you some good ideas.