簡體   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