kubernetes - Istio 会话亲和性与加权负载均衡器
问题描述
我正在尝试使用 Istio 加权负载平衡来实现会话粘性,但 Istio 忽略了会话配置。我所做的:
---
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: test-app-vs
namespace: demo
spec:
gateways:
- test-app-gw
hosts:
- "demo-app.test.cloud"
http:
- route:
- destination:
host: test-app.demo.svc.cluster.local
subset: v1
weight: 50
- destination:
host: test-app.demo.svc.cluster.local
subset: v2
weight: 50
---
apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
name: test-app-dr
namespace: demo
spec:
host: test-app.demo.svc.cluster.local
subsets:
- name: v1
labels:
version: v1
app: test-app
trafficPolicy:
loadBalancer:
consistentHash:
httpCookie:
name: x-canary-user
ttl: 0s
- name: v2
labels:
version: v2
app: test-app
trafficPolicy:
loadBalancer:
consistentHash:
httpCookie:
name: x-canary-user
ttl: 0s
我也尝试设置trafficPolicy
到该spec
部分,但得到了相同的结果。它设置了 cookie,我可以x-canary-user
在我的浏览器请求中看到没有负载平衡影响
解决方案
它可能还没有合并到master。https://github.com/istio/istio/pull/6742 我已向您提供了拉取请求的链接,该链接应该涵盖此内容,但测试失败。我们应该等待新版本。
推荐阅读
- javascript - 如何制作事件处理程序
- multithreading - 我可以从非 UI 线程安全地启用 TTimer 吗?
- r - 按顺序条件过滤,直到满足另一个条件
- templates - 模板 BST 的删除功能中的分段错误
- python - 获取 'package' 和 'endpackage' 可选字符串之外的结构名称列表
- android - Firebase 电话号码身份验证错误,电话号码不可读
- qt - 如何使qt中的窗口成为主要焦点
- azure-web-app-service - 请求的 Azure 应用服务指标聚合:为什么 Sum 和 Count 不同?
- azure - Terraform 状态与外部更改同步
- reactjs - 泛型函数的强类型 ReturnType