- Helm chart: Primary и Secondary Deployment, kube-vip LoadBalancer сервисы (UDP+TCP :53), ClusterIP для Web UI, PVC (ReadWriteOnce), Secret, Ingress - CronJob sync (*/5 мин): Python sync.py опрашивает Technitium REST API, создаёт Secondary зоны на secondary и вызывает forceSyncZone для каждой зоны - ExternalDNS (disabled по умолчанию): RFC 2136 DDNS для автоматических DNS-записей из Ingress - Ansible role: validate, namespace, Helm deploy, cleanup secrets, summary с Keenetic-инструкцией - Интеграция: Makefile, playbooks/addons.yml, group_vars/all/addons.yml, vault.yml.example - README с архитектурой, Keenetic-конфигурацией и troubleshooting
13 lines
332 B
YAML
13 lines
332 B
YAML
{{- if and .Values.sync.enabled .Values.secondary.enabled }}
|
|
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: {{ include "technitium-dns.name" . }}-sync
|
|
namespace: {{ .Release.Namespace }}
|
|
labels:
|
|
{{- include "technitium-dns.labels" . | nindent 4 }}
|
|
data:
|
|
sync.py: |
|
|
{{ .Files.Get "files/sync.py" | indent 4 }}
|
|
{{- end }}
|