我在 GKE 集群中设置了一个 nginx 入口,如下所示:
helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx
helm install ingress-nginx ingress-nginx/ingress-nginx --namespace nginx-ingress
一个具有其 IP 的负载均衡器出现了。
现在我在 Cloudflare 添加了两个指向该域的 DNS:
另外我创建了一个命名空间app-a
kubectl create namespace app-a
kubectl label namespace app-a project=a
并在那里部署了一个应用程序:
apiVersion: v1
kind: Service
metadata:
name: echo1
namespace: app-a
spec:
ports:
- port: 80
targetPort: 5678
selector:
app: echo1
type: ClusterIP
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: echo1
namespace: app-a
spec:
selector:
matchLabels:
app: echo1
replicas: 2
template:
metadata:
labels:
app: echo1
spec:
containers:
- name: echo1
image: hashicorp/http-echo
args:
- "-text=echo1"
ports:
- containerPort: 5678
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: echo-ingress-global
namespace: app-a
annotations:
kubernetes.io/ingress.class: "nginx"
nginx.ingress.kubernetes.io/ssl-redirect: "false"
spec:
rules:
- host: "test.my-domain.com"
http:
paths:
- pathType: Prefix
path: "/"
backend:
service:
name: echo1
port:
number: 80
在 Lens 中一切看起来都很好,所以我想测试一下。
当我进入时eu1.my-domain.com
,我得到了
这当然是有意为之。
但是当我输入时test.my-domain.com
,我发现该网站无法访问:DNS_PROBE_FINISHED_NXDOMAIN
,尽管我希望看到虚拟应用程序的虚拟输出。
更奇怪的是,无论我得到响应良好或无响应的结果,在 nginx 控制器的日志中,任何调用都不会显示任何内容。
你能帮助我,让我可以访问test.my-domain.com
主页吗?