traefik作为istio网关

背景

虽然现在的趋势是将网关和istio融合,但是我个人觉得第一这件事不一定哪年可以落地,第二我一直遵循各司其职的想法,网关就是网关、网格就是网格、可以相互解耦,有一天没有网格了照样可以有网关。

istio+traefik

这里说一下,我的traefik采用的是Kubernetes Gateway API,我之前的文章有写可以参考。

然后我在istio官网的blog中发现了一篇醍醐灌顶的文章,建议你也可以先看一下,不看也行,他的结论我觉得和我上面想的差不多,分开部署,区别就是istio自己实现gateway api所以他的gatewayclass是istio,但是我是用的traefik所以我的gayewayclass 就是traefik。他的网关也并没有做到通过istio的控制平面来管理,说白了和istio还是分开了,所以更加坚定了我前面的结论,解耦。
Getting started with the Kubernetes Gateway API

bookinfo案例

这里我就用bookinfo来说吧,首先你肯定要先部署他的bookinfo案例,这个网上太多了我就不说了,然后你需要在相同的命名空间部署一个gateway

apiVersion: gateway.networking.k8s.io/v1alpha2
kind: Gateway
metadata:
  name: traefik-gateway
  namespace: istio-test
spec:
  gatewayClassName: traefik
  listeners:
    - name: web
      port: 8000
      protocol: HTTP

然后我们参考bookinfo的virtual service 写了一个httpRoute,你可以看一下原来的virtual service

apiVersion: gateway.networking.k8s.io/v1alpha2
kind: HTTPRoute
metadata:
  name: http-bookinfo
  namespace: istio-test

spec:
  parentRefs:
    - name: traefik-gateway

  hostnames:
    - test.bookinfo.cn

  rules:
    - matches:
        - path:
            type: Exact
            value: /productpage
        - path:
            type: PathPrefix
            value: /static
        - path:
            type: Exact
            value: /login
        - path:
            type: Exact
            value: /logout
        - path:
            type: PathPrefix
            value: /app/v1/products
      backendRefs:
        - name: productpage
          port: 9080
          weight: 1

成功部署后就可以从dashboard看到

在这里插入图片描述
那现在我访问一下顺便看看kiali
在这里插入图片描述
在这里插入图片描述
很nice

总结

其实我在参考官方blog前也在网上看了几个文章,说实话我没太懂,可能是比较菜,但是我从那几个文章里稍微等看到他们还是在网关那里加了一个sidecar,我觉得可能没什么必要,有可能我说的不对,未来Api gateway和istio融合了我也还是喜欢现在的模式,解耦。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值