Kong Ingress Request Transformer problem

hi there,
Im using Kong Ingress on AKS and I have a requirement to use linkerd service mesh and require some help on setting the annotation for Request Transformer plugin.

I need to set the request header to be like the following:

l5d-dst-override $service_name.$namespace.svc.cluster.local:$service_port

Does Kong ingress support the $service_name & $namespace & $service_port variables? like the nginx ingress?

You can do this using a custom plugin.
Or you can use host_header attribute of the upstream entity.
It is present in KongIngress resource under the upstream section.

@hbagdi thanks for the reply, Im pretty new to kong ingress and Im using helm charts for deployment, Im struggling find an example in the docs.
Im looking at this page https://docs.konghq.com/hub/kong-inc/request-transformer/

apiVersion: configuration.konghq.com/v1
kind: KongPlugin
metadata:
  name: add-request-header
config:
  rename:
    headers:
    - "$host:l5d-dst-override $service_name.$namespace.svc.cluster.local:$service_port"
plugin: request-transformer

Would something like above work? also I have multiple micro-services in the upstream, would I need to need to hard code each of the my-svc instead of the $service_name?

No, this won’t work. You can define routes based on regex and then use position based arguments for substitution but you can’t directly substitute the service name.


© 2019 Kong Inc.    Terms  •  Privacy  •  FAQ