-
Notifications
You must be signed in to change notification settings - Fork 408
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Question: building a production ready Leshan server ? #1669
Comments
About :
This leads :
|
Is this idea also concerned the LWM2M Bootstrap server ? |
This is not only about funding the initial development, this is also about maintaining over the time. |
Another concern is about customization. But often community ask to be able to customize default behavior, because of :
That ☝️ seems to be complicated to satisfy with :
|
If needed, we can create a new project in eclipse-leshan GitHub organization. |
Yes, the main usage would be automatically rotating creds in coordination with the DM server.
For this you need commercial adoption, if it runs in production, then it needs to be maintained
I would keep the strict compliance (maybe with an exception for things where the spec is obviously broken), exception would be allowed by configuration for legitimate cases, or forking since it's open-source. |
Interesting "move" or development.
That's what I also got as feedback in 2022. Therefore I started Californium S3-proxy-server at that time. Today I released the latest version (4.0.0-M2) with extended http-forwarding functions.
In the case of the What stays as pain point is the installation, mainly for the hw- |
Hi, that's a good thing that you put the subject up to date and work on this. In my company I try to promote LWM2M but as you said most of industrial LWM2M platforms are expensive solutions when we have only 10k or just more devices to handle ... I can participate in testing if you want, my manager recently asked me to reopen the subject on our side to see if we could at least handle LWM2M in our devices as a PoC for device management purpose and FOTA purpose at least as a demo (with /5 , /6 and /3 resources). |
@EmbGangsta if you use Zephyr, you can use the https://github.com/zephyrproject-rtos/zephyr/tree/main/samples/net/lwm2m_client BTW I would like to understand your use case, do you mind emailing me to [email protected] ? |
So I plan to start with a single instance LWM2M server (no bootstrap for now) with no or minimal UI for now, and focus on backend integration (Web API + webhook) Persistence using embedded SQL database (sqlite) with a persistence abstraction front (Repository pattern) A ‘domain’ model based on Java records, with no logic, services to fill the logic needs for the different frontend pieces (LWM2M, API, UI). On the LWM2M piece, we should persist the needed DTLS elements for graceful restarts. Base service with API: webhook API will follow to be able to forward events & data to backends |
You want to use websocket to send backend Event, right ? (let me know if I'm wrong) I'm not sure why you prefer I read you post and you say :
So I probably misunderstood something 🙂 |
What I mean is Websocket or SSE 😄 |
In demo, we don't need it. By the past, I hesitated to migrate from SSE to websocket and finally I decide that SSE was enough.
In demo, we are using SSE with vue3. |
I committed my prototype start there: https://github.com/clunkymachines/lwm2m-manager |
Question
Following the popular topic of reusing the Leshan Demo in a production environment
#1614
#1598
#1260
#926
this is even addressed in the first lines of the F.A.Q.: https://github.com/eclipse-leshan/leshan/wiki/F.A.Q.#is-there-a-rest-api-for-leshan-server-demo-
Rationales
I have been recently contacted by a company that wants to make this a reality: a simple open-source lwm2m server usable in production.
First, after implementing something like that in closed source somewhat four times in the past (for different companies/customers), I find the idea of not re-coding the same thing every time appealing.
Also, there is a problem for people with smaller fleets or with on-premise requirements, because the solutions on the market are quickly quite expensive if you have only a hundred/thousand devices. This is preventing the adoption of LWM2M: it makes using the protocol difficult at a small scale and limits maker-style innovations.
In general, the feedback I got is that LWM2M is complicated, the spec is not light for sure, but building a solution is quite complicated. I think on the embedded device side we start to have more mature open-source solutions, some vendors selling ready-to-use LWM2M sensors, but for the server side, we just have Leshan library or proprietary SaaS solutions.
Ideation
I would limit the effort to an LWM2M device frontend being able to manage device connections and expose a stable API.
The server should be able to be started quickly and be self-contained (no external dependency like installing a database, or message broker) but still be capable of handling 100k of connection with H.A. with the right setup/configuration.
The demo UI would use the API of the server and we should limit it to what the demo is doing: a simple exploration/debugging of the LWM2M protocol. Writting a full-blown device management UI would be a different project than Leshan but the demo UI would give a starting point (and is actually what people are doing by either reusing the code or the UX)
Pro/Cons
In a nutshell, the main advantage would be:
Of course, there are some drawbacks:
If the idea gathers some interest, I would probably proceed by prototyping and designing the core interface of such a server
The text was updated successfully, but these errors were encountered: