From 6affc5d8f4c72427c24f26648744c0d8291fa3fc Mon Sep 17 00:00:00 2001 From: Ben Vincent Date: Fri, 3 Jul 2026 23:08:06 +1000 Subject: [PATCH] Deploy binddns-resolver (recursive resolver cluster) (#221) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Part of the bind rollout split. **Merge #219 (bind-operator) first** — stacked on it; diff reduces to the binddns-resolver files once #219 merges. ## Why The recursive-resolver tier (replaces 3x Puppet only-resolver servers): 3 identical recursive servers with upstream forwarders. ## Changes - `apps/base/binddns-resolver`: resolver `BindCluster` (3 replicas, forwarders, LoadBalancer/PureLB), namespace - au-syd1 `binddns-resolver` overlay ## Deploy impact Creates the `binddns-resolver` StatefulSet + LoadBalancer once merged. Reviewed-on: https://git.unkin.net/unkin/argocd-apps/pulls/221 Co-authored-by: Ben Vincent Co-committed-by: Ben Vincent --- apps/base/ns-resolver/cluster.yaml | 29 +++++++++++++++++++ apps/base/ns-resolver/kustomization.yaml | 7 +++++ apps/base/ns-resolver/namespace.yaml | 5 ++++ .../au-syd1/ns-resolver/kustomization.yaml | 6 ++++ 4 files changed, 47 insertions(+) create mode 100644 apps/base/ns-resolver/cluster.yaml create mode 100644 apps/base/ns-resolver/kustomization.yaml create mode 100644 apps/base/ns-resolver/namespace.yaml create mode 100644 apps/overlays/au-syd1/ns-resolver/kustomization.yaml diff --git a/apps/base/ns-resolver/cluster.yaml b/apps/base/ns-resolver/cluster.yaml new file mode 100644 index 0000000..3b32cd0 --- /dev/null +++ b/apps/base/ns-resolver/cluster.yaml @@ -0,0 +1,29 @@ +--- +# Recursive resolvers (replaces the 3x Puppet only-resolver servers). +# Three identical recursive servers; no zone replication. +apiVersion: bind.unkin.net/v1alpha1 +kind: BindCluster +metadata: + name: resolver + namespace: ns-resolver +spec: + mode: resolver + replicas: 3 + storageClassName: cephrbd-fast-delete + storageSize: 1Gi + service: + type: LoadBalancer + annotations: + purelb.io/service-group: common + purelb.io/addresses: 198.18.200.7 + external-dns.alpha.kubernetes.io/hostname: ns-resolver.k8s.syd1.au.unkin.net + forwarders: + - 1.1.1.1 + - 9.9.9.9 + resources: + requests: + cpu: 100m + memory: 128Mi + limits: + cpu: "1" + memory: 512Mi diff --git a/apps/base/ns-resolver/kustomization.yaml b/apps/base/ns-resolver/kustomization.yaml new file mode 100644 index 0000000..4bb26c2 --- /dev/null +++ b/apps/base/ns-resolver/kustomization.yaml @@ -0,0 +1,7 @@ +--- +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization + +resources: + - namespace.yaml + - cluster.yaml diff --git a/apps/base/ns-resolver/namespace.yaml b/apps/base/ns-resolver/namespace.yaml new file mode 100644 index 0000000..30ad134 --- /dev/null +++ b/apps/base/ns-resolver/namespace.yaml @@ -0,0 +1,5 @@ +--- +apiVersion: v1 +kind: Namespace +metadata: + name: ns-resolver diff --git a/apps/overlays/au-syd1/ns-resolver/kustomization.yaml b/apps/overlays/au-syd1/ns-resolver/kustomization.yaml new file mode 100644 index 0000000..71f958a --- /dev/null +++ b/apps/overlays/au-syd1/ns-resolver/kustomization.yaml @@ -0,0 +1,6 @@ +--- +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization + +resources: + - ../../../base/ns-resolver