Table of Contents
Fetching ...

Application Management in C-ITS: Orchestrating Demand-Driven Deployments and Reconfigurations

Lukas Zanger, Bastian Lampe, Lennart Reiher, Lutz Eckstein

TL;DR

The paper tackles the challenge of orchestrating complex, demand-driven applications in cooperative intelligent transport systems (C-ITS) by extending Kubernetes with a domain-specific management framework built on RobotKube and ROS 2. It introduces a reconciliation chain comprising an event detector, an application manager, and custom Kubernetes operators to transform cross-entity demands into declarative CRs and aligned application states, enabling on-demand deployment, reconfiguration, scaling, and updates of multi-service C-ITS applications. Through a collective environment perception use case, the authors demonstrate the framework’s capabilities: dynamic service provisioning across vehicles, roadside units, and edge/cloud nodes; environment-specific runtime reconfiguration; and scalability to distributed computing. The work also provides open-source code for the prototypical framework and the demonstration setup to support reproducibility and extension. Overall, the approach offers a practical path toward resource-efficient, demand-responsive orchestration in C-ITS environments by tightly integrating Kubernetes, ROS 2, and a structured reconciliation process.

Abstract

Vehicles are becoming increasingly automated and interconnected, enabling the formation of cooperative intelligent transport systems (C-ITS) and the use of offboard services. As a result, cloud-native techniques, such as microservices and container orchestration, play an increasingly important role in their operation. However, orchestrating applications in a large-scale C-ITS poses unique challenges due to the dynamic nature of the environment and the need for efficient resource utilization. In this paper, we present a demand-driven application management approach that leverages cloud-native techniques - specifically Kubernetes - to address these challenges. Taking into account the demands originating from different entities within the C-ITS, the approach enables the automation of processes, such as deployment, reconfiguration, update, upgrade, and scaling of microservices. Executing these processes on demand can, for example, reduce computing resource consumption and network traffic. A demand may include a request for provisioning an external supporting service, such as a collective environment model. The approach handles changing and new demands by dynamically reconciling them through our proposed application management framework built on Kubernetes and the Robot Operating System (ROS 2). We demonstrate the operation of our framework in the C-ITS use case of collective environment perception and make the source code of the prototypical framework publicly available at https://github.com/ika-rwth-aachen/application_manager.

Application Management in C-ITS: Orchestrating Demand-Driven Deployments and Reconfigurations

TL;DR

The paper tackles the challenge of orchestrating complex, demand-driven applications in cooperative intelligent transport systems (C-ITS) by extending Kubernetes with a domain-specific management framework built on RobotKube and ROS 2. It introduces a reconciliation chain comprising an event detector, an application manager, and custom Kubernetes operators to transform cross-entity demands into declarative CRs and aligned application states, enabling on-demand deployment, reconfiguration, scaling, and updates of multi-service C-ITS applications. Through a collective environment perception use case, the authors demonstrate the framework’s capabilities: dynamic service provisioning across vehicles, roadside units, and edge/cloud nodes; environment-specific runtime reconfiguration; and scalability to distributed computing. The work also provides open-source code for the prototypical framework and the demonstration setup to support reproducibility and extension. Overall, the approach offers a practical path toward resource-efficient, demand-responsive orchestration in C-ITS environments by tightly integrating Kubernetes, ROS 2, and a structured reconciliation process.

Abstract

Vehicles are becoming increasingly automated and interconnected, enabling the formation of cooperative intelligent transport systems (C-ITS) and the use of offboard services. As a result, cloud-native techniques, such as microservices and container orchestration, play an increasingly important role in their operation. However, orchestrating applications in a large-scale C-ITS poses unique challenges due to the dynamic nature of the environment and the need for efficient resource utilization. In this paper, we present a demand-driven application management approach that leverages cloud-native techniques - specifically Kubernetes - to address these challenges. Taking into account the demands originating from different entities within the C-ITS, the approach enables the automation of processes, such as deployment, reconfiguration, update, upgrade, and scaling of microservices. Executing these processes on demand can, for example, reduce computing resource consumption and network traffic. A demand may include a request for provisioning an external supporting service, such as a collective environment model. The approach handles changing and new demands by dynamically reconciling them through our proposed application management framework built on Kubernetes and the Robot Operating System (ROS 2). We demonstrate the operation of our framework in the C-ITS use case of collective environment perception and make the source code of the prototypical framework publicly available at https://github.com/ika-rwth-aachen/application_manager.

Paper Structure

This paper contains 10 sections, 2 figures, 2 tables.

Figures (2)

  • Figure 1: Reconciliation chain: An event detector reiherevent detects events (patterns in data) according to user-defined analysis rules and sends a deployment request containing a description of the current demand from the C-ITS. The application manager interprets the request, adds further application-specific configuration, and deploys Kubernetes custom resources (CRs) encoding the current demand on the application via the Kubernetes API. The custom operators process the declared demand encoded in the CRs, consult their internal bookkeeping, and formulate a desired state of the application. By deploying, reconfiguring, or shutting down the application, action is taken to align the current state with the desired state.
  • Figure 2: Experimental setup: $V_0$,…, $V_3$ send ego data (orange) to $C$ via MQTT. An event detector analyzes the data and sends deployment requests (blue) to the application manager which triggers the Kubernetes API server. When vehicles approach the intersection, object detection and object fusion services are deployed on $E$. Point clouds (red dashed) and ego data (orange dashed) are transmitted from $S$ and $V_0$,…, $V_3$ to $E$ on demand. Running on $E$, the object detection services receive point clouds and publish object lists (purple dashed). The object fusion service fuses object lists and ego data into one comprehensive object list which may be provided to the vehicles or other requesting C-ITS entities (not considered in our experiment).