PHAROS

Coming from CoreDNS? Bring your Corefile.

Pharos was built to be a drop-in swap. Your config, plugins, probes and dashboards all carry over. Here’s what changes, and how to make the move.

What changes? Hardly anything.

The stuff you spent time getting right stays right. The list of things to touch is short.

Stays the same

Your Corefile
Same syntax, same meaning. If CoreDNS 1.15 takes it, so does Pharos, and it turns down the same broken ones.
Your plugins
All 62 built-in plugins keep their names and their options.
Your probes
Same ports, same /health and /ready answers. Your liveness checks won’t notice.
Your metrics
Same names, labels and histogram buckets. Only the prefix moves.

Changes

The image
ghcr.io/itsmeyaw/pharos:1.0.0
Flag spelling
POSIX style, so -conf becomes --conf. Old flags tell you their new name.
Metric prefix
pharos_ instead of coredns_.
RFC corner cases
Where CoreDNS breaks an RFC MUST and real setups don’t rely on it, Pharos follows the RFC. Each case is written down.

Switch in three steps.

Try it on a staging cluster first if you like. Rolling back is the same diff, the other way round.

  1. Ask Pharos about your Corefile

    pharos check loads your config without serving anything and lists every known difference that applies to it.

    $ docker run --rm \-v "$PWD/Corefile:/etc/pharos/pharos.conf:ro" \ghcr.io/itsmeyaw/pharos:1.0.0 check
  2. Swap the image

    Point your Deployment at Pharos and fix the one flag. Ports, volumes and probes stay exactly as they are.

      containers:  - name: coredns-   image: registry.k8s.io/coredns/coredns:v1.15.0+   image: ghcr.io/itsmeyaw/pharos:1.0.0-   args: [ "-conf", "/etc/coredns/Corefile" ]+   args: [ "--conf", "/etc/coredns/Corefile" ]
  3. Rename your dashboards

    A find-and-replace on the prefix in your Grafana panels and alert rules, and the graphs pick up where they left off.

    - coredns_dns_requests_total+ pharos_dns_requests_total- coredns_cache_hits_total+ pharos_cache_hits_total

Want every detail? Read the migration guide and the compatibility notes.