I have set up an istio
-enabled microservices architecture on a kubernetes
cluster.
My istio-ingressgateway
is proxied by Cloudflare.
The later, generates a of specific header, namely cf-ray
to support troubleshooting cloudflare-related issues.
My question is how to enable my service mesh i.e. both in the edge (the istio-ingressgateway
that is) and all sidecars to propagate the cf-ray
id header.
istio
's documentation on VirtualService
resource, in the section about HeaderOperations
, lists 3 available actions, namely set
, add
and remove
.
add
and remove
seem to be the more unrelated to the action I want to perform, however set
also seems to ask for a specific value to be set.
I just want a passthrough/propagation type of operation where istio
upon seeing a cf-ray
header, will pass it
a) in the cluster (when its about the ingress gateway)
b) from each sidecar to the main container (it goes without saying that in this case, it then becomes a responsibility of the main container's app to continue propagation from that point on)