在 Istio 虚拟服务中添加自定义 headers
Add Custom headers in Istio Virtual service
我正在使用 Istio 1.10.0 和 minikube。 Kubernetes 服务器版本为 1.19.8.
如何在http请求中添加多个header?是否可以放置动态值,例如 request.headers["Host"]
?
X-Forwarded-Host $host;
X-Forwarded-Port 9090;
X-Forwarded-Proto http;
下面的示例可以很好地添加响应 header。
apiVersion: networking.istio.io/v1beta1
kind: VirtualService
metadata:
annotations:
helm.sh/hook: pre-install, pre-upgrade
creationTimestamp: "2021-11-22T13:01:36Z"
generation: 8
name: direct-vs
namespace: cvrm
resourceVersion: "72069"
selfLink: /apis/networking.istio.io/v1beta1/namespaces/cvrm/virtualservices/cvrm-direct-vs
uid: d398a13e-fd81-4ada-8e36-617287cae1bc
spec:
gateways:
- gateway.istio-system.svc.cluster.local
hosts:
- '*'
http:
- match:
- uri:
prefix: /console
route:
- destination:
host: console-bs.cvrm.svc.cluster.local
port:
number: 8087
headers:
response:
add:
Custom-Header: test
您将 headers 添加到请求,就像您对响应所做的那样。
...
headers:
request:
add:
foo: bar
...
如果要添加多个headers可以试试
...
headers:
request:
add:
foo: foo
bar: bar
...
无法在 Istio 清单中添加动态值。
我正在使用 Istio 1.10.0 和 minikube。 Kubernetes 服务器版本为 1.19.8.
如何在http请求中添加多个header?是否可以放置动态值,例如 request.headers["Host"]
?
X-Forwarded-Host $host;
X-Forwarded-Port 9090;
X-Forwarded-Proto http;
下面的示例可以很好地添加响应 header。
apiVersion: networking.istio.io/v1beta1
kind: VirtualService
metadata:
annotations:
helm.sh/hook: pre-install, pre-upgrade
creationTimestamp: "2021-11-22T13:01:36Z"
generation: 8
name: direct-vs
namespace: cvrm
resourceVersion: "72069"
selfLink: /apis/networking.istio.io/v1beta1/namespaces/cvrm/virtualservices/cvrm-direct-vs
uid: d398a13e-fd81-4ada-8e36-617287cae1bc
spec:
gateways:
- gateway.istio-system.svc.cluster.local
hosts:
- '*'
http:
- match:
- uri:
prefix: /console
route:
- destination:
host: console-bs.cvrm.svc.cluster.local
port:
number: 8087
headers:
response:
add:
Custom-Header: test
您将 headers 添加到请求,就像您对响应所做的那样。
...
headers:
request:
add:
foo: bar
...
如果要添加多个headers可以试试
...
headers:
request:
add:
foo: foo
bar: bar
...
无法在 Istio 清单中添加动态值。