首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Service Mesh:在虚拟服务中使用Istio基于客户端IP路由TCP流量

Service Mesh:在虚拟服务中使用Istio基于客户端IP路由TCP流量
EN

Stack Overflow用户
提问于 2020-06-05 11:40:05
回答 1查看 330关注 0票数 1

入口网关位于AWS ELB(经典)后面,使用nodeport,我想在基于客户端ip的虚拟服务中路由TCP流量。

当然,ELB的代理协议是启用的。

当我使用HTTP时,它可以工作。配置如下。

代码语言:javascript
复制
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: app-vservice
  namespace: test
spec:
  hosts:
  - "app-service"
  http:
  - match:
    - headers:
        x-forwarded-for:
          exact: 123.123.123.123
    route:
    - destination:
        host: app-service
        subset: v2
  - route:
    - destination:
        host: app-service
        subset: v1

但在公文中找不到TCP路由的报头字段。

这不可能吗?

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2020-06-05 12:34:42

根据文档,是的,在Istio的TCPRoute中没有可以传递头部的字段。同样,为了回答你的问题,每个报头操作都应该使用特使过滤器来完成,因为基于特使构建的Istio支持这一点,同时也降低了复杂性。

按照Istio文档中的说明使用特使和lua过滤器。这是可以实现的。请跟随docs特使。

查看虚拟服务中的头的Istio Discussion

使用Lua实现相同的功能。和一个blog,展示了如何在特使上实现过滤器的示例。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62207744

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档