繁体   English   中英

路径通配符在 kubernetes 入口中不起作用

[英]Path wildcard not working in kubernetes ingress

我已经安装了 Ingress 并将我的服务链接到它(usign metallb)。

apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
  name: test-ingress
  annotations:
     nginx.ingress.kubernetes.io/rewrite-target: /
spec:
   rules:
   - http:
       paths:
       - path: /api/tasks/*
         # pathType: Exact
         backend:
           serviceName: tasks-service
           servicePort: 5004

事情是这样的,我将部署中路径的默认前缀设置为

/api/任务/

其中/api/tasks/tasks显示服务已启动,而/api/tasks/tasks_count给出总数。 但是在我的 k8s 集群中,我无法重定向到服务中的不同路径。 可能是什么问题呢?

由于这是 Google 中通配符和前缀的结果,我将回答这个老问题。

您正在寻找的功能来自将路径类型指定pathType: Prefix

       paths:
       - path: /api/tasks
         pathType: Prefix
         backend:
           serviceName: tasks-service
           servicePort: 5004

重要的是,路径不包含通配符。 事实上,如果您将他们的自定义负载均衡器配置器用于 Ingress 资源,AWS 等云提供商会抛出错误:

prefix path shouldn't contain wildcards

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM