This is an automated email from the ASF dual-hosted git repository.
tokers pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/apisix-helm-chart.git
The following commit(s) were added to refs/heads/master by this push:
new 605c0c5 chore: add externalTrafficPolicy for apisix gateway service
(#89)
605c0c5 is described below
commit 605c0c5520fe2b9b7724df3269b5471f14d88db4
Author: Jintao Zhang <[email protected]>
AuthorDate: Thu Jun 3 19:01:29 2021 +0800
chore: add externalTrafficPolicy for apisix gateway service (#89)
Signed-off-by: Jintao Zhang <[email protected]>
---
charts/apisix/README.md | 15 ++++++++-------
charts/apisix/templates/service-gateway.yaml | 1 +
charts/apisix/values.yaml | 3 +++
3 files changed, 12 insertions(+), 7 deletions(-)
diff --git a/charts/apisix/README.md b/charts/apisix/README.md
index 524714d..20c7cf1 100644
--- a/charts/apisix/README.md
+++ b/charts/apisix/README.md
@@ -79,13 +79,14 @@ The following tables lists the configurable parameters of
the apisix chart and t
Apache APISIX service parameters, this determines how users can access itself.
-| Parameter | Description
| Default
|
-|----------------------------|----------------------------------------------------------------------------------|---------------------------------------------------------|
-| `gateway.type` | Apache APISIX service type for user access
itself | `NodePort`
|
-| `gateway.http` | Apache APISIX service settings for http
|
|
-| `gateway.tls` | Apache APISIX service settings for tls
|
|
-| `gateway.stream` | Apache APISIX service settings for stream
|
|
-| `gateway.ingress` | Using ingress access Apache APISIX service
|
|
+| Parameter | Description
| Default
|
+|---------------------------------|----------------------------------------------------------------------------------|---------------------------------------------------------|
+| `gateway.type` | Apache APISIX service type for user access
itself | `NodePort`
|
+| `gateway.externalTrafficPolicy` | Setting how the Service route external
traffic | `Cluster`
|
+| `gateway.http` | Apache APISIX service settings for http
|
|
+| `gateway.tls` | Apache APISIX service settings for tls
|
|
+| `gateway.stream` | Apache APISIX service settings for stream
|
|
+| `gateway.ingress` | Using ingress access Apache APISIX service
|
|
### admin parameters
diff --git a/charts/apisix/templates/service-gateway.yaml
b/charts/apisix/templates/service-gateway.yaml
index 482e7e4..6d99468 100644
--- a/charts/apisix/templates/service-gateway.yaml
+++ b/charts/apisix/templates/service-gateway.yaml
@@ -28,6 +28,7 @@ metadata:
{{- include "apisix.labels" . | nindent 4 }}
spec:
type: {{ .Values.gateway.type }}
+ externalTrafficPolicy: {{ .Values.gateway.externalTrafficPolicy }}
{{- if eq .Values.gateway.type "LoadBalancer" }}
{{- if .Values.gateway.loadBalancerIP }}
loadBalancerIP: {{ .Values.gateway.loadBalancerIP }}
diff --git a/charts/apisix/values.yaml b/charts/apisix/values.yaml
index f656ee7..41de5ab 100644
--- a/charts/apisix/values.yaml
+++ b/charts/apisix/values.yaml
@@ -68,6 +68,9 @@ fullnameOverride: ""
gateway:
type: NodePort
+ # If you want to keep the client source IP, you can set this to Local.
+ # ref:
https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip
+ externalTrafficPolicy: Cluster
# type: LoadBalancer
# annotations:
# service.beta.kubernetes.io/aws-load-balancer-type: nlb