【问题标题】:Ingress always returns 404入口总是返回 404
【发布时间】:2021-07-28 13:42:15
【问题描述】:

我在没有负载均衡器的裸机配置中使用 K8s 1.21.0。 我已经使用 helm 在 NodePort 配置中安装了 nginx 入口:

helm install ********** nginx-stable/nginx-ingress --set "controller.service.type=NodePort" --namespace=nginx-ingress

编辑:我也试过这个作为负载平衡器,但结果是一样的。

我已经使用以下 yaml 部署了一个简单的 nginx 网络服务器:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: www-deployment
spec:
  selector:
    matchLabels:
      app: www
  replicas: 1
  template:
    metadata:
      labels:
        app: www
    spec:
      containers:
      - name: nginx
        image: nginx:1.14.2
        ports:
        - containerPort: 80

还有一项服务:

apiVersion: v1
kind: Service
metadata:
  name: webserver-service
spec:
  selector:
    app: www
  ports:
    - protocol: TCP
      port: 80
      targetPort: 80

具有以下入口:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: test-ingress
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /
spec:
  rules:
  - host: k8stest.************.com
    http:
      paths:
      - path: /
        pathType: Prefix
        backend:
          service:
            name: webserver-service
            port:
              number: 80

从我的控制平面,我可以很好地卷曲服务的集群 IP。我得到了我的期望:

curl 10.103.183.94
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>....

但是,如果我通过其服务 curl 我的入口控制器,我总是会收到 404。

curl -H "Host: k8stest.**********.com" http://10.106.95.61
<html>
<head><title>404 Not Found</title></head>
<body>
<center><h1>404 Not Found</h1></center>
<hr><center>nginx/1.19.9</center>
</body>
</html>

我尝试删除重写目标注释,但这会导致相同的结果。 404.

入口控制器似乎没有与我的服务通信。

在我刚刚看到的入口控制器日志中:

[06/May/2021:08:31:53 +0000] "GET / HTTP/1.1" 404 153 "-" "curl/7.68.0" "-"

我还尝试过在入口配置中使用和不使用主机值,并且还尝试在入口路径中使用 /test 而不是仅使用 /。没有任何东西被发送到后端 nginx 服务。

【问题讨论】:

    标签: kubernetes kubernetes-ingress nginx-ingress


    【解决方案1】:

    好的,我放弃了 helm 安装的 nginx 入口控制器,并按照此处记录的方式进行了裸机安装:

    https://kubernetes.github.io/ingress-nginx/deploy/#bare-metal

    一旦启动并运行,一切都如预期的那样活跃起来。

    【讨论】:

      猜你喜欢
      • 2021-08-05
      • 2015-07-31
      • 2020-08-09
      • 2016-02-04
      • 2014-05-29
      • 2015-11-23
      • 1970-01-01
      • 2021-02-17
      • 2019-02-28
      相关资源
      最近更新 更多