kubernetes - 如何负载平衡在 2 个 Pod 上运行的有状态应用程序
问题描述
我想对在 2 个 pod 上运行的 2 个有状态应用程序进行负载平衡。此应用程序不能有 2 个副本,因为它是有状态的。
我尝试为两个 pod 提供相同的服务名称,但看起来 Kubernetes 感到困惑并且没有提供任何服务。
我正在使用带有 metallb 作为负载均衡器的本地 Kubernetes 集群。
目前,这些 Pod 通过公共 IP 公开,服务 TYPE 作为负载均衡器,并在两个 Pod 中添加了 A 记录。但它不能对 DNS 进行健康检查。
我只想拥有 Nginx pod 并对它做 mod-proxy。除了这个还有什么更好的解决方案吗?
解决方案
服务上的选择器可以是任何东西,并且可以匹配来自多个状态集(或部署)的 pod。因此,在您的 pod 上制作一个标签,并在新服务的选择器中使用它来定位两者。
推荐阅读
- sql - 如何 PIVOT 查询中提到的选择结果
- git - git 不会在没有明确原因的情况下推送任何内容
- google-apps-script - 我可以在谷歌电子表格上的谷歌脚本上执行 getCursor() 吗?
- javascript - 如何从 JavaScript 中的表情符号中获取真正的字符代码?
- javascript - 如何获取地理位置数据并将其从浏览器发送到快递服务器
- android-studio - 向元素添加拖放功能
- java - Double.toString 总是产生与双文字完全相同的结果吗?
- python - 如何从pygame中的if语句中传输文本?
- r - 在 R 中将值转换为日期
- reactjs - React-Table:行选择 - 无法选择多行