-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adding slave DNS #13
Comments
I guess the error log is not related to records not getting synced. It is only a token after all, not a dns record. The ddns_tokens table is not supposed to be present on all servers, only the main server. That error log may be present on the all slave dns servers, see issue #11, which was solved with v1. 4, but older tokens / datalog history may still produce the error - it can be ignored. |
Actually, the above Error made the replication fail completely. So then something strange might be happening if a node is added post installation as I did. |
Well that is concerning, you may need to delete related datalog entries or fix their server_id... |
Not necessary. As i mentioned earlier - adding the table to the new (NS3) node fixed the replication and error has ceased. Just wanted to check if this was a known issue and if not make you aware of it. |
Thanks for clarifying. I investigated on my server and came up with the following SQL script to prevent this issue in the future:
This way, you are not required to create the Would you have a way to test and verify this on your side? |
Unfortunately I do not have the possibility to test this on my side as this is a production system. But if you or anyone else want to try it, I more or less just:
After this, the new nodes server.sh script will error out and not perform any replication:
|
The SQL queries in #13 (comment) should do the trick, because datalog records with server_id = 0 are always replicated to all slave servers. This also means (regarding the latter error message) that the ddns tables must be present on all slave servers, because the server_id for these records is 0. The only exception would be if the server_id of the sys_datalog records referring to the DDNS module are changed to the actual DNS server on which the DDNS plugin is also installed and used. If you are unsure turn on maintenance mode and then make a backup of the master server's database and execute these queries, but adding a new machine to the multi-server setup won't fix the problem until you fix these sys_datalog records. |
The SQL fix has been successful in my test-setup. Since no other feedback has been received, it is now included in the 1.4.0 migration script and this issue was closed. |
Today I added a third slave dns with a fresh ispconfig install. Upon doing this I noticed no records was synced to bind. Checking the log of cron I had:
This table is not present in any of my other nameservers. Why was it needed in this third?
Importing the table into this NS3 solved the problem off course. But i'm mostly curious to why the NS1 and NS2 does not have problems with this? Neither of those have the table dbispconfig.ddns_token present.
Or is the dbispconfig.ddns_token table supposed to be present in all instances of ispconfig and I set it up wrong to begin with?
The text was updated successfully, but these errors were encountered: