Skip to content

Commit 3d02437

Browse files
committed
[breaking] deprecate dnsZone and edgeDnsZone chart values
PR #1845 introduced the possibility to configure multiple DNS zones. The intention was to be backwards compatible. However it forces uses to change the following helm values, as explained in #1858: * k8gb.dnsZoneNegTTL -> k8gb.dnsZones[0].dnsZoneNegTTL * k8gb.edgeDnsZone -> k8gb.dnsZones[0].zone * k8gb.dnsZone -> k8gb.dnsZones[0].domain During the community meeting of 02.04.2025 it was agreed to maintain the breaking change and clean up the deprecated values configuration. Fixes #1858 Signed-off-by: Andre Aguas <[email protected]>
1 parent 003653d commit 3d02437

17 files changed

+59
-86
lines changed

Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -262,6 +262,7 @@ deploy-k8gb-with-helm:
262262
kubectl -n k8gb create secret generic rfc2136 --from-literal=secret=96Ah/a2g0/nLeFGK+d/0tzQcccf9hCEIy34PoXX2Qg8= || true
263263
helm repo add --force-update k8gb https://www.k8gb.io
264264
cd chart/k8gb && helm dependency update
265+
265266
helm -n k8gb upgrade -i k8gb $(CHART) -f $(VALUES_YAML) -f $(call get-helm-values-file,$(CHART)) \
266267
$(call get-helm-args,$(CLUSTER_ID)) \
267268
$(call get-next-args,$(CHART),$(CLUSTER_ID)) \

chart/k8gb/templates/_helpers.tpl

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -96,10 +96,6 @@ k8gb-{{ index (split ":" (index (split ";" (include "k8gb.dnsZonesString" .)) "_
9696
{{- $entry := printf "%s:%s:%s" .zone .domain $dnsZoneNegTTL }}
9797
{{- $entries = append $entries $entry }}
9898
{{- end }}
99-
{{- if and (or (not .Values.k8gb.dnsZones) (eq (len .Values.k8gb.dnsZones) 0)) .Values.k8gb.dnsZone .Values.k8gb.edgeDNSZone }}
100-
{{- $extraEntry := printf "%s:%s:%s" .Values.k8gb.edgeDNSZone .Values.k8gb.dnsZone "300" }}
101-
{{- $entries = append $entries $extraEntry }}
102-
{{- end }}
10399
{{- join ";" $entries }}
104100
{{- end }}
105101

chart/k8gb/values.schema.json

Lines changed: 5 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -277,18 +277,10 @@
277277
"$ref": "#/definitions/k8gbDnsZone"
278278
}
279279
},
280-
"dnsZone": {
281-
"format": "idn-hostname",
282-
"minLength": 1
283-
},
284280
"dnsZoneNegTTL": {
285281
"type": "integer",
286282
"minimum": 0
287283
},
288-
"edgeDNSZone": {
289-
"format": "idn-hostname",
290-
"minLength": 1
291-
},
292284
"edgeDNSServers": {
293285
"type": "array",
294286
"items": {
@@ -345,24 +337,11 @@
345337
"type": "object"
346338
}
347339
},
348-
"oneOf": [
349-
{
350-
"required": [
351-
"clusterGeoTag",
352-
"extGslbClustersGeoTags",
353-
"edgeDNSServers",
354-
"dnsZone",
355-
"edgeDNSZone"
356-
]
357-
},
358-
{
359-
"required": [
360-
"clusterGeoTag",
361-
"extGslbClustersGeoTags",
362-
"edgeDNSServers",
363-
"dnsZones"
364-
]
365-
}
340+
"required": [
341+
"clusterGeoTag",
342+
"extGslbClustersGeoTags",
343+
"edgeDNSServers",
344+
"dnsZones"
366345
],
367346
"title": "k8gb"
368347
},

chart/k8gb/values.yaml

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,18 +16,11 @@ k8gb:
1616
# DNSZones - For backward compatibility, the dnsZone and edgeDNSZone fields are allowed; otherwise,
1717
# the dnsZones array is used. For valid values, use either dnsZone and edgeDNSZone or dnsZones.
1818
#
19-
# -- dnsZone: deprecated
20-
# dnsZone: "cloud.example.com"
21-
# -- edgeDNSZone: deprecated
22-
# edgeDNSZone: "example.com"
23-
# -- array of dns zones controlled by gslb§
19+
# -- array of dns zones controlled by gslb
2420
dnsZones:
2521
- zone: "example.com" # -- main zone which would contain gslb zone to delegate (same meaning as to edgeDNSZone)
2622
domain: "cloud.example.com" # -- domain controlled by gslb (same meaning as to dnsZone)
2723
dnsZoneNegTTL: 30 # -- Negative TTL for SOA record# -- host/ip[:port] format is supported here where port defaults to 53
28-
# - zone: "example.org" # -- main zone which would contain gslb zone to delegate (same meaning as to edgeDNSZone)
29-
# domain: "cloud.example.org" # -- domain controlled by gslb (same meaning as to dnsZone)
30-
# dnsZoneNegTTL: 50 # -- Negative TTL for SOA record# -- host/ip[:port] format is supported here where port defaults to 53
3124
edgeDNSServers:
3225
# -- use this DNS server as a main resolver to enable cross k8gb DNS based communication
3326
- "1.1.1.1"

deploy/helm/next.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
k8gb:
22
reconcileRequeueSeconds: 10
33
dnsZoneNegTTL: 10
4+
dnsZones:
5+
- dnsZoneNegTTL: 10
6+
zone: example.com
7+
domain: cloud.example.com
48
log:
59
format: simple
610
level: debug

docs/deploy_cloudflare.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,9 @@ Remember to change the zone-related values to point configuration to your own DN
3030

3131
```yaml
3232
k8gb:
33-
dnsZone: "cloudflare-test.k8gb.io"
34-
# -- main zone which would contain gslb zone to delegate
35-
edgeDNSZone: "k8gb.io" # main zone which would contain gslb zone to delegate
33+
dnsZones:
34+
- zone: "k8gb.io"
35+
domain: "cloudflare-test.k8gb.io"
3636
```
3737
3838
### Cloudflare-specific configuration

docs/examples/azure/k8gb/aks1-helm-values.yaml

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,14 @@
11
k8gb:
22
# -- dnsZone controlled by gslb
3-
dnsZone: "demo.k8gb-kubeconeu2023.com"
4-
# -- Negative TTL for SOA record
5-
dnsZoneNegTTL: 300
6-
# -- main zone which would contain gslb zone to delegate
7-
edgeDNSZone: "k8gb-kubeconeu2023.com" # main zone which would contain gslb zone to delegate
3+
dnsZones:
4+
- domain: "demo.k8gb-kubeconeu2023.com" # -- dnsZone controlled by gslb
5+
zone: "k8gb-kubeconeu2023.com" # -- main zone which would contain gslb zone to delegate
6+
dnsZoneNegTTL: 300 # -- Negative TTL for SOA record
87
# -- host/ip[:port] format is supported here where port defaults to 53
98
edgeDNSServers:
10-
# -- use these DNS server as a main resolver to enable cross k8gb DNS based communication
11-
- "1.1.1.1"
12-
- "8.8.8.8"
9+
# -- use these DNS server as a main resolver to enable cross k8gb DNS based communication
10+
- "1.1.1.1"
11+
- "8.8.8.8"
1312
# -- used for places where we need to distinguish between different Gslb instances
1413
clusterGeoTag: "uksouth"
1514
# -- comma-separated list of external gslb geo tags to pair with

docs/examples/azure/k8gb/aks2-helm-values.yaml

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,13 @@
11
k8gb:
2-
# -- dnsZone controlled by gslb
3-
dnsZone: "demo.k8gb-kubeconeu2023.com"
4-
# -- Negative TTL for SOA record
5-
dnsZoneNegTTL: 300
6-
# -- main zone which would contain gslb zone to delegate
7-
edgeDNSZone: "k8gb-kubeconeu2023.com" # main zone which would contain gslb zone to delegate
2+
dnsZones:
3+
- domain: "demo.k8gb-kubeconeu2023.com" # -- dnsZone controlled by gslb
4+
zone: "k8gb-kubeconeu2023.com" # -- main zone which would contain gslb zone to delegate
5+
dnsZoneNegTTL: 300 # -- Negative TTL for SOA record
86
# -- host/ip[:port] format is supported here where port defaults to 53
97
edgeDNSServers:
10-
# -- use these DNS server as a main resolver to enable cross k8gb DNS based communication
11-
- "1.1.1.1"
12-
- "8.8.8.8"
8+
# -- use these DNS server as a main resolver to enable cross k8gb DNS based communication
9+
- "1.1.1.1"
10+
- "8.8.8.8"
1311
# -- used for places where we need to distinguish between different Gslb instances
1412
clusterGeoTag: "francecentral"
1513
# -- comma-separated list of external gslb geo tags to pair with

docs/examples/cloudflare/k8gb-cluster-cloudflare-eu.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
k8gb:
2-
dnsZone: "cloudflare-test.k8gb.io"
3-
# -- main zone which would contain gslb zone to delegate
4-
edgeDNSZone: "k8gb.io" # main zone which would contain gslb zone to delegate
2+
dnsZones:
3+
- domain: "cloudflare-test.k8gb.io" # -- dnsZone controlled by gslb
4+
zone: "k8gb.io" # -- main zone which would contain gslb zone to delegate
55
# -- used for places where we need to distinguish between different Gslb instances
66
clusterGeoTag: "eu"
77
# -- comma-separated list of external gslb geo tags to pair with

docs/examples/cloudflare/k8gb-cluster-cloudflare-us.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
k8gb:
2-
dnsZone: "cloudflare-test.k8gb.io"
3-
# -- main zone which would contain gslb zone to delegate
4-
edgeDNSZone: "k8gb.io" # main zone which would contain gslb zone to delegate
2+
dnsZones:
3+
- domain: "cloudflare-test.k8gb.io" # -- dnsZone controlled by gslb
4+
zone: "k8gb.io" # -- main zone which would contain gslb zone to delegate
55
# -- used for places where we need to distinguish between different Gslb instances
66
clusterGeoTag: "us"
77
# -- comma-separated list of external gslb geo tags to pair with

docs/examples/ns1/k8gb-cluster-ns1-eu-west-1.yaml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
k8gb:
2-
dnsZone: "test.k8gb.io" # dnsZone controlled by gslb
3-
edgeDNSZone: "k8gb.io" # main zone which would contain gslb zone to delegate
2+
dnsZones:
3+
- domain: "test.k8gb.io" # -- dnsZone controlled by gslb
4+
zone: "k8gb.io" # -- main zone which would contain gslb zone to delegate
45
edgeDNSServer: "169.254.169.253" # external DNS server to be used for resolution
56
clusterGeoTag: "eu-west-1" # used for places where we need to distinguish between differnet Gslb instances
67
extGslbClustersGeoTags: "us-east-1" # comma-separated list of external gslb geo tags to pair with

docs/examples/ns1/k8gb-cluster-ns1-us-east-1.yaml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
k8gb:
2-
dnsZone: "test.k8gb.io" # dnsZone controlled by gslb
3-
edgeDNSZone: "k8gb.io" # main zone which would contain gslb zone to delegate
2+
dnsZones:
3+
- domain: "test.k8gb.io" # -- dnsZone controlled by gslb
4+
zone: "k8gb.io" # -- main zone which would contain gslb zone to delegate
45
edgeDNSServer: "169.254.169.253" # external DNS server to be used for resolution
56
clusterGeoTag: "us-east-1" # used for places where we need to distinguish between differnet Gslb instances
67
extGslbClustersGeoTags: "eu-west-1" # comma-separated list of external gslb geo tags to pair with

docs/examples/route53/k8gb/k8gb-cluster-eu-west-1.yaml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
k8gb:
2-
dnsZone: "test.k8gb.io" # dnsZone controlled by gslb
3-
edgeDNSZone: "k8gb.io" # main zone which would contain gslb zone to delegate
2+
dnsZones:
3+
- domain: "test.k8gb.io" # -- dnsZone controlled by gslb
4+
zone: "k8gb.io" # -- main zone which would contain gslb zone to delegate
45
edgeDNSServer: "169.254.169.253" # use this DNS server as a main resolver to enable cross k8gb DNS based communication
56
clusterGeoTag: "eu-west-1" # used for places where we need to distinguish between differnet Gslb instances
67
extGslbClustersGeoTags: "us-east-1" # comma-separated list of external gslb geo tags to pair with

docs/examples/route53/k8gb/k8gb-cluster-us-east-1.yaml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
k8gb:
2-
dnsZone: "test.k8gb.io" # dnsZone controlled by gslb
3-
edgeDNSZone: "k8gb.io" # main zone which would contain gslb zone to delegate
2+
dnsZones:
3+
- domain: "test.k8gb.io" # -- dnsZone controlled by gslb
4+
zone: "k8gb.io" # -- main zone which would contain gslb zone to delegate
45
edgeDNSServer: "169.254.169.253" # use this DNS server as a main resolver to enable cross k8gb DNS based communication
56
clusterGeoTag: "us-east-1" # used for places where we need to distinguish between differnet Gslb instances
67
extGslbClustersGeoTags: "eu-west-1" # comma-separated list of external gslb geo tags to pair with

docs/examples/windowsdns/k8gb/aks1-helm-values.yaml

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,10 @@ k8gb:
33
deployCrds: true
44
deployRbac: true
55
# -- dns zone that will be managed by CoreDNS
6-
dnsZone: "global.k8gb.local"
7-
# -- Negative TTL for SOA record
8-
dnsZoneNegTTL: 300
9-
# -- main zone which would contain gslb zone to delegate
10-
edgeDNSZone: "k8gb.local"
6+
dnsZones:
7+
- domain: "global.k8gb.local" # -- dnsZone controlled by gslb
8+
zone: "k8gb.local" # -- main zone which would contain gslb zone to delegate
9+
dnsZoneNegTTL: 300 # -- Negative TTL for SOA record
1110
# -- host/ip[:port] format is supported here where port defaults to 53
1211
edgeDNSServers:
1312
# -- use this DNS server as a main resolver to enable cross k8gb DNS based communication
@@ -78,4 +77,4 @@ rfc2136:
7877
gssTsigCreds:
7978
- kerberos-username: k8gb
8079
- kerberos-password: asdfkuj#f8guh1
81-
- kerberos-realm: k8gb.local
80+
- kerberos-realm: k8gb.local

docs/examples/windowsdns/k8gb/aks2-helm-values.yaml

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,10 @@ k8gb:
33
deployCrds: true
44
deployRbac: true
55
# -- dns zone that will be managed by CoreDNS
6-
dnsZone: "global.k8gb.local"
7-
# -- Negative TTL for SOA record
8-
dnsZoneNegTTL: 300
9-
# -- main zone which would contain gslb zone to delegate
10-
edgeDNSZone: "k8gb.local"
6+
dnsZones:
7+
- domain: "global.k8gb.local" # -- dnsZone controlled by gslb
8+
zone: "k8gb.local" # -- main zone which would contain gslb zone to delegate
9+
dnsZoneNegTTL: 300 # -- Negative TTL for SOA record
1110
# -- host/ip[:port] format is supported here where port defaults to 53
1211
edgeDNSServers:
1312
# -- use this DNS server as a main resolver to enable cross k8gb DNS based communication
@@ -78,4 +77,4 @@ rfc2136:
7877
gssTsigCreds:
7978
- kerberos-username: k8gb
8079
- kerberos-password: asdfkuj#f8guh1
81-
- kerberos-realm: K8GB.LOCAL
80+
- kerberos-realm: K8GB.LOCAL

docs/rancher.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,9 @@ helm:
2121
releaseName: k8gb
2222
values:
2323
k8gb:
24-
dnsZone: global.fleet.clusterLabels.k8gb-dnsZone
25-
edgeDNSZone: "cloud.example.com"
24+
dnsZones:
25+
- zone: cloud.example.com
26+
domain: global.fleet.clusterLabels.k8gb-dnsZone
2627
edgeDNSServers:
2728
- "1.2.3.4"
2829
- "5.6.7.8"

0 commit comments

Comments
 (0)