istio 控制pod(vm)的端口转发

发布于 2022-09-13 01:02:41 字数 1095 浏览 25 评论 0

将 istio 安装在vm中,并接入k8s系统(vm作为一个pod,但ip仍然是本身的ip,没有使用集群安装时指定的cidr.

原架构
每个服务为一台服务器

ServerA -> ServerB
ServerA -> ServerB
ServerA -> ServerB

现架构

ServiceA -> Istio-Proxy -> ServiceB
ServiceA -> Istio-Proxy -> ServiceB
ServiceA -> Istio-Proxy -> ServiceB

功能需求:
ServiceA 的tcp请求(如 1232端口) 只能转发到 istio-Proxy, 经过代理后,再转发到 ServiceB。中间代理层会执行一些安全策略。文档 https://istio.io/latest/zh/do...

文档里讲的VIP是虚拟服务的IP地址,我这里使用的是 Istio-Proxy 的IP 192.168.3.120

apiVersion: networking.istio.io/v1alpha3
kind: ServiceEntry
metadata:
  name: tcp-forward-120
spec:
  hosts:
  - svc120 
  addresses: 
  - 192.168.3.120/24
  ports:
  - number: 27017
    name: mongodb
    protocol: MONGO
  location: MESH_EXTERNAL
  resolution: STATIC
  endpoints:
  - address: 192.168.3.61

发现从其它机器(未加入k8s集群)连接到 192.168.3.120的时候,端口并没有转到,而是直接转到120机器的mongodb数据库了。

另不清楚当前使用的 ServcieEntry 是否正确?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文