如何解决是否可以在不同容器中的2个Linux应用之间共享DPDK实例?
恐怕我不是DPDK专家,对容器的了解甚至更少。抱歉,这是一个愚蠢的问题;只是在花大量时间学习足够的知识以找出不可能的事情之前,先尝试找出是否有可能。
我们有2个彼此通信的应用程序。在我们移到容器之前,他们使用单个DPDK实例进行通信-一个应用程序是主要的DPDK进程,该进程创建了具有明确定义的名称的DPDK结构,另一个应用程序是次要的DPDK进程,它搜索并(希望)找到了那些命名的结构。消息通过共享结构从一个应用程序传递到另一个应用程序。
但是,如果应用程序在不同的容器中运行,我们仍然可以这样做吗?
解决方法
在同一容器rte_mp_*
中,API将在主容器和辅助容器之间工作。但是如果是2个不同的容器,则通过rte_mp_*
的Primary-Secondaries将无法工作,因为它们是在不同命名空间下的独立过程。
您的下一个最佳选择就是创建消息并使用Linux套接字推送到其他容器。通常,rte_mp_*
仅在同一容器下的主要和次要之间工作。
让主进程和辅助进程在两个单独的容器中工作的一种方法是在使用 Kubernetes 的情况下在同一个 pod 中运行两个容器
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。