kubernetes - 与 Pod 自动缩放的 Pubsub 数据关联
问题描述
我正在运行一个启用 pod 自动缩放的谷歌云 Kubernetes 项目。Pod 使用来自 pubsub 订阅的消息(流数据)。多个用户将时间戳数据包发布到上述 pubsub 主题。但是所有发布的数据包都具有相同的结构。在实际场景中,所有可用的 Pod 无限制地消费所有用户的数据。用户未绑定到特定的 pod。
我想要的是在这里实现亲和力(特定用户的数据应由特定的 pod 处理。请参阅 图像以获得进一步说明)
任何人都可以就此处实现数据亲和力提出建议/评论。
解决方案
基本上,您要做的是随着时间的推移从用户那里收集 Pub/Sub 主题,然后将这些主题发送到 pod。
我明白当你说的时候data affinity
,你的意思是session affinity
。
您可以配置Session affinity
负载均衡器。您说过流量类型是 Cloud Pub/Sub。这意味着您无法设置 HTTP 负载均衡器。它必须是 HTTPS 流量。Cloud Pub/sub 流量使用 HTTPS 流量。
附带说明一下,GKE 入口规则还不允许使用会话亲缘关系。
您可以使用GKE HTTPS Internal Load Balancer或外部GCP HTTPS Load Balancer。这会将流量引导到特定的 pod。
推荐阅读
- javascript - 如何在没有输入文件的情况下创建复制到剪贴板图标?
- javascript - 通过 if/else 语句使用 JavaScript 事件侦听器更改 CSS 属性
- apache-kafka - Quarkus 中的 Kafka 背压
- flutter - 在flutter中使用getX打开页面时自动调整页面的语言
- histogram - 使用 Prometheus 跟踪两个请求之间的时间
- python - 加入和分组 2 个数据帧
- wordpress - 为什么使用修改后的 $price 调用 woocommerce_variation_prices_price 过滤器时,将 sale_price 设置为等于 regular_price?
- node.js - Fastify 应用在 Cloud Run 上部署时返回 400
- excel - VBA删除工作表名称包含文本的所有工作表中的列
- javascript - 异步/等待后如何记录返回值?