Rewriting paths with Traefik
Here is a configuration for your example. Adjust it according to your real cluster configuration:
apiVersion: v1kind: Servicemetadata: name: service-onespec: selector: k8s-app: service-one-app ports: - port: 80 targetPort: 8080---apiVersion: v1kind: Servicemetadata: name: service-twospec: selector: k8s-app: service-two-app ports: - port: 80 targetPort: 8080---apiVersion: v1kind: Servicemetadata: name: service-threespec: selector: k8s-app: service-three-app ports: - port: 80 targetPort: 8080---apiVersion: extensions/v1beta1kind: Ingressmetadata: name: monitor.app annotations: kubernetes.io/ingress.class: traefik traefik.ingress.kubernetes.io/rewrite-target: /monitor # set path to result requestspec: rules: - host: monitor.app.com http: paths: - path /service-one # path for routing, it will be removed because of PathPrefixStrip settings backend: serviceName: service-one servicePort: 80 - path /service-two # path for routing, it will be removed because of PathPrefixStrip settings backend: serviceName: service-two servicePort: 80 - path /service-three # path for routing, it will be removed because of PathPrefixStrip settings backend: serviceName: service-three servicePort: 80
Additional information could be found here: