--- # https://docs.k3s.io/helm apiVersion: helm.cattle.io/v1 kind: HelmChart metadata: name: coredns namespace: kube-system spec: # renovate: datasource=helm repo: https://coredns.github.io/helm chart: coredns version: 1.29.0 targetNamespace: kube-system bootstrap: true valuesContent: |- fullnameOverride: coredns replicaCount: 2 k8sAppLabelOverride: kube-dns service: name: kube-dns clusterIP: {{ k3s_server['service-cidr'] | ansible.utils.nthhost(10) }} serviceAccount: create: true deployment: annotations: reloader.stakater.com/auto: "true" servers: - zones: - zone: . scheme: dns:// use_tcp: true port: 53 plugins: - name: log - name: errors - name: health configBlock: |- lameduck 5s - name: ready - name: kubernetes parameters: cluster.local in-addr.arpa ip6.arpa configBlock: |- pods insecure fallthrough in-addr.arpa ip6.arpa ttl 30 - name: prometheus parameters: 0.0.0.0:9153 - name: forward parameters: . /etc/resolv.conf - name: cache parameters: 30 - name: loop - name: reload - name: loadbalance affinity: nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchExpressions: - key: node-role.kubernetes.io/control-plane operator: Exists tolerations: - key: CriticalAddonsOnly operator: Exists - key: node-role.kubernetes.io/control-plane operator: Exists effect: NoSchedule - key: node-role.kubernetes.io/master operator: Exists effect: NoSchedule topologySpreadConstraints: - maxSkew: 1 topologyKey: kubernetes.io/hostname whenUnsatisfiable: DoNotSchedule labelSelector: matchLabels: app.kubernetes.io/instance: coredns