Cloud Native Robotic Applications with GPU Sharing on Kubernetes
This work addresses practical educational problems for robotics students, but it is incremental as it builds on existing cloud-native and Kubernetes technologies.
The paper tackles the challenge of teaching robotic applications programming by integrating a Kubernetes cluster with heterogeneous robotic hardware, resulting in a seamless simulation-to-real experience for students, though it encountered issues with networking and GPU sharing for deep learning workloads.
In this paper we discuss our experience in teaching the Robotic Applications Programming course at ZHAW combining the use of a Kubernetes (k8s) cluster and real, heterogeneous, robotic hardware. We discuss the main advantages of our solutions in terms of seamless simulation-to-real experience for students and the main shortcomings we encountered with networking and sharing GPUs to support deep learning workloads. We describe the current and foreseen alternatives to avoid these drawbacks in future course editions and propose a more cloud-native approach to deploying multiple robotics applications on a k8s cluster.