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