V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
yibo2018
V2EX  ›  程序员

ingress 访问 nginx 报错 404,求求大伙给指个路

  •  
  •   yibo2018 · 63 天前 · 950 次点击
    这是一个创建于 63 天前的主题,其中的信息可能已经有所发展或是发生改变。

    https://efficacious-beginner-568.notion.site/ingress-404-8b90bafba2a245a8b725988810d655d5

    上图是 ingress ,我用 h1 域名访问结果是 nginx 报 404 (直接问题)

    尝试添加 annotation

    kubernetes.io/ingress.class: nginx

    nginx.ingress.kubernetes.io/rewrite-target: /

    均无果,怀疑是 h2 的服务有问题,然后登陆到这个 ingress 下的 pod 中

    curl localhost:8080 可以访问到

    curl h2:8080 没有反应

    Ping h2 可以

    telnet h2 8080 没有反应

    那么可以确定是 h2 的服务有问题吗?但实际项目已经在测试,正式环境跑通了,h2:8080 这样的访问方式应该是没问题的

    看了 3 个小时,查了好多资料,无解了。。

    8 条回复    2022-08-01 23:23:00 +08:00
    chenxytw
        1
    chenxytw  
       63 天前
    service 咋写的?
    Beebird
        3
    Beebird  
       63 天前
    kubectl get endpoints h2 看看
    yibo2018
        4
    yibo2018  
    OP
       63 天前
    @Beebird
    ░▒▓ ~/Doc/company_f/p/  kubectl get endpoints XXX
    NAME ENDPOINTS AGE
    XXX 182.20.2.42:8080,182.20.2.42:8080 55d
    Beebird
        5
    Beebird  
       63 天前
    你的配置,目的是<Service IP:80> 和 <Service IP:8080> 都指向 <Pod IP:8080> 吗?

    那你在 ingress 下的 pod 中,curl h2:80 有无反应? (假设你的 ingress 和 h2 在同一个 namespace 下)
    xvan
        6
    xvan  
       63 天前
    curl 不到 8080 应该就是有问题的。

    反馈 404 的话,是不是先把 rewrite 规则去掉避免干扰
    然后去 ingress-controller 中看下实际的规则怎么写的,确认下是否如预期,
    最后可以看下 ingress-controller 的日志看有没有线索
    xiaobai1213
        7
    xiaobai1213  
       63 天前
    看一下你的 service 捕捉到目标了吗
    xiaobai1213
        8
    xiaobai1213  
       63 天前
    @xiaobai1213 之前遇到过 service 的 selector 写的有问题 捕捉不到 deploy 访问的时候就是 timeout
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   881 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 40ms · UTC 22:03 · PVG 06:03 · LAX 15:03 · JFK 18:03
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.