blob: 37cbb0c4bc43debcb147f8bdd682284e626f5d40 [file] [log] [blame]
Mohammed Naser9ad0d462023-01-15 20:36:37 -05001# Default values for coredns.
2# This is a YAML-formatted file.
3# Declare variables to be passed into your templates.
4
5image:
6 repository: coredns/coredns
7 tag: "1.9.3"
8 pullPolicy: IfNotPresent
9 ## Optionally specify an array of imagePullSecrets.
10 ## Secrets must be manually created in the namespace.
11 ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
12 ##
13 # pullSecrets:
14 # - myRegistryKeySecretName
15
16replicaCount: 1
17
18resources:
19 limits:
20 cpu: 100m
21 memory: 128Mi
22 requests:
23 cpu: 100m
24 memory: 128Mi
25
26## Create HorizontalPodAutoscaler object.
27##
28# autoscaling:
29# minReplicas: 1
30# maxReplicas: 10
31# metrics:
32# - type: Resource
33# resource:
34# name: cpu
35# targetAverageUtilization: 60
36# - type: Resource
37# resource:
38# name: memory
39# targetAverageUtilization: 60
40
41rollingUpdate:
42 maxUnavailable: 1
43 maxSurge: 25%
44
45# Under heavy load it takes more that standard time to remove Pod endpoint from a cluster.
46# This will delay termination of our pod by `preStopSleep`. To make sure kube-proxy has
47# enough time to catch up.
48# preStopSleep: 5
49terminationGracePeriodSeconds: 30
50
51podAnnotations: {}
52# cluster-autoscaler.kubernetes.io/safe-to-evict: "false"
53
54serviceType: "ClusterIP"
55
56prometheus:
57 service:
58 enabled: false
59 annotations:
60 prometheus.io/scrape: "true"
61 prometheus.io/port: "9153"
62 monitor:
63 enabled: false
64 additionalLabels: {}
65 namespace: ""
66 interval: ""
67
68service:
69# clusterIP: ""
70# loadBalancerIP: ""
71# externalIPs: []
72# externalTrafficPolicy: ""
73 # The name of the Service
74 # If not set, a name is generated using the fullname template
75 name: ""
76 annotations: {}
77
78serviceAccount:
79 create: false
80 # The name of the ServiceAccount to use
81 # If not set and create is true, a name is generated using the fullname template
82 name: ""
83 annotations: {}
84
85rbac:
86 # If true, create & use RBAC resources
87 create: true
88 # If true, create and use PodSecurityPolicy
89 pspEnable: false
90 # The name of the ServiceAccount to use.
91 # If not set and create is true, a name is generated using the fullname template
92 # name:
93
94# isClusterService specifies whether chart should be deployed as cluster-service or normal k8s app.
95isClusterService: true
96
97# Optional priority class to be used for the coredns pods. Used for autoscaler if autoscaler.priorityClassName not set.
98priorityClassName: ""
99
100# Default zone is what Kubernetes recommends:
101# https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/#coredns-configmap-options
102servers:
103- zones:
104 - zone: .
105 port: 53
106 # If serviceType is nodePort you can specify nodePort here
107 # nodePort: 30053
108 plugins:
109 - name: errors
110 # Serves a /health endpoint on :8080, required for livenessProbe
111 - name: health
112 configBlock: |-
113 lameduck 5s
114 # Serves a /ready endpoint on :8181, required for readinessProbe
115 - name: ready
116 # Required to query kubernetes API for data
117 - name: kubernetes
118 parameters: cluster.local in-addr.arpa ip6.arpa
119 configBlock: |-
120 pods insecure
121 fallthrough in-addr.arpa ip6.arpa
122 ttl 30
123 # Serves a /metrics endpoint on :9153, required for serviceMonitor
124 - name: prometheus
125 parameters: 0.0.0.0:9153
126 - name: forward
127 parameters: . /etc/resolv.conf
128 - name: cache
129 parameters: 30
130 - name: loop
131 - name: reload
132 - name: loadbalance
133
134# Complete example with all the options:
135# - zones: # the `zones` block can be left out entirely, defaults to "."
136# - zone: hello.world. # optional, defaults to "."
137# scheme: tls:// # optional, defaults to "" (which equals "dns://" in CoreDNS)
138# - zone: foo.bar.
139# scheme: dns://
140# use_tcp: true # set this parameter to optionally expose the port on tcp as well as udp for the DNS protocol
141# # Note that this will not work if you are also exposing tls or grpc on the same server
142# port: 12345 # optional, defaults to "" (which equals 53 in CoreDNS)
143# plugins: # the plugins to use for this server block
144# - name: kubernetes # name of plugin, if used multiple times ensure that the plugin supports it!
145# parameters: foo bar # list of parameters after the plugin
146# configBlock: |- # if the plugin supports extra block style config, supply it here
147# hello world
148# foo bar
149
150# Extra configuration that is applied outside of the default zone block.
151# Example to include additional config files, which may come from extraVolumes:
152# extraConfig:
153# import:
154# parameters: /opt/coredns/*.conf
155extraConfig: {}
156
157# To use the livenessProbe, the health plugin needs to be enabled in CoreDNS' server config
158livenessProbe:
159 enabled: true
160 initialDelaySeconds: 60
161 periodSeconds: 10
162 timeoutSeconds: 5
163 failureThreshold: 5
164 successThreshold: 1
165# To use the readinessProbe, the ready plugin needs to be enabled in CoreDNS' server config
166readinessProbe:
167 enabled: true
168 initialDelaySeconds: 30
169 periodSeconds: 10
170 timeoutSeconds: 5
171 failureThreshold: 5
172 successThreshold: 1
173
174# expects input structure as per specification https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.11/#affinity-v1-core
175# for example:
176# affinity:
177# nodeAffinity:
178# requiredDuringSchedulingIgnoredDuringExecution:
179# nodeSelectorTerms:
180# - matchExpressions:
181# - key: foo.bar.com/role
182# operator: In
183# values:
184# - master
185affinity: {}
186
187# Node labels for pod assignment
188# Ref: https://kubernetes.io/docs/user-guide/node-selection/
189nodeSelector: {}
190
191# expects input structure as per specification https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.11/#toleration-v1-core
192# for example:
193# tolerations:
194# - key: foo.bar.com/role
195# operator: Equal
196# value: master
197# effect: NoSchedule
198tolerations: []
199
200# https://kubernetes.io/docs/tasks/run-application/configure-pdb/#specifying-a-poddisruptionbudget
201podDisruptionBudget: {}
202
203# configure custom zone files as per https://coredns.io/2017/05/08/custom-dns-entries-for-kubernetes/
204zoneFiles: []
205# - filename: example.db
206# domain: example.com
207# contents: |
208# example.com. IN SOA sns.dns.icann.com. noc.dns.icann.com. 2015082541 7200 3600 1209600 3600
209# example.com. IN NS b.iana-servers.net.
210# example.com. IN NS a.iana-servers.net.
211# example.com. IN A 192.168.99.102
212# *.example.com. IN A 192.168.99.102
213
214# optional array of extra volumes to create
215extraVolumes: []
216# - name: some-volume-name
217# emptyDir: {}
218# optional array of mount points for extraVolumes
219extraVolumeMounts: []
220# - name: some-volume-name
221# mountPath: /etc/wherever
222
223# optional array of secrets to mount inside coredns container
224# possible usecase: need for secure connection with etcd backend
225extraSecrets: []
226# - name: etcd-client-certs
227# mountPath: /etc/coredns/tls/etcd
228# - name: some-fancy-secret
229# mountPath: /etc/wherever
230
231# Custom labels to apply to Deployment, Pod, Configmap, Service, ServiceMonitor. Including autoscaler if enabled.
232customLabels: {}
233
234# Custom annotations to apply to Deployment, Pod, Configmap, Service, ServiceMonitor. Including autoscaler if enabled.
235customAnnotations: {}
236
237## Alternative configuration for HPA deployment if wanted
238#
239hpa:
240 enabled: false
241 minReplicas: 1
242 maxReplicas: 2
243 metrics: {}
244
245## Configue a cluster-proportional-autoscaler for coredns
246# See https://github.com/kubernetes-incubator/cluster-proportional-autoscaler
247autoscaler:
248 # Enabled the cluster-proportional-autoscaler
249 enabled: false
250
251 # Number of cores in the cluster per coredns replica
252 coresPerReplica: 256
253 # Number of nodes in the cluster per coredns replica
254 nodesPerReplica: 16
255 # Min size of replicaCount
256 min: 0
257 # Max size of replicaCount (default of 0 is no max)
258 max: 0
259 # Whether to include unschedulable nodes in the nodes/cores calculations - this requires version 1.8.0+ of the autoscaler
260 includeUnschedulableNodes: false
261 # If true does not allow single points of failure to form
262 preventSinglePointFailure: true
263
264 ## Optionally specify some extra flags to pass to cluster-proprtional-autoscaler.
265 ## Useful for e.g. the nodelabels flag.
266 # customFlags:
267 # - --nodelabels=topology.kubernetes.io/zone=us-east-1a
268
269 image:
270 repository: k8s.gcr.io/cpa/cluster-proportional-autoscaler
271 tag: "1.8.5"
272 pullPolicy: IfNotPresent
273 ## Optionally specify an array of imagePullSecrets.
274 ## Secrets must be manually created in the namespace.
275 ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
276 ##
277 # pullSecrets:
278 # - myRegistryKeySecretName
279
280 # Optional priority class to be used for the autoscaler pods. priorityClassName used if not set.
281 priorityClassName: ""
282
283 # expects input structure as per specification https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.11/#affinity-v1-core
284 affinity: {}
285
286 # Node labels for pod assignment
287 # Ref: https://kubernetes.io/docs/user-guide/node-selection/
288 nodeSelector: {}
289
290 # expects input structure as per specification https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.11/#toleration-v1-core
291 tolerations: []
292
293 # resources for autoscaler pod
294 resources:
295 requests:
296 cpu: "20m"
297 memory: "10Mi"
298 limits:
299 cpu: "20m"
300 memory: "10Mi"
301
302 # Options for autoscaler configmap
303 configmap:
304 ## Annotations for the coredns-autoscaler configmap
305 # i.e. strategy.spinnaker.io/versioned: "false" to ensure configmap isn't renamed
306 annotations: {}
307
308 # Enables the livenessProbe for cluster-proportional-autoscaler - this requires version 1.8.0+ of the autoscaler
309 livenessProbe:
310 enabled: true
311 initialDelaySeconds: 10
312 periodSeconds: 5
313 timeoutSeconds: 5
314 failureThreshold: 3
315 successThreshold: 1
316
317deployment:
318 enabled: true
319 name: ""
320 ## Annotations for the coredns deployment
321 annotations: {}