Как переписать целевой URL в входном контроллере AWS ALB?

#kubernetes #url-rewriting #kubernetes-ingress #amazon-eks #aws-application-load-balancer

#kubernetes #url-перезапись #kubernetes-вход #amazon-eks #aws-application-балансировщик нагрузки

Вопрос:

В классическом входе Kubernetes Nginx я знаю, что можно переписать целевой URL-адрес на основе определенного регулярного выражения, применив эту аннотацию nginx.ingress.kubernetes.io/rewrite-target: /$1

Но эта аннотация не работает в AWS ALB ingress. Кто-нибудь знает, возможно ли выполнить перезапись с помощью такого входа?

Комментарии:

1. Доступно несколько контроллеров ALB, не могли бы вы сослаться на тот, который вы используете, пожалуйста?

2. raw.githubusercontent.com/kubernetes-sigs/…

Ответ №1:

Хорошо, похоже, на данный момент он не поддерживается => https://github.com/kubernetes-sigs/aws-alb-ingress-controller/issues/835

Ответ №2:

Добавить аннотацию действия:

alb.ingress.kubernetes.io/actions.redirect-home : ‘{«Тип»:»перенаправление»,»RedirectConfig»: {«Хост»:»abc.example.com «,»Путь»: «/mycontext/other-path»,»Порт»: «443», «Протокол»:»HTTPS»,»Query»:»#{query}»,»StatusCode»:»HTTP_301″}}’

Добавить маршрут к действию:

       - backend:
          service:
            name: redirect-home
            port:
              name: use-annotation
        path: /some-path
        pathType: ImplementationSpecific
 

Это перенаправит /some-path на abc.example.com/mycontext/other-path

Спасибо