Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [kanto-dev] Software update
  • From: Dirk Van Haerenborgh <dirk.vanhaerenborgh@xxxxxxxx>
  • Date: Wed, 15 Jun 2022 11:55:01 +0000
  • Accept-language: en-BE, en-US
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=aloxy.io; dmarc=pass action=none header.from=aloxy.io; dkim=pass header.d=aloxy.io; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=5F4JtScU7KnKdmaNPZu7c3bwTH9RVHe6ELLq4vSxbi8=; b=kHnkFv1HOur2Z9QDzHzI9fg9fQFX0mKJzrI58bbryhRP54EF5iJLvgqNUbtzM1tf59TQBQiARGUwxNqGlGY+ZkMVj0TwLGD3pV6Wbs93Ew7IcH8tJzkY9JgUXsq/ITy2kwnD7ITUm5qoMG9fq27Ky+FJP4wL9upJd1zpvj0jEUFZ9zMRIQgOXxCqbtZwsUuvxgV3F31B9zxKLyJ+Y3t4DSRVE0UOCfXchQ66rLWufZz2sPVEjB9cFSap+da3U7D/U3LyfJE4zxQcelmgSb2jBMRPu45fHsntyxZybZLS3lX1xr/4Xuvk3CByHrBuGeUtxRLhKXnlLnICU3E+FCPdlQ==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LllsaLxu1MChn3ExjGcflGkNZcbF/wESXLq6bQlikGdtgqGP+X2cUoKmPxZbRegKIQdhUy1e68lcJttGqk0TmMsWsQ/jkUiEscGLfB+Zqh6qbxlIELb0H4jOS1nxJ7zkwH5FYNS44Oa+NBEixDHuVTzHuWCsqsUa1FiGYEsXVH5OPCpggDnuvsTvhYHHfwQgvJ+DHPghg08+DeiXW1VLI6CwvRFN7HEyUjIN1SWJMOPr5wiVdfuEsGfLdne5zuUgyTlylexn8ISVaWBk3jCJcJ5gHKQo4/iuwdO5zGwYWjE+9jczu7qSnlmJJribjJhQrTrDoqzWF5xMNDz8Ss3gPQ==
  • Delivered-to: kanto-dev@xxxxxxxxxxx
  • List-archive: <https://www.eclipse.org/mailman/private/kanto-dev/>
  • List-help: <mailto:kanto-dev-request@eclipse.org?subject=help>
  • List-subscribe: <https://www.eclipse.org/mailman/listinfo/kanto-dev>, <mailto:kanto-dev-request@eclipse.org?subject=subscribe>
  • List-unsubscribe: <https://www.eclipse.org/mailman/options/kanto-dev>, <mailto:kanto-dev-request@eclipse.org?subject=unsubscribe>
  • Msip_labels:
  • Thread-index: AQHYemPOiYS8YWzvhEel5EkeAOxgkq1FuXPLgAFGVNGACADSkIABZNZs
  • Thread-topic: Software update

Hi Tina,

Thanks for the reply. We had figured out most of this by reading through the Kanto source code.
Since we now have a better picture of container management itself, we're experimenting with the next steps.

Say we have a container that receives messages from devices in the field (through a device mapped to the container).
Since Kanto is running its own local broker, we though it'd be pretty nice if we could piggy-back on it. As such, the container does not need to setup a connection to Hono itself.
How is this envisioned for Kanto?

Extending from this: it'd be extra cool if our container could receive commands itself from the local broker (coming from the cloud as well).
Or should we look at Kanto only as a container/edge device manager where our containers should not know of its existence at all?

Kind regards,
-Dirk



Aloxy

Dirk Van Haerenborgh Software engineer

Aloxy The Beacon, Sint-Pietersvliet 7 2000 Antwerp www.aloxy.io



From: kanto-dev <kanto-dev-bounces@xxxxxxxxxxx> on behalf of Gramatova Dr. Konstantina (IOB/PAD-PM1) <Konstantina.Gramatova@xxxxxxxx>
Sent: Tuesday, 14 June 2022 17:00
To: kanto developer discussions <kanto-dev@xxxxxxxxxxx>
Subject: Re: [kanto-dev] Software update
 
Hey Dirk!

We are eagerly preparing it as well : ))
I apologize it took a while to get back to you but I'll try to give some guidance while the docs are being prepared:

The payloads Kanto uses are a combination of Eclipse Ditto and Eclipse Vorto and how these two are combined you can read about here. For the actual MQTT communication - the Eclipse Hono MQTT definitions are used (see here).

Having that said,  for container management we have a Ditto feature registered per running container using the following Vorto model - Container v1.4.0.

To update a running container, you will have to:
  • use the update operation from the model
  • map it to the proper Ditto Live messages format to initiate a command
  • send it to the device via the commands Hono topic.

A ready-to-fill Ditto payload template is also available for you to check out in our getting started Python script (hono_commands.py) - you can use it as a base and substitute the templated pieces in it according to the guide so far.

Such an example could be (using the device info from the getting started guide):
{
  "topic": "demo/device:edge:containers/things/live/messages/update",
  "headers": {
    "content-type": "application/json",
    "correlation-id": "correlation-id-of-choice",
    "response-required": true
  },
  "path": "/features/Container:bb796f5c-c292-4289-b1bc-a3236cc88722/inbox/messages/update",
  "value": {
    "resources": {
      "memory": "3M"
    }
  }
}

​Publishing this payload on the proper commands Hono topic will update the resources used by a running container with an ID
bb796f5c-c292-4289-b1bc-a3236cc88722
on the edge device.


I hope this enlightens the picture a little bit further - ping back if more help is needed!

Have a great day!
Tina

Mit freundlichen Grüßen / Best regards

Dr. Konstantina Gramatova

Bosch IoT Gateway Software 3 (IOC/PAP-GW3)

Bosch.IO GmbH | Ziegelei 7 | 88090 Immenstaad | GERMANY |
www.bosch.io
Tel. +359 2 9055876 | Fax +359 2 95326-17 |
Threema / Threema Work: SKDTDZCH | Konstantina.Gramatova@xxxxxxxx

Registered Office: Berlin, Registration Court: Amtsgericht Charlottenburg; HRB 148411 B

Chairman of the Supervisory Board: Dr.-Ing. Thorsten Lücke; Managing Directors: Dr. Stefan Ferber, Dr. Aleksandar Mitrovic, Yvonne Reckling


From: kanto-dev <kanto-dev-bounces@xxxxxxxxxxx> on behalf of Dirk Van Haerenborgh <dirk.vanhaerenborgh@xxxxxxxx>
Sent: Thursday, June 9, 2022 3:16 PM
To: kanto developer discussions <kanto-dev@xxxxxxxxxxx>
Subject: Re: [kanto-dev] Software update
 
Hi Tina,

We're then eagerly awaiting the docs 🙂. Since we're still pretty much experimenting with this, even incomplete docs would be an immense help.
We haven't gotten much more to work than the getting started docs.

Would you be able to shed some light on the payload needed to update a running container?

Kind regards,
-Dirk



Aloxy

Dirk Van Haerenborgh Software engineer

Aloxy The Beacon, Sint-Pietersvliet 7 2000 Antwerp www.aloxy.io



From: kanto-dev <kanto-dev-bounces@xxxxxxxxxxx> on behalf of Gramatova Dr. Konstantina (IOB/PAD-PM1) <Konstantina.Gramatova@xxxxxxxx>
Sent: Wednesday, 8 June 2022 19:08
To: kanto-dev@xxxxxxxxxxx <kanto-dev@xxxxxxxxxxx>
Subject: Re: [kanto-dev] Software update
 
Hi Dirk!

Really glad to see that Kanto is an interesting project for you and your team!

Regarding the docs - we are in the process of making them available so soon we'll be able to refer you to a more in-detail description on how the concept works.

Your observation is correct - we are using a client-side implementation to handle the hawkBit logic - in specific via the SoftwareUpdatable v2 model and flows it implies.

The communication, however, is achieved via a combination of Ditto & Hono and the model specifies the semantics of the payloads being transferred on top of it. Currently, we support only an MQTT endpoint for such a remote communication, but the CDN where the managed artifacts referred per installation/update could be downloaded from may be reachable via HTTP/HTTPS.


I hope this info is helpful!
Please, drop a message back if further clarifications could be helpful as well!


Have a great day!
Tina



Mit freundlichen Grüßen / Best regards

Dr. Konstantina Gramatova

Bosch IoT Gateway Software 3 (IOC/PAP-GW3)

Bosch.IO GmbH | Ziegelei 7 | 88090 Immenstaad | GERMANY |
www.bosch.io
Tel. +359 2 9055876 | Fax +359 2 95326-17 |
Threema / Threema Work: SKDTDZCH | Konstantina.Gramatova@xxxxxxxx

Registered Office: Berlin, Registration Court: Amtsgericht Charlottenburg; HRB 148411 B

Chairman of the Supervisory Board: Dr.-Ing. Thorsten Lücke; Managing Directors: Dr. Stefan Ferber, Dr. Aleksandar Mitrovic, Yvonne Reckling


From: kanto-dev <kanto-dev-bounces@xxxxxxxxxxx> on behalf of Dirk Van Haerenborgh <dirk.vanhaerenborgh@xxxxxxxx>
Sent: Tuesday, June 7, 2022 2:46 PM
To: kanto-dev@xxxxxxxxxxx <kanto-dev@xxxxxxxxxxx>
Subject: [kanto-dev] Software update
 
Hi all,

We're currently experimenting with Kanto and we read that it also supports self-updating.
Is there any documentation for that? I've read the source and I've seen that the update process itself uses the hawkbit client libraries. Do we need to have an instance of hawkbit running, or will an HTTP endpoint suffice?

Kind regards,
-Dirk Van Haerenborgh



Aloxy

Dirk Van Haerenborgh Software engineer

Aloxy The Beacon, Sint-Pietersvliet 7 2000 Antwerp www.aloxy.io



Back to the top