Problemas de roteamento baseado em caminho Traefik como controlador de ingresso
Estou analisando o que parece ser um problema de configuração! Estou usando o traefik como controlador de entrada no kubernetes e tenho uma entrada para rotear alguns URLs para rotear alguns front-end para vários back-ends. Digamos que eu tenho algo parecido com isto:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: test
annotations:
kubernetes.io/ingress.class: traefik
traefik.frontend.rule.type: ReplacePathRegex
spec:
rules:
- host: foo.io
http:
paths:
- path: /api/authservice/(.*) /$1
backend:
serviceName: auth
servicePort: 8901
- path: /api/svcXXX/v1/files/cover/(.*) /v1/files/cover/$1
backend:
serviceName: files
servicePort: 8183
- path: /api/svcXXX/v1/files/image/(.*) /v1/files/image/$1
backend:
serviceName: files
servicePort: 8183
Usando o Postman (ou qualquer outro cliente), se POSTAR uma solicitação emhttp://foo.io/api/authservice/auth/oauth/token
, enquanto olha nos logs de acesso, parece que ele é roteado parahttp://foo.io/api/svcXXX/v1/files/image/(.*) /v1/files/image/$1
. Estou vendo isso nos logs de acesso:
[03/Jul/2018:12:57:17 +0000] "POST /api/authservice/auth/oauth/token HTTP/1.1" 401 102 "-" "PostmanRuntime/7.1.5" 15 "foo.io/api/svcXXX/v1/files/image/(.*) /v1/files/image/$1" 37ms
Estou fazendo algo errado ?