Skip to content

DNS Cluster

The DNS Cluster unifies DNS across every server: every zone the hub serves can share one set of nameservers and a hub-generated SOA, no matter which server actually hosts the domain.

DNS Cluster - Settings

Overview

URL: /admin/dns-cluster - under Cluster → DNS Cluster

Unified nameservers for every zone served by the hub.

The page has three tabs: Settings, Slave Servers, and External Sources.

Settings

Defines the cluster nameservers applied to every synced zone.

Every synced zone gets these NS records and a hub-generated SOA, regardless of which server hosts the domain.

FieldDescription
Enable DNS clusterMaster toggle. When disabled, zones are synced with their original records.
Primary nameserver (NS1)First cluster nameserver.
Secondary nameserver (NS2)Second cluster nameserver.
Nameserver 3 (NS3)Optional; add one NS per slave server in the cluster (up to 4).
Nameserver 4 (NS4)Optional fourth nameserver.
SOA contactOptional; defaults to hostmaster@<zone domain>.

Actions: Save applies the configuration; Resync All Zones re-pushes every zone with the current cluster settings.

Slave Servers

DNS Cluster - Slave Servers

Secondary nameservers that receive zones from the hub over NOTIFY/AXFR. AdminBolt nodes are wired automatically by the DNS Slave node role; this tab is for adding any other PowerDNS server as a cluster secondary.

The list has a Search box and a New DNS Slave Server button. Each new slave has:

FieldDescription
Name (required)A label for the slave server.
IP Address (required)NOTIFY messages are sent here and AXFR transfers are allowed from it.
ActiveWhether the slave is in service.
NotesFree-text notes.

The form's Setup help explains how to prepare a non-AdminBolt PowerDNS secondary:

ini
# in pdns.conf
secondary=yes
autosecondary=yes
bash
# register the hub as the autoprimary so zones are created on NOTIFY
pdnsutil add-autoprimary <hub-ip> <cluster-ns1> hub

After restarting PowerDNS and adding the server, the hub starts sending NOTIFY and allowing AXFR, and every current and future cluster zone transfers automatically. Save with Create, or Create & create another.

Each listed slave server has per-row actions:

  • Edit - Change the server's name, IP address, active state, or notes.
  • Delete - Remove the slave server from the cluster.

Select one or more rows and use Bulk actions → Delete selected to remove several slave servers at once.

External Sources

DNS Cluster - External Sources

Mirrors DNS zones from an external control panel into the hub. The mirror is read-only - the external source stays authoritative; the hub serves copies of its zones and removes any deleted on the source. The list has a Search box and a New External DNS Source button.

This is not a migration

Attaching a cPanel, DirectAdmin, or Plesk server here mirrors its DNS zones and nothing else. The accounts, websites, databases, and mailboxes stay on that server, and it keeps running its own panel. To actually move a cPanel or DirectAdmin server into AdminBolt, see Migrating to AdminBolt.

Common fields

FieldDescription
Name (required)A label for the source.
Type (required)cPanel / WHM, DirectAdmin, Plesk, or Generic DNS server.
Host (required)Hostname or IP of the source server.
API PortLeave empty for the default (cPanel / DirectAdmin / Plesk).
Rewrite NS to cluster nameserversAPI mode only; AXFR zones are served verbatim. Do not enable for DNSSEC-signed zones.
ActiveWhether syncing is enabled.

The remaining fields and the Setup help depend on the Type:

cPanel / WHM

FieldDescription
API Username (required)The WHM account that owns the token - usually root (not the token name). The token needs full ("All Access") rights to read every account's DNS zones.
API Token (required)A WHM API token (not a password) with a read-only ACL that can read every account's DNS zones.

Setup: in WHM open Manage API Tokens, create an API token with All Access, and enter the username and token. The hub polls every 5 minutes and mirrors all zones, removing any deleted on the source.

DirectAdmin

FieldDescription
API Username (required)A DirectAdmin account name. Use an admin or reseller login (e.g. admin) to mirror every user's zones; a single user login mirrors only that user's domains.
Password / Login Key (required)The account password, or a Login Key (DirectAdmin → Login Keys) allowing CMD_API_DNS_CONTROL, CMD_API_SHOW_DOMAINS, CMD_API_SHOW_ALL_USERS, and CMD_API_SHOW_USERS, optionally restricted to the hub IP.

Setup: create an admin Login Key with DNS read access, then enter the username and key. The hub polls every 5 minutes.

Plesk

FieldDescription
Plesk Login (required)The Plesk admin login (usually admin).
Plesk Password (required)The Plesk admin password.

Setup: in Plesk allow Remote API (XML-API) access for the hub's IP under Tools & Settings → Restrict Administrative Access (host is the Plesk server, port 8443). If it reports "Access to API is disabled", enable the XML-API server-wide (panel.ini [api] enabled = true). The hub polls every 5 minutes via the XML-API.

Generic DNS server

FieldDescription
Sync Mode (required)Autoprimary (NOTIFY) - the source sends NOTIFY to the hub; new zones appear automatically with no list to maintain (requires each zone's NS to resolve to the source IP; does not auto-remove deleted zones). AXFR + zone list - you list the exact zones to mirror and the hub pulls each over AXFR (works with any DNS server).
Source Nameserver (required)The NS name used by zones on the source; the hub matches incoming NOTIFY against it.

Setup: on the source DNS, send NOTIFY to the hub and allow zone transfers - PowerDNS: also-notify=<hub-ip> and allow-axfr-ips=<hub-ip>; BIND: also-notify { <hub-ip>; }; and allow-transfer { <hub-ip>; };. Each zone's NS records must resolve to the source IP - the hub verifies this before accepting a zone.

Note: Synced external zones appear on the Global DNS Zones page with their source shown in the Source column.