如何以编程方式在容器内运行多个模拟?

问题描述

我正在开发一个网站,该网站根据用户提交的脚本运行模拟。我尝试遵循一些Online Judge架构,但就我而言,我需要像模拟一样实时发送用户输入并接收输出

我尝试了Kubernetes Jobs,但与容器进行通信似乎并不容易,特别是如果我需要使用我正在使用的语言的Kubernetes客户端时。

所以,我的问题是:在这种情况下,以编程方式协调具有交互式I / O的多个容器的最佳方法是什么?

Diagram

*糟糕:我现在还不担心安全性。

解决方法

请看一下spark运算符的设计:

https://github.com/GoogleCloudPlatform/spark-on-k8s-operator

与您定位的目标设计有些相似。同样,Argo Workflow是另一个示例:

https://github.com/argoproj/argo