0

我的系统由 UDP 客户端组成,该客户端向 Kubernetes 部署生成的服务器发送 UDP ping 消息。该服务器由 metallb 负载平衡器服务后面的 2 个副本组成。

实际的消息路由如下:

  • 其中一个 pod(比如 POD1)接收到消息
  • POD1 将它(使用源 ip 和端口)存储在缓存中
  • POD1 进入空闲状态
  • 副本集的另一个 pod(POD2)获取缓存的消息和源地址
  • POD2 回复
  • POD2 收到端口不可达 ICMP 错误。

我认为,由于我的 UDP 响应源 IP 与原始请求的目标 IP 不同,因此服务无法映射最终目标 IP。

我觉得我缺少解决我问题的注释。metallb 负责端口映射吗?我是否被迫改用 UDP 代理服务器?如果是这样,您可以分享一个已经实施的解决方案吗?

4

0 回答 0