Istio 网关:流量管理与安全保障
1. 虚拟 IP 与反向代理映射
在服务架构中,我们常常需要将域名映射到一个 IP 地址,这个 IP 地址代表我们的服务。这里的单个“虚拟 IP”能够将流量转发到实际的服务实例。具体做法是将域名映射到一个绑定在特定入口点(即反向代理)的虚拟 IP 上。
反向代理是一个中间组件,负责将请求分发到后端服务,它不对应任何特定的服务。同时,反向代理还具备负载均衡的能力,可避免请求使某个特定的后端服务不堪重负。
例如,我们可以让 prod.istioinaction.io 和 api.istioinaction.io 解析到同一个虚拟 IP 地址。这意味着这两个 URI 的请求都会到达同一个虚拟 IP,进而到达同一个入口反向代理。如果反向代理足够智能,它可以使用 Host HTTP 头进一步区分哪些请求应该发送到哪一组服务。
2. 虚拟主机:单入口多服务
将多个不同的服务托管在单个入口点被称为虚拟主机。为了决定特定请求应路由到哪个虚拟主机组,对于 HTTP/1.1 协议,我们可以使用 Host 头;对于 HTTP/2 协议,使用 :authority 头;对于 TCP 连接,我们可以依赖 TLS 中的服务器名称指示(SNI)。
Istio 引入了入口网关(Gateway)的概念,它充当网络入口点,负责保护和控制来自集群外部的流量对集群的访问。此外,Istio 的网关还具备负载均衡和虚拟主机路由的功能。
超级会员免费看
订阅专栏 解锁全文
34

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



