kubernetes入口不工作!怎样才能解决这个问题?



我是kubernetes的新手,所以如果有人帮助我,我会很感激。我创建ingress.yaml文件,如下所示:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: backend-ingress
spec:
rules:
- host: test-1.<domain-name>.me
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: backend-service
port:
number: 8000

然后运行命令minikube addons enable ingress,一切都很好。当我输入命令kubectl get ingress时,我得到这个:

NAME              CLASS    HOSTS              ADDRESS        PORTS   AGE
backend-ingress   <none>   test-1.<domain-name>.me   192.168.49.2   80      85m

问题是,当我在浏览器中搜索test-1.<domain-name>.me时,我得到欢迎页面说wellcome to nginx!

我该怎么办?

您没有提到任何注释,您只是部署了一个入口,该入口将只部署一个带有" welcome ingress "的网页。

你需要部署一个带有应用程序url的入口才能正常工作,

例如:

注释nginx.ingress.kubernetes.io/rewrite-target将重写目标url,流量必须重定向。

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /$2
name: rewrite
namespace: default
spec:
ingressClassName: nginx
rules:
- host: rewrite.bar.com
http:
paths:
- path: /something(/|$)(.*)
pathType: Prefix
backend:
service:
name: http-svc
port: 
number: 80

在此入口定义中,(.*)捕获的任何字符都将分配给占位符$2,然后将其用作rewrite-target注释中的参数。

例如,上面的入口定义将导致以下重写:

rewrite.bar.com/something重写到rewrite.bar.com/

注意:你需要用正确的主机和路径配置你的入口。

请参考此官方文档,其中包含使用注释进行导入、分析和部署的详细信息。

相关内容

  • 没有找到相关文章

最新更新