Guide to DNS Cluster Configuration
For WHM version 11.30
A DNS cluster
is a number of nameservers that share records.
Clustering allows you to physically separate your nameservers so that in the event of, for instance, a power outage, you still have DNS functionality. This way, visitors can reach websites on your server more quickly after the web server comes back online. (The cPanel DNS cluster feature only provides redundancy for DNS. It does not place Apache
or any other services in a cluster configuration.)
To optimally configure your DNS cluster, you will need 2 spare servers, both preferably running cPanel DNSONLY. You will also need at least 1 web server with cPanel & WHM installed.
- cPanel DNSONLY is software that allows you to run a dedicated physical nameserver. It should only be installed on nameservers with no previous content on them.
- You can download the cPanel DNSONLY software for free.
- All machines in the cluster must be running cPanel & WHM or cPanel DNSONLY version 11 or higher. (Some features may not work with older versions of cPanel & WHM.)
- You may have multiple cPanel DNSONLY servers and multiple cPanel & WHM servers in a cluster.
Enabling DNS clustering on each server
First, you will need to enable DNS
clustering via each server's WHM interface:
- Navigate to WHM’s Configure Cluster screen.
- Select Enable DNS Clustering.
- Click Change.
- Click Return to Cluster Status.
Selecting 'Enable DNS Clustering' to turn on clustering.
clustering is now enabled. Next, specify which server(s) you wish to cluster
, or share DNS
- You will need to sync each web server to its DNS servers.
- You do not need to link dedicated DNS servers to each other, or link dedicated web servers to each other.
- You should not set a DNS server to sync data back to a web server, as this will put extraneous data on the web server.
Global cluster options
This section allows you to specify the number of
commands that are allowed to fail before WHM disables a member of your cluster
. Disabling unresponsive cluster
members can improve server performance.
- Select an option:
- 10 is the default. We recommend this setting.
- To enter a different failure threshold, select the second button and enter the number of failed commands you wish to allow.
- If you wish for all of the members of your cluster to remain online at all times, select Keep all cluster members online at all times.
- If you want WHM to notify you when it disables an unresponsive member, select Get a notification when WHM disables an unresponsive cluster member.
- WHM will send the notifications during DNS queue processing.
- Click Change.
Disabling unresponsive cluster members.
About your DNS cluster configuration
Before you set up your DNS cluster
, consider how you will structure it.
Directly linking the web server to the nameservers
Creating a cluster
setup with direct links between servers can decrease CPU load
, improving the performance of your servers. The more steps, or "hops," between a web server and a nameserver
, the slower the servers' performance will be.
If at all possible, you should link your web server directly to the DNS
servers, as shown in the diagram below. This is the ideal DNS
Figure 1. A direct link between the web server and 2 nameservers is optimal.
In this example,
information directly to
. You can create this setup by using the WHM Configure Cluster
feature to link the web server directly to each nameserver
(see the instructions below).
Using the primary nameserver as an intermediary
If necessary, you may place the primary nameserver
between the web server and the secondary nameserver
. For each intermediate server that you add, the data transfer time will be 3 times slower than for a direct link.
Figure 2. An intermediate nameserver between the web server and secondary nameserver is acceptable.
You can create this configuration by setting the web server to sync the primary nameserver
, and setting the primary nameserver
to sync the secondary nameserver
(see the instructions below).
Using multiple intermediary nameservers
The least optimal configuration uses multiple “hops,” or steps, between the web server and nameservers. This increases processor load on the servers, as the nameserver
software works to update the DNS
information on each hop, slowing response time.
Figure 3. Configuring multiple hops between a web server and nameserver slows performance.
In this example, for
to communicate with
, the information must pass through 2 intermediary servers, increasing the overall processing load. We do not recommend this method.
Setting up the cluster from the web server
On your web server's WHM interface:
- Navigate to the Configure Cluster screen.
- Under Servers in your DNS Cluster, locate the Add a new server to the cluster box.
- Select the server type from the drop-down menu.
- Click Configure. WHM will display the cPanel DNS Remote Configuration screen.
- Next to Remote cPanel & WHM DNS service, type the hostname or IP address of the nameserver you wish to link to.
- Next to Remote server username, type the WHM username for the nameserver (either
- Under Remote server access hash, enter the nameserver's remote access key.
- You can generate and retrieve a key using the nameserver's WHM interface. Log into WHM on the nameserver, and navigate to Manage SSH Keys. Once the key appears, cut and paste it into the Remote server access hash box.
Setting up a reverse trust relationship
- Select Setup Reverse Trust Relationship if you want WHM to automatically configure the cluster on the remote server.
- If you select this option, you will not need to log into the WHM Configure Cluster screen on the remote server. However, you may do so if you wish to modify the remote server's cluster configuration.
- Selecting this option will set the remote server's DNS role to Standalone.
- Select Debug mode if you want WHM to record DNS clustering transactions in the
Specifying the web server's DNS role
Next, you must specify that you wish for this server to synchronize changes, or to write DNS
data onto the nameservers in the cluster
- Next to DNS role, select Synchronize. This will cause the web server to send DNS data to the nameserver.
- Click Submit.
is now set up. When you return to the WHM Configure Cluster
screen, the remote server will be listed in the Servers in your DNS Cluster
Important notes about setting up the DNS cluster
- We do not recommend setting up the nameserver to synchronize data to a web server; this will create extraneous zones on the web server. (This means that you do not need to log into WHM on the nameserver and set the web server's DNS role to Synchronize changes).
- You do not need to link dedicated nameservers to each other.
- A cPanel DNSONLY server should almost never be set to Synchronize changes to a web server. The web server should always be set to synchronize to the DNSONLY server(s), and the DNSONLY server(s) should always be set as Standalone.