108 lines
3.2 KiB
YAML
108 lines
3.2 KiB
YAML
|
replicaCount: 3
|
||
|
|
||
|
servers:
|
||
|
- zones:
|
||
|
- zone: .
|
||
|
port: 53
|
||
|
# If serviceType is nodePort you can specify nodePort here
|
||
|
# nodePort: 30053
|
||
|
# hostPort: 53
|
||
|
plugins:
|
||
|
- name: errors
|
||
|
# Serves a /health endpoint on :8080, required for livenessProbe
|
||
|
- name: health
|
||
|
configBlock: |-
|
||
|
lameduck 5s
|
||
|
# Serves a /ready endpoint on :8181, required for readinessProbe
|
||
|
- name: ready
|
||
|
# Required to query kubernetes API for data
|
||
|
- name: kubernetes
|
||
|
parameters: cluster.local in-addr.arpa ip6.arpa
|
||
|
configBlock: |-
|
||
|
pods insecure
|
||
|
fallthrough in-addr.arpa ip6.arpa
|
||
|
ttl 30
|
||
|
- name: transfer
|
||
|
configBlock: |-
|
||
|
to *
|
||
|
- name: k8s_external
|
||
|
parameters: k
|
||
|
configBlock: |-
|
||
|
fallthrough
|
||
|
# Serves a /metrics endpoint on :9153, required for serviceMonitor
|
||
|
- name: prometheus
|
||
|
parameters: 0.0.0.0:9153
|
||
|
#- name: k8s_gateway
|
||
|
# parameters: cluster.gateway
|
||
|
# configBlock: |-
|
||
|
# resources Ingress
|
||
|
# ttl 10
|
||
|
|
||
|
# individual hosts (full domains but still just hosts)
|
||
|
- {"parameters": "IN A harbor.strudelline.net", "configBlock": "answer \"{{ .Name }} 60 IN A 172.16.17.115\"", "name": "template"}
|
||
|
- {"parameters": "IN A frigate.strudelline.net", "configBlock": "answer \"{{ .Name }} 60 IN A 172.16.17.33\"", "name": "template"}
|
||
|
#- {"parameters": "IN A email.strudelline.net", "configBlock": "answer \"{{ .Name }} 60 IN CNAME mailgun.org.\"", "name": "template"}
|
||
|
#- {"parameters": "IN A pbx.strudelline.net", "configBlock": "answer \"{{ .Name }} 60 IN A 172.16.56.1\"", "name": "template"}
|
||
|
# werts.us
|
||
|
- name: template
|
||
|
parameters: IN A werts.us
|
||
|
configBlock: answer "{{ .Name }} 60 IN A 172.16.17.80"
|
||
|
# minio.strudelline.net
|
||
|
- name: template
|
||
|
parameters: IN A minio.strudelline.net
|
||
|
configBlock: answer "{{ .Name }} 60 IN A 172.16.17.80"
|
||
|
# cascade.strudelline.net
|
||
|
- name: template
|
||
|
parameters: IN A cascade.strudelline.net
|
||
|
configBlock: |
|
||
|
match ^cascade[.]strudelline[.]net[.]$
|
||
|
answer "{{ .Name }} 60 IN A 172.16.34.1"
|
||
|
answer "{{ .Name }} 60 IN A 172.16.33.1"
|
||
|
fallthrough
|
||
|
# *.strudelline.net
|
||
|
- name: template
|
||
|
parameters: IN A strudelline.net
|
||
|
configBlock: |
|
||
|
match ^(?P<name>[^.]*)[.]strudelline[.]net[.]$
|
||
|
answer "{{ .Name }} 60 IN A 172.16.17.80"
|
||
|
fallthrough
|
||
|
# BYPASS FAMILY FILTER FOR SOME SITES
|
||
|
- name: forward
|
||
|
parameters: myrunningman.com 172.16.1.53:153
|
||
|
# *.cascade.strudelline.net
|
||
|
- name: forward
|
||
|
parameters: in-addr.arpa 172.16.33.1 172.16.34.1
|
||
|
- name: forward
|
||
|
parameters: cascade.strudelline.net 172.16.33.1 172.16.34.1
|
||
|
- name: forward
|
||
|
parameters: . 172.16.1.53
|
||
|
configBlock: |
|
||
|
force_tcp
|
||
|
- name: loop
|
||
|
- name: reload
|
||
|
- name: nsid
|
||
|
parameters: "coredns-ext"
|
||
|
- name: cache
|
||
|
parameters: 30
|
||
|
- name: cancel
|
||
|
- name: whoami
|
||
|
- name: loadbalance
|
||
|
- name: log
|
||
|
- name: minimal
|
||
|
|
||
|
serviceType: LoadBalancer
|
||
|
service:
|
||
|
annotations:
|
||
|
metallb.universe.tf/allow-shared-ip: 172.16.1.9
|
||
|
metallb.universe.tf/loadBalancerIPs: 172.16.1.9
|
||
|
|
||
|
isClusterService: false
|
||
|
|
||
|
#podAnnotations:
|
||
|
# k8s.v1.cni.cncf.io/networks: |
|
||
|
# [{
|
||
|
# "namespace": "cascade",
|
||
|
# "name": "br0-static",
|
||
|
# "ips": ["172.16.1.9/12"]
|
||
|
# }]
|