我已经设置了一些服务和入口来尝试SSL终端。我使用LoadBalancer和NodePort服务作为后端完全没有问题,但它在ClusterIP服务中完全不起作用。
尽管Ingress的后端被描述为健康的,但我得到了一个HTTP错误,它不是来自我的应用程序。
$ kubectl describe ing nginx-cluster-ssl-ingress
Name: nginx-cluster-ssl-ingress
Namespace: default
Address: X.X.X.X
Default backend: nginx-cluster-svc:80 (...)
TLS:
ssl-certificate terminates
Rules:
Host Path Backends
---- ---- --------
Annotations:
https-target-proxy: k8s-tps-default-nginx-cluster-ssl-ingress
static-ip: k8s-fw-default-nginx-cluster-ssl-ingress
target-proxy: k8s-tp-default-nginx-cluster-ssl-ingress
url-map: k8s-um-default-nginx-cluster-ssl-ingress
backends: {"k8s-be-30825":"HEALTHY"}
forwarding-rule: k8s-fw-default-nginx-cluster-ssl-ingress
https-forwarding-rule: k8s-fws-default-nginx-cluster-ssl-ingress
Events:
FirstSeen LastSeen Count From SubobjectPath Type Reason Message
--------- -------- ----- ---- ------------- -------- ------ -------
28m 28m 1 {loadbalancer-controller } Normal ADD default/nginx-cluster-ssl-ingress
27m 27m 1 {loadbalancer-controller } Normal CREATE ip: X.X.X.XHTTP错误如下:
$ curl http://X.X.X.X/
default backend - 404%我的问题很简单:它应该与ClusterIP服务一起工作吗?如果文档中或多或少地写了这个问题,我应该在哪里找到解决这个问题的方法?
谢谢!
发布于 2016-05-30 03:32:25
The native GKE Ingress controller do not support ClusterIP, only NodePort is working.
非本机入口控制器,如nginx one,确实可以与ClusterIP服务一起使用。
发布于 2018-07-19 14:40:34
GKE上的Nginx ingress controller可以与ClusterIp一起使用。但是原生GKE入口控制器并不像@samuel-roze所提到的那样
kubernetes.io/ingress.class: nginx
发布于 2021-11-02 14:06:58
如果您正在使用GKE集群,并且您使用的是容器原生负载均衡(通过在您的ClusterIP服务中添加cloud.google.com/neg: '{"ingress": true}'注释来启用),那么您的GKE/GCE入口可以直接与ClusterIP服务对话,而不需要它是NodePort服务。
如果一组条件为真,GKE会自动添加cloud.google.com/neg: '{"ingress": true}'注释。然后,您不需要手动添加此注释来获得容器本机负载平衡。否则,您将需要添加此注释以获得容器本机负载平衡;这将使您的入口能够直接与ClusterIP服务对话。
https://stackoverflow.com/questions/37299646
复制相似问题