【问题标题】:helm install nginx for 404 not found找不到 404 的 helm install nginx
【发布时间】:2022-11-10 12:34:10
【问题描述】:

我像这样进行了 Nginx 的掌舵安装

helm install ingress-nginx ingress-nginx/ingress-nginx \
--namespace ingress-nginx \
--create-namespace \
--version 4.2.0 \
--set controller.ingressClass=nginx \
--set rbac.create=true \
--values /tmp/ingress-nginx.yaml

一切都部署得很好

[rke@k8gui apps]$ kubectl get all -n ingress-nginx
NAME                                 READY   STATUS    RESTARTS   AGE
pod/ingress-nginx-controller-248rc   1/1     Running   0          3m15s
pod/ingress-nginx-controller-hpv8h   1/1     Running   0          3m15s
pod/ingress-nginx-controller-jwzjn   1/1     Running   0          3m15s

NAME                                         TYPE           CLUSTER-IP      EXTERNAL-IP      PORT(S)                      AGE
service/ingress-nginx-controller             LoadBalancer   10.43.117.177   192.168.33.100   80:31678/TCP,443:32340/TCP   3m4s
service/ingress-nginx-controller-admission   ClusterIP      10.43.119.134   <none>           443/TCP                      3m4s

NAME                                      DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR            AGE
daemonset.apps/ingress-nginx-controller   3         3         3       3            3           kubernetes.io/os=linux   3m4s
[rke@k8gui apps]$ curl http://192.168.33.100
<html>
<head><title>404 Not Found</title></head>
<body>
<center><h1>404 Not Found</h1></center>
<hr><center>nginx</center>
</body>
</html>

但在负载均衡器 ext ip 上卷曲显示 404 未找到

任何想法?

【问题讨论】:

  • 如果以下答案满足您的答案,请随时更新问题的状态,如果发现有帮助,请点赞。

标签: nginx kubernetes kubernetes-ingress nginx-ingress


【解决方案1】:

你得到了404由于你可能没有部署任何入口.

您在上面粘贴的输出是入口控制器,它是Nginx 控制器外部的 知识产权.入口控制器管理入口或者换句话说,路由规则。

如果您没有创建任何入口规则来将流量转移到集群中,或者如果规则是不匹配 Nginx会抛出404错误。

您从 Nginx 获得 404 本身,所以当您点击外部 IP控制器您的请求达到直到Nginx但没有规则匹配。

正如你在输出中看到的

<hr><center>nginx</center>

尝试创建一个 hello 应用部署和入口路由规则,如示例所示:https://kubernetes.io/docs/tasks/access-application-cluster/ingress-minikube/

【讨论】:

  • 我遵循了这一点,但我无法使入口正常工作。我知道 clusterIP 和 nodeport 可以工作,因为我可以从主机卷曲到它并做出响应。我也知道我的 metallb 工作,因为我将它从集群 IP 更改为负载均衡器,并且我能够卷曲到 LB ip。但是入口不起作用,我不断收到 503 错误
  • 如果您收到 503,则表示您的服务已关闭,而 503 可能也来自 Nginx 本身。因此您的控制器已启动并正在运行,但后端服务未运行,因此引发 503 服务错误
  • 好的,我刚刚重新安装了 nginx-stable,现在似乎可以工作了。但我只能 curl dns 名称。浏览器没有打开网站
  • 这可能是您可以更新此问题状态并发布新问题的其他原因,其中包含更多详细信息,例如您使用过浏览器控制台和日志的入口文件 yaml 文件。
【解决方案2】:

似乎您正在尝试从集群内访问外部 IP。

可能这是不可能的。

您可以从浏览器尝试吗? 在集群中,您可以尝试访问您的集群 IP 10.43.117.177。

【讨论】:

  • 我得到同样的东西 nginx 404 not found
  • 看看 Harsh Manvars 的回答就对了,确实只有控制器。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-06-22
  • 2021-09-26
  • 2016-10-25
  • 2016-06-23
  • 2016-12-27
  • 2018-03-26
  • 1970-01-01
相关资源
最近更新 更多