Ingress是否使用ClusterIP服务?

时间:2016-05-18 12:27:25

标签: kubernetes google-kubernetes-engine

我已经设置了一些服务和入口来尝试SSL终止。我在使用LoadBalancerNodePort服务作为后端时完全没有问题,但它在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.X

HTTP错误如下:

$ curl http://X.X.X.X/
default backend - 404%

我的问题很简单:是否应该使用ClusterIP服务?如果它应该或多或少地写在文档中,我应该在哪里查看解决该问题?

谢谢!

2 个答案:

答案 0 :(得分:12)

The native GKE Ingress controller do not support ClusterIP, only NodePort is working.

非本机Ingress控制器(例如nginx控制器)可以使用ClusterIP服务。

答案 1 :(得分:1)

GKE上的

Nginx ingress controller与ClusterIp一起使用。但是本地的GKE入口控制器没有@ samuel-roze

提到的

kubernetes.io/ingress.class:nginx