我想要像这样路由(nginx 伪配置):
server_name fou.example.com;
location "/Forskning" {
upstream https://185.102.32.26/;
}
location "/" {
upstream http://fou-web.fou.svc.cluster.local;
}
我如何使用 VirtualService、Gateway、ServiceEntry 等来实现这一点?显然我需要保留域名。
答案1
基于此istio 讨论
用户 @palic 在这里提问
难道不应该让 ISTIO 来做反向代理吗,这样就不需要 Web 服务器(httpd/nginx/lighthttpd/...)来做反向代理工作了?
@Daniel_Watrous 给出了答案
Istio 控制平面的工作是配置一组反向代理。Web 服务器的目的是提供内容,而不是反向代理。Istio 的核心反向代理技术是 Envoy,Envoy 可以用作 HAProxy、nginx、Apache、F5 或任何其他用作反向代理的组件的替代品。
因此,如果我们谈论反向代理,您需要使用除了 istio 本身之外的其他技术。
就我而言,您可以使用一些 nginx pod,它将被配置为反向代理,它将成为您的虚拟服务的主机。
所以它看起来就像下面的例子一样。
例子
虚拟服务 -> 服务 -> Nginx Pod -> 使用 proxy_pass 从集群外部获取资源