Comment la conteneurisation aide VW à développer un logiciel automobile
5 min readUne voiture moderne est une salle de serveurs mobile, comprenant de nombreux ordinateurs qui gèrent et surveillent les paramètres critiques pour améliorer la sécurité, l’efficacité énergétique et réduire les pannes de composants. Il existe également des ordinateurs et des contrôleurs intégrés pour la climatisation et la mécanique tels que les rétroviseurs rabattables motorisés et le système de divertissement.
Le logiciel développé pour ces ordinateurs doit non seulement être testé individuellement, mais des tests d’intégration sont également nécessaires pour s’assurer que tout changement ou modification n’affecte pas négativement les autres systèmes fonctionnant dans la voiture. Il s’agit d’un environnement de développement logiciel complexe qui doit également inclure des tests sur route et des jumeaux numériques.
En 2018, la société mondiale de conseil en gestion McKinsey a noté que le nombre de lignes de logiciels contenus dans les voitures modernes était passé d’environ 10 millions en 2010 par un facteur de 15 en 2016 à environ 150 millions de lignes.
“La complexité boule de neige provoque d’importants problèmes de qualité liés aux logiciels, comme en témoignent les millions de rappels récents de véhicules”, ont déclaré les auteurs de l’article. Repenser l’architecture logicielle et électronique de la voiture L’article de McKinsey a mis en garde.
Étant donné qu’il est peu probable que la tendance à pousser plus de logiciels dans les automobiles recule, Volkswagen (VW) a travaillé avec des consultants Red Hat pour construire sa future plate-forme d’intégration logicielle. Cette plate-forme, basée sur la plate-forme d’orchestration de conteneurs OpenShift de Red Hat, a été conçue pour permettre à VW de développer et de tester de nouveaux logiciels pour les unités de contrôle électronique (ECU) qui fournissent à la voiture son cerveau de traitement.
“Les conteneurs peuvent jouer un rôle important dans le développement de logiciels automobiles », explique Marcus Greul, chef de produit propriétaire de Cariad SE, une entreprise de technologie automobile qui fait partie du groupe Volkswagen.
« Dans notre cas, nous utilisons des conteneurs pour créer des environnements de test évolutifs dans une infrastructure mixte (composants virtuels et réels). Peut-être qu’à l’avenir, nous aurons la chance d’utiliser ces concepts dans un véhicule. La possibilité d’utiliser des conteneurs pour des fonctions liées à la sécurité est plutôt faible.
Le département de développement électrique, qui fait partie du département de recherche et développement (R&D) des voitures particulières du groupe VW, teste les composants automobiles tels que les rétroviseurs électriques et les calculateurs. Un véhicule peut avoir jusqu’à 60 ECU, dont chacun doit subir des tests approfondis.
L’ECU est effectivement un ordinateur qui exécute des applications. Lors de la mise en place d’un banc d’essai, les calculateurs doivent être intégrés aux composants de modèle et de simulation. Chaque fois qu’un est mis à jour ou ajouté, tous les tests associés doivent être répétés et l’intégration devient plus complexe.
Les retards dus à un manque de provisionnement à la demande pour les environnements de test d’intégration étaient un autre facteur qui a poussé VW à mettre à jour ses tests de logiciels.
Décrivant l’ambition de l’entreprise pour la nouvelle plate-forme, Greul déclare : « Nous voulons complètement standardiser et automatiser le cycle de publication des composants logiciels dans nos véhicules – y compris le développement, les tests et le déploiement – en créant un environnement partagé pour l’utilisation de composants virtuels et physiques. “
En utilisant Initiative de conteneurs ouverts modèles pour suivre les meilleures pratiques pour les formats de conteneurs et les temps d’exécution, combinés à l’infrastructure standardisée fournie par Red Hat OpenShift, Greul dit qu’il est désormais possible de lier dynamiquement les modèles de conteneurs aux calculateurs, ce qui accélère la livraison du banc d’essai de quelques jours à quelques heures.
La société exécute des simulations numériques d’ECU dans des conteneurs à l’aide de Red Hat OpenShift, une plate-forme de conteneurs d’entreprise Kubernetes. « Il existe différents types de ‘calculateurs virtuels’ disponibles. Vous pouvez exécuter toute la pile logicielle sur un calculateur émulé, vous pouvez exécuter des composants logiciels ou des modules uniques sur un environnement d’exécution suffisant ou simplement un modèle qui se comporte comme le calculateur », ajoute Greul.
Il dit que l’entreprise prévoit de relier les résultats de ses tests d’intégration avec les résultats des tests qu’elle obtient des tests sur route. « Pour obtenir les meilleures performances et la meilleure vitesse pendant les cycles de test, nous testons les deux en parallèle », ajoute-t-il.
Il dit que Volkswagen est sur le point d’utiliser jumeaux numériques en cours d’exécution sur OpenShift sur chacune de ses plateformes véhicules, chaque modèle et chaque ligne d’équipement, qui ne sont actuellement pas gérés par OpenShift.
Discutant de la propriété à vie des voitures et de la façon dont les constructeurs automobiles tels que Volkswagen devront continuer à soutenir les propriétaires de leurs véhicules pendant de nombreuses années sur le marché de l’occasion, Greul a déclaré : « Nous nous dirigeons strictement vers des mises à jour en direct. , les tests deviennent ainsi plus pertinents pour fournir des mises à jour rapides aux clients pendant la durée de vie du véhicule.
Volkswagen utilise des serveurs Dell pour héberger sa plate-forme de conteneurs OpenShift sur site. Greul dit que les serveurs doivent à la fois être certifiés pour exécuter OpenShift et fournir les spécifications matérielles en termes de cœurs de processeur, de mémoire, de stockage et de GPU pour prendre en charge les charges de travail que Volkswagen doit exécuter.
Pour prendre en charge le matériel spécialisé, tel que les ordinateurs de véhicule ECU sur un cluster OpenShift, Greul dit que le matériel doit être décrit comme une ressource Kubernetes (également connue sous le nom de définition de ressource personnalisée, ou CRD).
La nouvelle architecture informatique comprend plusieurs autres technologies Red Hat. Red Hat Quay est utilisé comme registre de conteneurs privé pour OpenShift, qui stocke, crée et déploie des images de conteneurs. Red Hat Runtimes fournit les outils dont l’entreprise a besoin pour développer et maintenir des applications cloud natives. La messagerie est gérée par Red Hat AMQ et Red Hat Virtualization fournit une plate-forme définie par logiciel pour exécuter des charges de travail virtualisées sur Red Hat Enterprise Linux.