istio
1apiVersion: networking.istio.io/v1alpha3
2kind: Gateway
3metadata:
4annotations:
5internal.istio.io/gateway-semantics: gateway
6internal.istio.io/gateway-service: istio-ingressgateway.istio-system.svc.domain.suffix
7internal.istio.io/parents: Gateway/gateway/default.istio-system
8creationTimestamp: null
9name: gateway-istio-autogenerated-k8s-gateway-default
10namespace: istio-system
11spec:
12servers:
13- hosts:
14- allowed-1/*.domain.example
15- allowed-2/*.domain.example
16port:
17name: default
18number: 80
19protocol: HTTP
20---
21apiVersion: networking.istio.io/v1alpha3
22kind: VirtualService
23metadata:
24annotations:
25internal.istio.io/parents: HTTPRoute/http.allowed-1,HTTPRoute/http.allowed-2
26internal.istio.io/route-semantics: gateway
27creationTimestamp: null
28name: http-0-istio-autogenerated-k8s-gateway
29namespace: allowed-1
30spec:
31gateways:
32- istio-system/gateway-istio-autogenerated-k8s-gateway-default
33hosts:
34- a.domain.example
35http:
36- match:
37- headers:
38my-header:
39exact: some-value
40queryParams:
41my-param:
42regex: some-value
43uri:
44exact: /baz
45name: allowed-2.http.1
46route:
47- destination:
48host: svc2.allowed-2.svc.domain.suffix
49port:
50number: 80
51- match:
52- uri:
53prefix: /foo/bar
54name: allowed-2.http.0
55route:
56- destination:
57host: svc2.allowed-2.svc.domain.suffix
58port:
59number: 80
60- match:
61- headers:
62my-header:
63exact: some-value
64uri:
65prefix: /foo
66name: allowed-1.http.0
67route:
68- destination:
69host: svc1.allowed-1.svc.domain.suffix
70port:
71number: 80
72- match:
73- uri:
74prefix: /bar
75name: allowed-2.http.0
76route:
77- destination:
78host: svc2.allowed-2.svc.domain.suffix
79port:
80number: 80
81- match:
82- method:
83exact: PATCH
84uri:
85prefix: /
86name: allowed-2.http.3
87route:
88- destination:
89host: svc2.allowed-2.svc.domain.suffix
90port:
91number: 80
92- match:
93- uri:
94prefix: /
95name: allowed-2.http.2
96route:
97- destination:
98host: svc3.allowed-2.svc.domain.suffix
99port:
100number: 80
101- match:
102- uri:
103regex: /foo((\/).*)?
104name: allowed-1.http.1
105route:
106- destination:
107host: svc2.allowed-1.svc.domain.suffix
108port:
109number: 80
110---
111apiVersion: networking.istio.io/v1alpha3
112kind: VirtualService
113metadata:
114annotations:
115internal.istio.io/parents: HTTPRoute/http.allowed-1
116internal.istio.io/route-semantics: gateway
117creationTimestamp: null
118name: http-1-istio-autogenerated-k8s-gateway
119namespace: allowed-1
120spec:
121gateways:
122- istio-system/gateway-istio-autogenerated-k8s-gateway-default
123hosts:
124- b.domain.example
125http:
126- match:
127- headers:
128my-header:
129exact: some-value
130uri:
131prefix: /foo
132name: allowed-1.http.0
133route:
134- destination:
135host: svc1.allowed-1.svc.domain.suffix
136port:
137number: 80
138- match:
139- uri:
140regex: /foo((\/).*)?
141name: allowed-1.http.1
142route:
143- destination:
144host: svc2.allowed-1.svc.domain.suffix
145port:
146number: 80
147---
148apiVersion: networking.istio.io/v1alpha3
149kind: VirtualService
150metadata:
151annotations:
152internal.istio.io/parents: HTTPRoute/http.allowed-1
153internal.istio.io/route-semantics: gateway
154creationTimestamp: null
155name: http-2-istio-autogenerated-k8s-gateway
156namespace: allowed-1
157spec:
158gateways:
159- mesh
160hosts:
161- a-example.allowed-1.svc.domain.suffix
162http:
163- match:
164- headers:
165my-header:
166exact: some-value
167uri:
168prefix: /foo
169name: allowed-1.http.0
170route:
171- destination:
172host: svc1.allowed-1.svc.domain.suffix
173port:
174number: 80
175- match:
176- uri:
177regex: /foo((\/).*)?
178name: allowed-1.http.1
179route:
180- destination:
181host: svc2.allowed-1.svc.domain.suffix
182port:
183number: 80
184---
185apiVersion: networking.istio.io/v1alpha3
186kind: VirtualService
187metadata:
188annotations:
189internal.istio.io/parents: HTTPRoute/http.allowed-1
190internal.istio.io/route-semantics: gateway
191creationTimestamp: null
192name: http-3-istio-autogenerated-k8s-gateway
193namespace: allowed-1
194spec:
195gateways:
196- mesh
197hosts:
198- b-example.allowed-1.svc.domain.suffix
199http:
200- match:
201- headers:
202my-header:
203exact: some-value
204uri:
205prefix: /foo
206name: allowed-1.http.0
207route:
208- destination:
209host: svc1.allowed-1.svc.domain.suffix
210port:
211number: 80
212- match:
213- uri:
214regex: /foo((\/).*)?
215name: allowed-1.http.1
216route:
217- destination:
218host: svc2.allowed-1.svc.domain.suffix
219port:
220number: 80
221---
222apiVersion: networking.istio.io/v1alpha3
223kind: VirtualService
224metadata:
225annotations:
226internal.istio.io/parents: HTTPRoute/http.allowed-2
227internal.istio.io/route-semantics: gateway
228creationTimestamp: null
229name: http-0-istio-autogenerated-k8s-gateway
230namespace: allowed-2
231spec:
232gateways:
233- mesh
234hosts:
235- a-example.allowed-2.svc.domain.suffix
236http:
237- match:
238- headers:
239my-header:
240exact: some-value
241queryParams:
242my-param:
243regex: some-value
244uri:
245exact: /baz
246name: allowed-2.http.1
247route:
248- destination:
249host: svc2.allowed-2.svc.domain.suffix
250port:
251number: 80
252- match:
253- uri:
254prefix: /foo/bar
255name: allowed-2.http.0
256route:
257- destination:
258host: svc2.allowed-2.svc.domain.suffix
259port:
260number: 80
261- match:
262- uri:
263prefix: /bar
264name: allowed-2.http.0
265route:
266- destination:
267host: svc2.allowed-2.svc.domain.suffix
268port:
269number: 80
270- match:
271- method:
272exact: PATCH
273uri:
274prefix: /
275name: allowed-2.http.3
276route:
277- destination:
278host: svc2.allowed-2.svc.domain.suffix
279port:
280number: 80
281- match:
282- uri:
283prefix: /
284name: allowed-2.http.2
285route:
286- destination:
287host: svc3.allowed-2.svc.domain.suffix
288port:
289number: 80
290---
291