Ctrl K
ComunidadGuías…
GITHUB · ANALIZADO

ddup

ddup es una herramienta de monitorización que verifica la salud de servicios web y actualiza automáticamente registros DNS dinámicos hacia endpoints sanos. Soporta balanceo de carga mediante round-robin y failover para Azure, Cloudflare y OVH.

Ficha actualizada 25 sept 2026, 5:20 · upstream 25 sept 2026, 4:48 · release v0.5.1

Ver códigoProblemas y ayudaRepositorio ↗
00

Qué es ddup

Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.

ddup es una herramienta de monitorización que verifica la salud de servicios web y actualiza automáticamente registros DNS dinámicos hacia endpoints sanos. Soporta balanceo de carga mediante round-robin y failover para Azure, Cloudflare y OVH. Escrito en Go, ofrece bajo consumo de recursos y alta eficiencia en entornos de producción o desarrollo.

La herramienta actúa como un agente ligero que monitoriza la disponibilidad de aplicaciones conectando a URLs específicas. Cuando un endpoint deja de responder o falla las pruebas de salud configuradas, el sistema actualiza los registros DNS para redirigir el tráfico hacia réplicas funcionales. Esto permite una recuperación automática sin intervención manual del operador y mejora la resiliencia de la infraestructura.

Soporta tres proveedores de DNS principales: Azure DNS, Cloudflare y OVH, integrando sus APIs respectivas para la gestión dinámica de registros A y AAAA. Es ideal para arquitecturas de microservicios o despliegues en contenedores donde la continuidad del servicio es crítica. Se puede ejecutar como binario nativo, servicio systemd o mediante Docker/Podman con soporte multi-arquitectura (amd64, arm).

La configuración se gestiona mediante un archivo YAML flexible que define intervalos de comprobación, tiempos de espera y credenciales de autenticación seguras para cada proveedor. El sistema incluye opciones avanzadas como round-robin DNS para distribución equitativa del tráfico entre instancias sanas y logs estructurados JSON o texto según el entorno.

CASOS DE USO
  • Failover automático ante caídas de servicios
  • Balanceo de carga simple con round-robin DNS
  • Monitoreo de salud de microservicios internos
  • Gestión de DNS externo en infraestructura multi-nube
  • Actualización dinámica de registros para aplicaciones web
PUNTOS DESTACADOS
  • Escrito en Go para bajo consumo de recursos y alto rendimiento
  • Soporte nativo para Azure, Cloudflare y OVH
  • Imágenes Docker optimizadas para Linux (amd64, arm)
  • Configuración declarativa mediante archivo YAML estándar
  • Logs estructurados JSON o texto según entorno
PRECAUCIONES
  • No es un servidor DNS, requiere proveedor externo activo
  • Dependencia de la conectividad de red para health checks
  • Credenciales de API deben almacenarse externamente en config.yaml
  • Requiere configuración manual de endpoints de salud HTTP
  • Soporte limitado a registros A y AAAA (no CNAME o TXT)
VISUAL

Capturas del proyecto

Imágenes reales detectadas en la documentación del repositorio.

Screenshot of the ddup dashboard, showing the status of domains and their health
01

Perfil de infraestructura

Estimación inicial derivada del repositorio y de los servicios detectados.

CPU1 vCPUrecomendación inicial
MEMORIA1 GBRAM estimada
DISCO10 GBalmacenamiento base
COMPLEJIDADlownivel de operación
02

Despliegue detectado

Qué señales reales de instalación hemos encontrado.

Docker detectado

Guardar config.yaml fuera del contenedor con permisos restrictivos (ro). En Azure, asignar rol DNS Zone Contributor al principal antes de iniciar. Para Cloudflare/OVH, proteger tokens API mediante variables de entorno si la herramienta lo permite, aunque lee el YAML directamente por defecto. Usar intervalos cortos (ej. 30s) para failover rápido pero monitorizar logs para evitar saturación del proveedor DNS. Asegurar que los endpoints de salud sean accesibles desde la red donde corre ddup.

✓Dockerfile
—Compose
—One-click
03

Stack y dependencias

Componentes inferidos a partir de manifests, configuración y documentación.

FRAMEWORKS
Go
SERVICIOS
No detectados
BASES DE DATOS
No detectadas
PUERTOS
No detectados
05

Puede sustituir a

Relaciones detectadas por el análisis del repositorio y su categoría.

06

Experiencia real de la comunidad

Ayuda a contrastar la estimación automática con instalaciones reales.

Todavía no hay datos comunitarios para este proyecto.