Skip to content

External-DNS

Overview

External-DNS is a critical component of the ALTERNATIVE platform, automating DNS record management for applications and services. This automation is essential in our dynamic cloud environment, where service endpoints and IP addresses frequently change.

Key Features and Benefits

  1. Automated DNS Management:

    • Responds to changes in the platform environment in real-time
    • Ensures DNS entries are always accurate and up-to-date
  2. Dynamic IP Address Mapping:

    • Maps human-readable URLs to dynamically allocated IP addresses
    • Enhances user experience through consistent and intuitive service access
  3. Integration with Security Infrastructure:

    • Facilitates the issuance of TLS certificates by Cert-manager
    • Contributes to the platform's robust security posture
  4. Cloud-Native Compatibility:

    • Designed to work seamlessly in containerized and microservices architectures
    • Supports various DNS providers and Kubernetes ingress controllers

How External-DNS Works

  1. Monitoring: Continuously watches for changes in services and ingresses within the Kubernetes cluster
  2. Record Creation/Update: Automatically creates or updates DNS records based on the observed changes
  3. Synchronization: Ensures DNS records in external DNS providers match the desired state in the cluster

Integration with ALTERNATIVE Platform

DNS Server Integration

  • External-DNS interfaces directly with the platform's DNS server
  • Manages A, CNAME, and TXT records for services and ingresses

Cert-manager Synergy

  • Provides necessary DNS entries for TLS certificate issuance
  • Enables automated certificate management and renewal processes

Security Enhancement

  • Contributes to a secure communication environment
  • Supports DNSSEC for added DNS security (if configured)

Configuration and Customization

External-DNS in the ALTERNATIVE platform can be customized to:

  • Support specific DNS providers
  • Define record naming templates
  • Set up filters for managing specific subsets of services
  • Configure annotation-based customization of DNS records