# Default values for coredns. # This is a YAML-formatted file. # Declare variables to be passed into your templates. image: repository: coredns/coredns tag: "1.6.4" pullPolicy: IfNotPresent replicaCount: 1 resources: limits: cpu: 100m memory: 128Mi requests: cpu: 100m memory: 128Mi serviceType: "ClusterIP" prometheus: monitor: enabled: true additionalLabels: {} namespace: "" service: clusterIP: 10.0.0.254 # loadBalancerIP: "" # externalTrafficPolicy: "" # annotations: # prometheus.io/scrape: "true" # prometheus.io/port: "9153" serviceAccount: create: true # The name of the ServiceAccount to use # If not set and create is true, a name is generated using the fullname template name: rbac: # If true, create & use RBAC resources create: true # If true, create and use PodSecurityPolicy pspEnable: false # The name of the ServiceAccount to use. # If not set and create is true, a name is generated using the fullname template # name: # isClusterService specifies whether chart should be deployed as cluster-service or normal k8s app. isClusterService: true # Optional priority class to be used for the coredns pods priorityClassName: "" servers: - zones: - zone: . port: 53 plugins: - name: cache parameters: 30 - name: errors # Serves a /health endpoint on :8080, required for livenessProbe - name: health # Serves a /ready endpoint on :8181, required for readinessProbe - name: ready # Required to query kubernetes API for data - name: kubernetes parameters: @cluster@.local - name: loadbalance parameters: round_robin # Serves a /metrics endpoint on :9153, required for serviceMonitor - name: prometheus parameters: 0.0.0.0:9153 - name: forward parameters: . /etc/resolv.conf # Complete example with all the options: # - zones: # the `zones` block can be left out entirely, defaults to "." # - zone: hello.world. # optional, defaults to "." # scheme: tls:// # optional, defaults to "" (which equals "dns://" in CoreDNS) # - zone: foo.bar. # scheme: dns:// # use_tcp: true # set this parameter to optionally expose the port on tcp as well as udp for the DNS protocol # # Note that this will not work if you are also exposing tls or grpc on the same server # port: 12345 # optional, defaults to "" (which equals 53 in CoreDNS) # plugins: # the plugins to use for this server block # - name: kubernetes # name of plugin, if used multiple times ensure that the plugin supports it! # parameters: foo bar # list of parameters after the plugin # configBlock: |- # if the plugin supports extra block style config, supply it here # hello world # foo bar # expects input structure as per specification https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.11/#affinity-v1-core # for example: # affinity: # nodeAffinity: # requiredDuringSchedulingIgnoredDuringExecution: # nodeSelectorTerms: # - matchExpressions: # - key: foo.bar.com/role # operator: In # values: # - master affinity: {} # Node labels for pod assignment # Ref: https://kubernetes.io/docs/user-guide/node-selection/ nodeSelector: {} # expects input structure as per specification https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.11/#toleration-v1-core # for example: # tolerations: # - key: foo.bar.com/role # operator: Equal # value: master # effect: NoSchedule tolerations: [] # configure custom zone files as per https://coredns.io/2017/05/08/custom-dns-entries-for-kubernetes/ zoneFiles: [] # - filename: example.db # domain: example.com # contents: | # example.com. IN SOA sns.dns.icann.com. noc.dns.icann.com. 2015082541 7200 3600 1209600 3600 # example.com. IN NS b.iana-servers.net. # example.com. IN NS a.iana-servers.net. # example.com. IN A 192.168.99.102 # *.example.com. IN A 192.168.99.102 # optonal array of secrets to mount inside coredns container # possible usecase: need for secure connection with etcd backend extraSecrets: [] # - name: etcd-client-certs # mountPath: /etc/coredns/tls/etcd # - name: some-fancy-secret # mountPath: /etc/wherever