我有一个应用程序,其中有几个任务使用发布者/订阅者进行通信。主要问题是发布/订阅发现通过将信息多播到其他任务来工作,但是当我在 k8s 中部署这些任务时,pod 无法在它们之间进行多播,因为它们已分配了私有 IP。
我读过有关使用服务的文章,但它并没有说服我,因为我会失去点对点结构。
有没有办法让来自同一集群的 2 个 pod 使用多播互相看到?有关更多信息,我使用的 pub/sub 是 Zenoh。
答案1
感谢 SYN 评论,我找到了一种方法。如果您使用 microK8s 发行版,则非常简单,此链接包含一个很好的指南:https://microk8s.io/docs/addon-multus。
通过安装 flannel 然后安装 multus 也应该可以在 K3s 上实现,但我还没有尝试过所以我不能保证。