请求路径上扩展 Istio 的方法与实践
1. 调用目录服务及速率限制
当 Pod 成功启动后,可按以下示例调用目录服务:
kubectl exec -it deploy/sleep -c sleep -- \
curl http:/./catalog/items
此命令大约每分钟只能运行一次,这与无 x-loyalty 标头的请求指定的速率限制一致。若在请求中添加 x-loyalty 标头,每分钟将允许更多请求。可通过传递不同的 x-loyalty 标头值来测试速率限制,示例如下:
kubectl exec -it deploy/sleep -c sleep -- \
curl -H "x-loyalty: silver" http:/./catalog/items
若发现速率限制未生效,可检查是否应用了所有正确的 EnvoyFilter 资源,以及速率限制服务(RLS)是否正常运行且日志中无错误。为双重检查底层 Envoy 配置是否有正确的速率限制操作,可使用 istioctl 获取目录服务的底层路由:
istioctl proxy-config routes deploy/catalog.istioinaction -o json \
| grep action
超级会员免费看
订阅专栏 解锁全文
39

被折叠的 条评论
为什么被折叠?



