DevConf.CZ

Michael Engel

I am a Senior Software Engineer at Red Hat working on features for Red Hats In-Vehicle Operating System


Sessions

06-13
16:15
35min
Eclipse BlueChi - A deterministic multi-node service controller for automotive and edge
Michael Engel

Eclipse BlueChi (https://github.com/eclipse-bluechi/bluechi) - formerly known as Hirte - is a multi-node systemd service controller facilitating deterministic state transitions for systems with limited resources. Its significant focus is on the ability to run in the highly regulated, safety-critical automotive industry.

This talk shows how Eclipse BlueChi extends systemd for managing and monitoring services across multiple nodes by explaining its overall architecture and the exposed API. In addition, it illustrates Eclipse BlueChi’s approach to resolving inter-node dependencies between services as well as basic performance metrics like CPU and Memory utilization. This presentation also dives into the seamless integration with Podman, forming a resource-friendly and deterministic container orchestration tool. This is considered a key enabler for the so-called Software Defined Vehicle (SDV).

Edge, Mobile, and Automotive
E112 (capacity 156)
06-14
12:30
80min
Managing services in multi-node edge environments with Eclipse BlueChi
Mark Kemel, Michael Engel

Eclipse BlueChi (formerly known as Hirte) is a systemd service controller intended for multi-node environments with a static number of nodes and with a focus on highly regulated ecosystems such as Automotive and Edge.

In this workshop we will explore how BlueChi can be used to manage systemd services in a deterministic way with multiple computing units.

We will set up a virtualized multi-node environment. Then we will use BlueChi's command line tool to retrieve information from the different systems, start and stop systemd services as well as monitoring their status. After getting acquainted with the provided tooling and involved components, we will capitalize on BlueChi's seamless integration with Podman containers (using quadlet). We will deploy a containerized application, run it under systemd and manage it via BlueChi. But what if this application needs another service to be running elsewhere? To resolve such inter-node dependencies we will rely on BlueChi's proxy services feature.

If you are planning to attend the workshop, it would be great to have some preparations made in advance:

  • We made sure that the setup works on Fedora 40 and Ubuntu 22.04.4 LTS. If you are running one of these - great! Otherwise, especially if you are on Mac or Windows - having a VM with Fedora 40 pre-installed will make sure everything works as expected.

  • Install podman https://podman.io/docs/installation

  • Pull the bluechi-workshop container image:
    sudo podman pull quay.io/bluechi/bluechi-workshop

Edge, Mobile, and Automotive
A218 | Workshops (capacity 20)