Kubernetes Istio服务网格和大型http请求uri
我正面临一个问题,它是由于糟糕的api设计而突然出现的。有一个很大的(我的意思是长度很大:11361)请求URI,其中包含很多参数,这些参数正被Profession代理sidecar阻止(或者可能路由错误),该sidecar会引发对等方的连接重置。该请求在同一K8s集群内的pod和服务之间完成 通过移除调用者吊舱中的特使侧车,即使目的地部署了特使侧车,api调用也能正常工作 这是当我尝试使用这个巨大的URI进行卷曲时显示的日志:Kubernetes Istio服务网格和大型http请求uri,kubernetes,istio,envoyproxy,Kubernetes,Istio,Envoyproxy,我正面临一个问题,它是由于糟糕的api设计而突然出现的。有一个很大的(我的意思是长度很大:11361)请求URI,其中包含很多参数,这些参数正被Profession代理sidecar阻止(或者可能路由错误),该sidecar会引发对等方的连接重置。该请求在同一K8s集群内的pod和服务之间完成 通过移除调用者吊舱中的特使侧车,即使目的地部署了特使侧车,api调用也能正常工作 这是当我尝试使用这个巨大的URI进行卷曲时显示的日志: “---”0 UF,URX-”-“0 1000-”-“-”-“10
“---”0 UF,URX-”-“0 1000-”-“-”-“10.10.146.112:80”出站| 80 | |默认-http-backend.default.svc.cluster.local
日志中显示的目标是回退内部服务
我曾尝试添加一个EnvoyFilter,以增加最大标头大小,但我认为这些规则适用于传入呼叫,而不适用于传出请求
Istio版本1.4.0和1.5.8都出现了这个问题
在开发团队进行重构时,有什么解决方法吗
非常感谢:)您可以添加您的虚拟服务和目的地规则吗?你能给我举个例子说明你的要求吗?那个服务,
defaulthttpbackend.default.svc.cluster.local
是否正常运行?是在请求后重新启动,还是他什么也没发生?您可以查看响应标志。关于最大头大小,这是正确的,引用自特使文档传入连接的最大请求头大小。您可以添加您的虚拟服务和目标规则吗?你能给我举个例子说明你的要求吗?那个服务,defaulthttpbackend.default.svc.cluster.local
是否正常运行?是在请求后重新启动,还是他什么也没发生?您可以查看响应标志。关于最大报头大小,这是正确的,引用自特使文档传入连接的最大请求报头大小
。