404 After Test Connection Succeeds
Problem : You receive a 404 after "test-connection" was successful
This situation happens when the Dashboard cannot resolve the domain names returned by the API endpoint api/v8/manager/cluster/topology
For example:
{
"payloadType": "ClusterTopologyPayload",
"payloadVersion": "1",
"payload": {
"topology": "CLUSTERED_PRIMARY",
"name": "oulu",
"datasources": [
{
"name": "db21",
/* the value of "host" must be resolvable by Dashboard's dns */
"host": "db21",
"role": "master"
},
{
"name": "db22",
/* the value of "host" must be resolvable by Dashboard's dns */
"host": "db22",
"role": "slave"
},
{
"name": "db23",
/* the value of "host" must be resolvable by Dashboard's dns */
"host": "db23",
"role": "witness"
}
],
"routers": [...]
}
}
If the Dashboard cannot obtain an IP address for the node name located above, the load balancing functionality breaks down. To resolve the issue:
Identify all hostnames returned by the REST API endpoint
api/v8/manager/cluster/topologySSH to the Dashboard container
Install the DNS Tools to get access to the dig command:
shell> apt upgrade;shell> apt install dnsutils;Test the hostname resolution for each hostname you collected in step 1. If successful you will get
';; ANSWER SECTION:'shell> dig db21;"; <<>> DiG 9.18.30-0ubuntu0.24.04.2-Ubuntu <<>> db21;; global options: +cmd;; Got answer:;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 30152;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1;; OPT PSEUDOSECTION:; EDNS: version: 0, flags:; udp: 1232; COOKIE: ab4ead051ab4fa5d (echoed);; QUESTION SECTION:;db21. IN A;; ANSWER SECTION:db21. 5 IN A XX.XXX.XX.XXX" # <---- note valid ip in the answer.";; Query time: 4 msec;; SERVER: XX.XX.X.XXX#53(XX.XX.X.XX) (UDP);; WHEN: Wed Apr 09 12:13:03 UTC 2025;; MSG SIZE rcvd: 65"Example of a failed dns resolution:
shell> dig db20;"; <<>> DiG 9.18.30-0ubuntu0.24.04.2-Ubuntu <<>> db20;; global options: +cmd;; Got answer:;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 12636;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1;; OPT PSEUDOSECTION:; EDNS: version: 0, flags:; udp: 1232; COOKIE: ad741d4ba38cc0a7 (echoed);; QUESTION SECTION:;db20. IN A"Note how the dig never got a valid IP address in the
';; ANSWER SECTION:'like in the success example.
Make sure that all of the hosts returned by the API topology endpoint can be resolved before proceeding further. Once all hostnames are resolvable, re-add the cluster to the Dashboard or reload the topology using the reload action or by making a small change to it, such as changing the first host.