我对这两者感到困惑。两者都是在启用了 Istio 插件的 GKE 集群上配置的,都是 LoadBalancer 类型,但它们位于不同的命名空间上。他们的用例可能是什么?
gke-system 命名空间
vagrant@ubuntu-xenial:~/cloud_donws/iac$ kubectl get svc -n gke-system
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
cluster-local-gateway ClusterIP 10.53.0.76 <none> 15020/TCP,80/TCP,443/TCP 11h
istio-ingress LoadBalancer 10.53.23.203 35.x.113.x 15020:31917/TCP,80:30102/TCP,443:31494/TCP 11h
istio-pilot ClusterIP 10.53.20.61 <none> 15010/TCP,15011/TCP,8080/TCP,15014/TCP 11h
istio-system命名空间
vagrant@ubuntu-xenial:~/cloud_donws/iac$ kubectl get svc -n istio-system
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
istio-citadel ClusterIP 10.53.19.175 <none> 8060/TCP,15014/TCP 11h
istio-galley ClusterIP 10.53.26.27 <none> 443/TCP,15014/TCP,9901/TCP 11h
istio-ingressgateway LoadBalancer 10.53.27.245 x.197.x.218 15020:31856/TCP,80:31966/TCP,443:30142/TCP,31400:30876/TCP,15029:30354/TCP,15030:32017/TCP,15031:32425/TCP,15032:32647/TCP,15443:31390/TCP 11h
istio-pilot ClusterIP 10.53.11.103 <none> 15010/TCP,15011/TCP,8080/TCP,15014/TCP 11h
istio-policy ClusterIP 10.53.0.53 <none> 9091/TCP,15004/TCP,15014/TCP 11h
istio-sidecar-injector ClusterIP 10.53.4.58 <none> 443/TCP 11h
istio-telemetry ClusterIP 10.53.3.170 <none> 9091/TCP,15004/TCP,15014/TCP,42422/TCP 11h
promsd ClusterIP 10.53.15.102 <none> 9090/TCP 11h
就像 Google 的这个示例一样:
它指向 istio-ingress.gke-system.svc.cluster.local 而不是 istio-ingressgateway.istio-system.svc.cluster.local
最佳答案
您似乎已为此集群启用 Cloud Run。 Cloud Run 在 gke-system 命名空间上创建其控制平面,然后您已经安装了 Istio,默认情况下,它会在 istio-system 命名空间中创建控制平面。
有关更多详细信息,您可以查看此文档: https://cloud.google.com/kuberun/docs/setup#using_a_separate_istio_installation
它说:
istio-system 命名空间,以及使用其他 Istio 安装时默认设置的集群本地域 istio-ingressgateway.istio-system.svc.cluster.local。
gke-system 命名空间,以及使用默认 Cloud Run for Anthos on Google Cloud 安装设置的集群本地域 istio-ingress.gke-system.svc.cluster.local。
关于kubernetes - GKE 上 istio-ingress 和 istio-ingressgateway 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61436257/