nginx反向代理到istio服务网格后面的服务

nginx反向代理到istio服务网格后面的服务,nginx,openshift,istio,Nginx,Openshift,Istio,我正在尝试使用nginx对部署在openshift上的istio服务网格后面的服务进行负载平衡 我的查询在nginx.conf中,在istio部署的情况下,我必须使用哪个ip?在非istio部署中,我使用pod的节点ip和服务的节点端口 upstream infra{ server XXX.XXX.XXX.XXX:8080; } map $proxy_add_x_forwarded_for $client_ip {"~(?<IP>([0-9]{1,3}\.){3}

我正在尝试使用nginx对部署在openshift上的istio服务网格后面的服务进行负载平衡

我的查询在nginx.conf中,在istio部署的情况下,我必须使用哪个ip?在非istio部署中,我使用pod的节点ip和服务的节点端口

upstream infra{
    server XXX.XXX.XXX.XXX:8080;
}

map $proxy_add_x_forwarded_for $client_ip {"~(?<IP>([0-9]{1,3}\.){3}[0-9]{1,3}),.*" $IP;}

server {
        listen       80;
        server_name example.com;
        access_log  /var/log/nginx/nginx.testmegh.access.log main;
        error_log  /var/log/nginx/nginx.testmegh.error.log error;
        location /fininfra {
          proxy_pass         http://infra:80;
          proxy_http_version 1.1;
          proxy_redirect     off;
          proxy_set_header   Host $host;
          proxy_set_header   X-Real-IP $remote_addr;
          proxy_set_header   X-Forwarded-Host $host;
          proxy_set_header   X-Forwarded-For $remote_addr;
        } 
}
上游基础设施{ 服务器XXX.XXX.XXX.XXX:8080; } 为$client_ip{(?([0-9]{1,3}\){3}[0-9]{1,3})映射$proxy_add__x_forwarded_,.*$ip;} 服务器{ 听80; server_name example.com; access_log/var/log/nginx/nginx.testmegh.access.log main; error\u log/var/log/nginx/nginx.testmegh.error.log error; 位置/fininfra{ 代理通行证http://infra:80; proxy_http_版本1.1; 代理_重定向关闭; 代理设置头主机$Host; 代理集头X-Real-IP$remote\u addr; 代理集头X转发主机$Host; $remote\u addr的代理\u集\u头X转发; } }
istio中的所有内容都通过istio入口网关外部IP,因此这取决于您如何配置istio群集。它可以是或

引自

确定入口IP和端口

执行以下命令以确定Kubernetes群集是否在支持外部负载平衡器的环境中运行:

如果设置了EXTERNAL-IP值,则您的环境具有可用于入口网关的外部负载平衡器。如果EXTERNAL-IP值为(或永久),则您的环境不会为入口网关提供外部负载平衡器。在这种情况下,您可以使用服务的节点端口访问网关


在istio部署时,我必须使用哪个ip

在上面的文档示例中,它是
130.211.10.121

假设您已经部署,并且希望通过浏览器访问它,您必须使用上面的IP和来自的适当uri。因此它将是
130.211.10.121/productpage

$ kubectl get svc istio-ingressgateway -n istio-system
NAME                   TYPE           CLUSTER-IP       EXTERNAL-IP      PORT(S)   AGE
istio-ingressgateway   LoadBalancer   172.21.109.129   130.211.10.121   ...       17h