Skip to content

BlueChi

BlueChi is a software layer that runs on top of systemd. BlueChi extends the functionality of systemd for multinode, mixed-criticality environments.

Mixed criticality is the capacity of a vehicle to run different workloads that demand different levels of compliance with functional safety. A mixed-criticality system is a system containing hardware or software that can execute different applications of different criticality, such as safety-critical and non-safety critical. A mixed-criticality system must determine which applications are prioritized when they share resources.

As a systems and services manager, systemd defines application profiles and manages transitions between states, but systemd only runs on a single, local node, which is an isolated computing unit on which you manage systemd services. A node can be a physical host, a VM, container, or a partition.

In a multinode environment, BlueChi integrates with systemd to enable communication between applications in the root partition and in the QM partition to allow services to make transitions between states, to monitor and report on status changes for services, and to define and resolve cross-node dependencies.

For more information about isolation and freedom from interference, see Mixed criticality.

The following components comprise BlueChi:

  • bluechi-controller: A service that runs on the primary node and controls all connected nodes. The service contains one controller, which sends commands to the agents.
  • bluechi-agent: A service that runs on each connected node. Each agent interacts with systemd on its node, and each agent connects to the controller to enable communication across the system.
  • bluechictl: The BlueChi command line interface. Use bluechictl to manually interact with the controller and test, debug, and manage services running on agents connected to the controller.

    Note

    Add bluechictl to AutoSD images for testing purposes only. Do not include bluechictl in AutoSD images meant for production.

  • bluechi-selinux: A custom SELinux policy.


© Red Hat