I did the tests in two new virtual machines I created in my lab from scratch. Both of them with Almalinux 8.
I named the first one as primary.domain.local and installed Virtualmin GPL in it. In the second one I installed webmin and named it secondary.domain.local. I didn’t setup any firewall in both of them as they were in a private network so nothing was blocking 953 port.
As for the nameservers, the first one was dns1.domain.local pointing to the same IP as primary.domain.local and the second one was dns2.domain.local pointing to the same IP as secondary.domain.local
So, my tests results were as follow:
-
If in the Virtualmin GPL machine you add the webmin server using the name secondary.domain.local and in the Cluster Slave Servers you setup the option Name for NS record equal to dns2.domain.local, then the webmin nameserver doesn’t get restarted.
-
If in the Virtualmin GPL machine you add the webmin server using the name secondary.domain.local and in the Cluster Slave Servers you setup the option Name for NS record equal to same as hostname, then the webmin nameserver gets restarted.
-
If in the Virtualmin GPL machine you add the webmin server using the name dns2.domain.local and in the Cluster Slave Servers you setup the option Name for NS record equal to same as hostname or equal to dns2.domain.local, then the webmin nameserver gets restarted.
I replicated this findings in my production servers: In my two Virtualmin Pro I deleted the secondary from the Webmin Servers Index and readded it using the nameserver name dns2.mydomain instead of using the VPS name. And in the Cluster Slave Servers I added it with the option Name for NS record equal to same as hostname. Now it works as expected and reloads the bind configuration when Virtualmin sends the order. I think it could be a Virtualmin bug because, until recently, it was all working well.