我已经设置了一些服务和入口来尝试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.X
HTTP错误如下:
$ curl http://X.X.X.X/
default backend - 404%
我的问题很简单:是否应该使用ClusterIP服务?如果它应该或多或少地写在文档中,我应该在哪里查看解决该问题?
谢谢!
答案 0 :(得分:12)
The native GKE Ingress controller do not support ClusterIP
, only NodePort
is working.
非本机Ingress控制器(例如nginx控制器)可以使用ClusterIP
服务。
答案 1 :(得分:1)
Nginx ingress controller与ClusterIp一起使用。但是本地的GKE入口控制器没有@ samuel-roze
提到的kubernetes.io/ingress.class:nginx