external-dns

Synchronize Kubernetes DNS records with external providers via External-DNS.

7|1|Updated Jul 12, 2026
One-click install
npx skills add https://github.com/julianobarbosa/claude-code-skills --skill external-dns
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: external-dns
Source: https://github.com/julianobarbosa/claude-code-skills/tree/main/skills/external-dns-skill
Command: npx skills add https://github.com/julianobarbosa/claude-code-skills --skill external-dns

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires curl, kubectl, jq, and includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill provides guidance for configuring External-DNS across multiple providers (Azure DNS, Cloudflare, AWS Route53, Google Cloud DNS) including token-based authentication, DNS record management, and GitOps patterns.

Core Features & Use Cases

  • Provider coverage: Azure, Cloudflare, AWS, GCP integration patterns.
  • DNS record management: Create, update, delete, and query DNS records from Kubernetes.
  • GitOps alignment: Helm-based deployments and declarative control.

Quick Start

Deploy External-DNS with Cloudflare as the DNS provider and watch for automatic DNS record creation from Ingress resources.

Frequently Asked Questions about external-dns

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I automate DNS record creation from Kubernetes services and ingresses?

External-DNS automates DNS record synchronization by watching Kubernetes resources and creating corresponding DNS records in your provider. It supports Azure DNS, Cloudflare, AWS Route53, and Google Cloud DNS, eliminating manual DNS management when services are deployed or updated.

Can I use External-DNS with Cloudflare and Kubernetes together?

Yes, External-DNS integrates Cloudflare as a DNS provider for Kubernetes clusters. It manages DNS records declaratively—creating, updating, and deleting records as ingress and service resources change, with token-based authentication for secure API access.

What DNS providers does External-DNS support in Kubernetes?

External-DNS supports Azure DNS, Cloudflare, AWS Route53, and Google Cloud DNS. Each provider requires specific credentials and configuration, but the synchronization workflow remains consistent across all four, allowing multi-cloud DNS automation.

How do I deploy External-DNS with GitOps and ArgoCD?

External-DNS deploys via Helm charts with declarative provider-specific credentials, enabling GitOps workflows. ArgoCD can manage the External-DNS deployment itself, synchronizing DNS configuration as code alongside your infrastructure.

What Kubernetes permissions and RBAC does External-DNS need?

External-DNS requires RBAC roles to watch services and ingresses, read DNS ownership via TXT records, and write records to your DNS provider. IAM permissions vary by provider but follow the principle of least privilege for both Kubernetes and DNS API access.

Does External-DNS work for production environments at scale?

Yes, External-DNS is production-ready with interval-controlled synchronization, upsert-only semantics to prevent data loss, TXT ownership records to prevent conflicts, and support for multi-provider setups. It scales with Kubernetes cluster size and DNS change frequency.