dns: point rohana at the private path from inside the cluster (#0088)
rohana.axion1337.de resolves publicly to a Hetzner address, while the host is reachable over the private network at 10.0.0.3 - and serves a valid Let's Encrypt certificate for that very name there, measured with full verification. Without an internal pointer every access from the cluster leaves it for no reason and needs an outbound exception. A dedicated zone rather than a second hosts block: the Corefile already runs hosts /etc/coredns/NodeHosts in the main block, so a second one there would collide. The .server import at the end of the Corefile takes a zone of its own, and the reload plugin picks the change up without a restart. The price is in the file, not in a commit message nobody rereads: two paths become one. If 10.0.0.3 is down, rohana is unreachable from the cluster although the public route would work, and the failure looks like "Gitea is gone" rather than "the private path is gone". The comment says where to look first. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01F2Q4Ri8NGwyTZzScvKnWFM
This commit is contained in:
co-authored by
Claude Opus 5
parent
3fbc268e84
commit
69c9ef13a1
@@ -0,0 +1,36 @@
|
||||
# Interner Zeiger auf rohana (#0088).
|
||||
#
|
||||
# rohana.axion1337.de loest oeffentlich auf 188.245.193.243 auf. Der Host ist
|
||||
# aber ueber das private Netz unter 10.0.0.3 erreichbar UND traegt dort ein
|
||||
# gueltiges Let's-Encrypt-Zertifikat fuer genau diesen Namen - am 2026-08-21
|
||||
# mit voller Zertifikatspruefung nachgemessen. Ohne diesen Zeiger verlaesst
|
||||
# jeder Zugriff aus dem Cluster (Gitea-Push der TURN-Rotation, git-storage von
|
||||
# Wiki.js) unnoetig den Cluster und braucht eine Egress-Ausnahme nach draussen.
|
||||
#
|
||||
# Warum eine eigene Zone und kein zweiter `hosts`-Block: Die Corefile fuehrt
|
||||
# bereits `hosts /etc/coredns/NodeHosts` im Hauptblock. Ein zweiter dort waere
|
||||
# ein Konflikt, deshalb ein `.server`-Import mit eigener Zone (Corefile,
|
||||
# letzte Zeile). `reload` im Hauptblock zieht Aenderungen selbsttaetig nach -
|
||||
# ein Neustart von CoreDNS ist nicht noetig.
|
||||
#
|
||||
# ⚠️ PREIS: Aus zwei Wegen wird einer. Faellt 10.0.0.3 aus, ist rohana aus dem
|
||||
# Cluster nicht mehr erreichbar, obwohl der oeffentliche Weg funktionieren
|
||||
# wuerde - und der Fehler sieht aus wie "Gitea ist weg", nicht wie "der private
|
||||
# Pfad ist weg". Wer hier sucht: erst `nslookup rohana.axion1337.de` aus einem
|
||||
# Pod, dann diese ConfigMap.
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: coredns-custom
|
||||
namespace: kube-system
|
||||
data:
|
||||
# Dateiname MUSS auf .server enden - nur die werden am Ende der Corefile
|
||||
# importiert. `.override` liefe im Hauptblock und damit in den Konflikt oben.
|
||||
rohana.server: |
|
||||
rohana.axion1337.de:53 {
|
||||
hosts {
|
||||
10.0.0.3 rohana.axion1337.de
|
||||
fallthrough
|
||||
}
|
||||
forward . /etc/resolv.conf
|
||||
}
|
||||
@@ -1,6 +1,7 @@
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
resources:
|
||||
- coredns-custom.yaml
|
||||
- ns-cert-manager.yaml
|
||||
- ns-matrix.yaml
|
||||
- cert-manager-repo.yaml
|
||||
|
||||
Reference in New Issue
Block a user