How does containerisation help the automotive industry? What are the advantages if Kubernetes rides shotgun?

Majority of state-of-the-art cars can be described as mobile server rooms. These cars encompass a multitude of computers that serve various tasks like safety or fuel monitoring. Moreover, there are also computers and embedded controllers for climate control and other mechanics in our cars. One of the biggest challenges the automotive industry faces today is to keep up with cautious and continuous software release cycle.

The software developed for these computers not only needs to be tested individually, integration tests also need to make sure that any changes do not adversely affect other systems in the car. A car is a rather complex software development environment that needs to encompass both road tests and digital twins.

In 2018 McKinsey reported that the number of lines of software used in modern cars had grown from about 10 million in 2010 by a factorof 15 in 2016 to roughly 150 million lines.

Given the trend to further automate processes is unlikely to recede Volkswagen (VW) has started to work with Red Hat to build its future software integration platform. The platfom is based on the OpenShift container orchestration platform tailored to enable VW to develop and test new software for electronic control units (ECUs) that providethe car with its processing power.

”Containers may take an important role in automotive software development,” says Marcus Greul, chief product owner of Cariad SE, an automotive technology company which is part of the Volkswagen Group.

In our case, we use containers for building up scalable test environments in a mixed (virtual and real components) infrastructure. Maybe in the future, we will get the chance to use these concepts in a vehicle.”

A vehicle can have as many as 60 ECUs, each of which needs to go through extensive testing. The ECU is effectively a computer that runs applications. During the setup of a test bench, ECUs must be integrated with model and simulation components. Each time one ECU is updated or added, all related tests must be repeated and integration becomes more complex.

Volkswagen wants to speed up this process with its new development and integration platform. “We want to completely standardise and automate the release cycle of software components into our vehicles – including development, testing and deployment – by creating a shared environment for using both virtual and physical components.” Greul says.

The company runs digital simulations of ECUs in containers using Red Hat OpenShift, an enterprise Kubernetes container platform. “There are different kinds of ‘virtual ECUs’ available. You can run the whole software stack on an emulated ECU, you can run single software components or modules on a sufficient runtime environment or just a model that behaves like the ECU,” Greul adds.

He says that the company plans to connect the results of its integration tests with test results it gets from road tests. “For getting best performance and speed during test cycles, we are testing both in parallel,” he adds.

He says that Volkswagen is about to use digital twins running on OpenShift on each of its vehicle platforms, each model and each equipment line, which are currently not managed by OpenShift.

Discussing the lifetime ownership of cars, and how automotive manufacturers such as Volkswagen will need to continue providing support for owners of their vehicles for many years in the second-hand market, Greul said: “We are strictly heading for over-the-air updates, thus testing gets more relevant for providing quick updates for customers during vehicle lifetimes.”

Kubernetes also provides developers with the ability to effectively use resources in ECUs to develop cloud-native applications for the automotive industry. Kubernetes helps create a centralized cloud infrastructure that enables developers to upload and update applications for many cars in one go.Through major cloud services providers, Kubernetes is also deployed as a managed service.

Electric and connected car giant Tesla also uses Kubernetes as their central orchestration platform. Tesla runs most of its microservices on Kubernetes because it helps in handling coarse-grained failures in scaling effectively. Kubernetes provides the flexibility and the ability to use lower-level development tools in its ecosystem. One main reason Tesla choose Kubernetes as a platform to build its world-class electric-powered connected cars applications on.