istio

Форк
0
/
route-precedence.yaml 
143 строки · 2.7 Кб
1
apiVersion: gateway.networking.k8s.io/v1beta1
2
kind: GatewayClass
3
metadata:
4
  name: istio
5
spec:
6
  controllerName: istio.io/gateway-controller
7
---
8
apiVersion: gateway.networking.k8s.io/v1beta1
9
kind: Gateway
10
metadata:
11
  name: gateway
12
  namespace: istio-system
13
spec:
14
  addresses:
15
  - value: istio-ingressgateway
16
    type: Hostname
17
  gatewayClassName: istio
18
  listeners:
19
  - name: default
20
    hostname: "*.domain.example"
21
    port: 80
22
    protocol: HTTP
23
    allowedRoutes:
24
      namespaces:
25
        from: Selector
26
        selector:
27
          matchLabels:
28
            istio.io/test-name-part: allowed
29
---
30
apiVersion: gateway.networking.k8s.io/v1beta1
31
kind: HTTPRoute
32
metadata:
33
  name: http
34
  namespace: allowed-1
35
spec:
36
  parentRefs:
37
  - name: gateway
38
    namespace: istio-system
39
  - group: ""
40
    kind: Service
41
    name: a-example
42
  - group: ""
43
    kind: Service
44
    name: b-example
45
  hostnames: ["a.domain.example", "b.domain.example"]
46
  rules:
47
  - matches:
48
    - path:
49
        type: PathPrefix
50
        value: /foo
51
      headers:
52
      - name: my-header
53
        value: some-value
54
        type: Exact
55
    backendRefs:
56
    - name: svc1
57
      port: 80
58
  - matches:
59
    - path:
60
        type: RegularExpression
61
        value: /foo((\/).*)?
62
    backendRefs:
63
    - name: svc2
64
      port: 80
65
---
66
apiVersion: gateway.networking.k8s.io/v1beta1
67
kind: HTTPRoute
68
metadata:
69
  name: http
70
  namespace: allowed-2
71
spec:
72
  parentRefs:
73
  - name: gateway
74
    namespace: istio-system
75
  - group: ""
76
    kind: Service
77
    name: a-example
78
  hostnames: ["a.domain.example"]
79
  rules:
80
  - matches:
81
    - path:
82
        type: PathPrefix
83
        value: /foo/bar
84
    - path:
85
        type: PathPrefix
86
        value: /bar
87
    backendRefs:
88
    - name: svc2
89
      port: 80
90
  - matches:
91
    - path:
92
        type: Exact
93
        value: /baz
94
      headers:
95
      - name: my-header
96
        value: some-value
97
        type: Exact
98
      queryParams:
99
      - name: my-param
100
        value: some-value
101
        type: RegularExpression
102
    backendRefs:
103
    - name: svc2
104
      port: 80
105
  - matches:
106
    - path:
107
        type: PathPrefix
108
        value: /
109
    backendRefs:
110
    - name: svc3
111
      port: 80
112
  - matches:
113
    - method: PATCH
114
      path:
115
        type: PathPrefix
116
        value: /
117
    backendRefs:
118
    - name: svc2
119
      port: 80
120
---
121
apiVersion: gateway.networking.k8s.io/v1beta1
122
kind: HTTPRoute
123
metadata:
124
  name: http
125
  namespace: default
126
spec:
127
  parentRefs:
128
  - name: gateway
129
    namespace: istio-system
130
  hostnames: ["a.domain.example", "b.domain.example"]
131
  rules:
132
  - matches:
133
    - path:
134
        type: PathPrefix
135
        value: /abc
136
      headers:
137
      - name: my-header
138
        value: some-value
139
        type: Exact
140
    backendRefs:
141
    - name: svc4
142
      port: 80
143
---
144

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.