Kunden-News

Harald Ruckriegel, Global Automotive Industry Lead bei Red Hat (Red Hat)​
11. Okt 2023

Red Hat: Container im Fahrzeug – Worauf kommt es an?

Container sind in der gesamten IT-Branche zum De-facto-Standard geworden und stehen im Mittelpunkt der Vision des softwaredefinierten Fahrzeugs. Sie ermöglichen die Isolierung von Anwendungen, bieten mehr Flexibilität bei der Entwicklung und Bereitstellung und ermöglichen generell schnellere Innovationen. Beim Einsatz von Containern im Fahrzeug sind allerdings einige spezifische Anforderungen der Automobilbranche zu beachten, die Harald Ruckriegel, Global Automotive Industry Lead bei Red Hat, und Pierre-Yves Chibon, Principal Software Engineer Automotive bei Red Hat, beleuchten und mit Lösungsansätzen verbinden.

Die Entwicklung ist vorgezeichnet. Das softwaredefinierte Fahrzeug wird zunehmend Realität. Die Entkopplung der Software von der Hardware ermöglicht neben der Hardware-Unabhängigkeit eine Standardisierung und bietet Vorteile wie eine höhere Skalierbarkeit und Flexibilität, ein vereinfachtes Management und letztlich auch geringere Kosten.

Das softwaredefinierte Fahrzeug und die heutigen anspruchsvollen Anwendungsfälle wie fortschrittliche Fahrerassistenzsysteme bringen aber einige Herausforderungen mit sich. Zum einen betreffen sie die Entwicklung aktueller Fahrzeugplattformen. So bedeutet das Fehlen einer modernisierten und konsistenten Infrastruktur eine geringere Wiederverwendung von Designs über Fahrzeuglinien und Modelljahre hinweg sowie Systembeschränkungen, die zukünftige Software-Updates kostspielig und schwierig machen.

Zum anderen muss bei der Software-Nutzung im Fahrzeug ein wichtiger Punkt beachtet werden: die bestehenden Standards rund um die funktionale Sicherheit. Sie geht über die klassische qualitätsbezogene Hardware- und Softwarefrage „Erfüllt das Produkt die Erwartungen der User?“ hinaus bis hin zur Safety-relevanten Frage „Könnte dieses Produkt aufgrund eines Fehlverhaltens versagen und zu physischen Schäden für Menschen führen?“. Das bedeutet, dass nicht nur die Qualität, die Verfügbarkeit, die Zuverlässigkeit und die Sicherheit, sondern auch die Functional Safety zu den Schlüsselfaktoren bei der Entwicklung eines softwaredefinierten Fahrzeugs gehört.

Der Einsatz von Linux und Containern im Fahrzeug bringt somit einige Herausforderungen mit sich. Linux ist weit verbreitet und getestet, sodass das Qualitätsniveau hoch ist. Ein Safety-Nachweis für alle im gesamten System zu berücksichtigenden Risiken muss im Automotive-Segment aber erbracht werden. Diesen Weg hat Red Hat bereits 2021 mit der Konzeption eines für funktionale Sicherheit zertifizierbaren und speziell für den Automotive-Bereich ausgelegten Linux-Betriebssystems eingeschlagen.

Zu beachten ist dabei, dass nicht jede im Fahrzeug eingesetzte Software dieselben Safety-Anforderungen erfüllen muss. In der Regel gibt es eine Mischung von Safety-Stufen. Dies wird als „gemischte Kritikalität“ bezeichnet. Und an diesem Punkt kommen Container ins Spiel. Sie ermöglichen es Systemen, mehrere Arten von Workloads und Anwendungen auszuführen, unabhängig davon, ob sie Safety-zertifiziert sind oder nicht. Diese Flexibilität macht Containertechnologien zu einer Lösung für die gemischte Kritikalität.

Das Container-Konzept wird sehr häufig in verteilten Systemen verwendet, in denen viele lose gekoppelte und typischerweise geografisch verteilte Systeme in einem Cluster zusammengefasst sind. Für viele Anwendungsfälle sind verteilte Systeme, die nicht deterministisch sind, wegen der enormen Flexibilität und der dynamischen Eigenschaften eine Lösung. Die Software in einem Auto ist aber in keiner Weise verteilt. Die Hardware ist fest installiert, das heißt, sie ändert sich nicht, während das Auto in Betrieb ist.

Container, die im Fahrzeug verwendet werden, sollten somit unter anderem folgende Kriterien erfüllen:

  • Die Container sind idealerweise analog zu Containern konzipiert, die etwa in der Cloud laufen. Dies ist sowohl für die Developer Experience als auch für die einfache und kosteneffiziente Durchführung von Tests in der Cloud wichtig.
  • Die Container müssen im Hinblick auf die Ressourcennutzung effizient sein. Moderne Autos haben im Vergleich zu älteren Fahrzeugen leistungsfähige Rechner, aber es gibt immer noch einige Ressourcenbeschränkungen.
  • Unverzichtbar ist ein Container Management. Beispielsweise müssen die erforderlichen Container beim Starten des Fahrzeugs in der richtigen Reihenfolge gestartet werden, wobei auch die korrekte Funktionsweise der Container zu überwachen ist.
  • Es sollte ein hohes Maß an Determinismus für fest installierte Hardware bestehen.
  • Schließlich muss das Container- und Managementsystem den Sicherheitsnachweis erbringen können, dass ein funktional sicherer Code in Containern an Bord eines Fahrzeugs ausgeführt wird.

Welche konkreten Möglichkeiten bestehen nun für die Entwicklung, die Verwaltung und den Betrieb von Containern auf Linux-Systemen in einem Fahrzeug? Eine wichtige Funktion kann hier das Open-Source-Tool Podman als leistungsstarke Container-Laufzeit einnehmen.

Container-Orchestrierungsplattformen sind häufig für den Anwendungsfall im Fahrzeug nicht optimal geeignet, da sie auf verteilte Systeme ausgerichtet sind. Podman lässt sich allerdings gut mit systemd integrieren, dem regulären Service-Manager in Red Hat Enterprise Linux. systemd kann die Anforderungen, die in Bezug auf die Container-Verwaltung im Fahrzeug bestehen, besser abdecken, auch weil systemd als Service-Manager viel einfacher und deterministischer ist und Projekte wie BlueChi die Erweiterung von systemd für Multi-Node-Umgebungen ermöglichen.

Es ist unbestritten, dass Kubernetes das Tool der Wahl ist, wenn es um die Arbeit in der Cloud geht. Es wäre nun von Vorteil, wenn verfügbare Softwareanwendungen, Workflows und Konzepte, die für den Einsatz im Fahrzeug sinnvoll sind, integrierbar und wiederverwendbar wären. Ein Beispiel dafür liefert die Arbeit an Podman zur Unterstützung von Kubernetes-Anwendungsbeschreibungen in Verwendung mit systemd. Dies führt zu einer Kombination, bei der Kubernetes in der Cloud genutzt wird und die gleichen Kubernetes-Beschreibungen dann in einem Fahrzeug verwendet werden können, ohne den Overhead und die Komplexität von Kubernetes selbst. Dies wäre der erste Schritt, um das Beste aus beiden Welten zu vereinen: dem Automobilbereich und der Cloud.

Pressekontakt

PR-COM GmbH
Kathleen Hahn
Sendlinger-Tor-Platz 6
D-80336 München
Tel. 089-59997-763
kathleen.hahn@pr-com.de