You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
ARN can be used in forward action(both simplified schema and advanced schema), it must be an targetGroup created outside of k8s, typically an targetGroup for legacy application.
162
+
!!!note "use ServiceName/ServicePort in forward Action"
163
+
ServiceName/ServicePort can be used in forward action(advanced schema only).
164
+
165
+
Limitation: [Auth related annotations](#authentication) on Service object won't be respected, it must be applied to Ingress object.
166
+
167
+
- <aname="conditions">`alb.ingress.kubernetes.io/conditions.${conditions-name}`</a> Provides a method for specifing routing conditions **in addition to original host/path condition on Ingress spec**.
168
+
169
+
The `conditions-name` in the annotation must match the serviceName in the ingress rules, and servicePort must be `use-annotation`.
170
+
171
+
!!!example
172
+
- rule-path1:
173
+
- Host is www.example.com OR anno.example.com
174
+
- Path is /path1
175
+
- rule-path2:
176
+
- Host is www.example.com
177
+
- Path is /path2 OR /anno/path2
178
+
- rule-path3:
179
+
- Host is www.example.com
180
+
- Path is /path3
181
+
- Http header HeaderName is HeaderValue1 OR HeaderValue2
182
+
- rule-path4:
183
+
- Host is www.example.com
184
+
- Path is /path4
185
+
- Http request method is GET OR HEAD
186
+
- rule-path5:
187
+
- Host is www.example.com
188
+
- Path is /path5
189
+
- Query string is paramA:valueA1 OR paramA:valueA2
190
+
- rule-path6:
191
+
- Host is www.example.com
192
+
- Path is /path6
193
+
- Source IP is192.168.0.0/16 OR 172.16.0.0/16
194
+
- rule-path7:
195
+
- Host is www.example.com
196
+
- Path is /path6
197
+
- Http header HeaderName is HeaderValue
198
+
- Query string is paramA:valueA
199
+
- Query string is paramB:valueB
200
+
201
+
```yaml
202
+
apiVersion: extensions/v1beta1
203
+
kind: Ingress
204
+
metadata:
205
+
namespace: default
206
+
name: ingress
207
+
annotations:
208
+
kubernetes.io/ingress.class: alb
209
+
alb.ingress.kubernetes.io/scheme: internet-facing
210
+
alb.ingress.kubernetes.io/actions.rule-path1: >
211
+
{"Type":"fixed-response","FixedResponseConfig":{"ContentType":"text/plain","StatusCode":"200","MessageBody":"Host is www.example.com OR anno.example.com"}}
{"Type":"fixed-response","FixedResponseConfig":{"ContentType":"text/plain","StatusCode":"200","MessageBody":"Http header HeaderName is HeaderValue1 OR HeaderValue2"}}
{"Type":"fixed-response","FixedResponseConfig":{"ContentType":"text/plain","StatusCode":"200","MessageBody":"Query string is paramA:valueA1 OR paramA:valueA2"}}
{"Type":"fixed-response","FixedResponseConfig":{"ContentType":"text/plain","StatusCode":"200","MessageBody":"Source IP is 192.168.0.0/16 OR 172.16.0.0/16"}}
1. Each rule can optionally include up to one of each of the following conditions: host-header, http-request-method, path-pattern, and source-ip. Each rule can also optionally include one or more of each of the following conditions: http-header and query-string.
277
+
278
+
2. You can specify up to three match evaluations per condition.
279
+
280
+
3. You can specify up to five match evaluations per rule.
281
+
282
+
Refer [ALB documentation](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-listeners.html#rule-condition-types) for more details.
134
283
135
284
## Access control
136
285
Access control for LoadBalancer can be controlled with following annotations:
0 commit comments