【问题标题】:Bare metal Nginx controller with Services as Node port not working具有服务作为节点端口的裸机 Nginx 控制器不起作用
【发布时间】:2019-11-08 11:04:11
【问题描述】:

您好,我在社区和 Nginx 存储库中都使用了 Nginx 控制器,它们都可以在云中使用 LoadBalancer 服务。作为 Nginx 控制器,社区和 Nginx 存储库都不能与服务 Nodeport "error 404" 一起使用。

404 Not Found

服务类型节点端口

apiVersion: v1
kind: Service
metadata:
  name: ingress-nginx
  namespace: ingress-nginx
  labels:
    app.kubernetes.io/name: ingress-nginx
    app.kubernetes.io/part-of: ingress-nginx
spec:
  type: NodePort
  ports:
    - name: http
      port: 80
      targetPort: 80
      protocol: TCP
    - name: https
      port: 443
      targetPort: 443
      protocol: TCP
  selector:
    app.kubernetes.io/name: ingress-nginx
    app.kubernetes.io/part-of: ingress-nginx

【问题讨论】:

  • 您能否添加您用来查看404 的命令或URL?能否也提供kubectl get svc -n ingress-nginx ingress-nginx的输出?
  • 您是如何访问NodePort 服务的?您可以通过请求 <NodeIP>:<NodePort> 从集群外部访问 NodePort 服务。

标签: kubernetes kubernetes-ingress nginx-ingress kubernetes-networking


【解决方案1】:

NGINX Ingress Controller 的默认行为是回复一个默认支持,该默认支持回复一个404 - default backend:基本上,它是一个正在运行的部署资源,返回该默认页面。

您可以尝试使用defaultBackend.image.repository 中的路径README 中的描述将变量覆盖传递给Helm 来覆盖它

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-08-10
    • 1970-01-01
    • 2020-09-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-02
    • 1970-01-01
    相关资源
    最近更新 更多