syslog flooded with "refused notify from non-primary"
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Designate-Bind Charm |
New
|
Undecided
|
Unassigned |
Bug Description
bind process of designate-bind generates a large amount of 'zone ex1.dns.zone/IN: refused notify from non-primary: designate-
My setup uses the following configuration:
* juju version 2.9.37
* operating system: Ubuntu 22.04 x86_64
* designate-bind, channel latest/edge, ver. 9.18.1, rev 84;
* designate-
* designate, channel latest/edge, ver. 15.0.0, rev. 117;
* designate-
I seems that the bind instances deployed by designate-bind issue notify requests to the other instances in the HA cluster. From what I have analysed so far it seems that the leader node sends notifies to the other nodes in the cluster but it keeps generate the messages because requests are rejected.
These requests are rejected because `named.
# /etc/bind/
allow-notify { designate_
At some point syslog rotation mechanism fails to work (because of the syslog files being to large) and the local disk storage becomes full.
The only workaround I have right now is a cron job that checks the syslog generated files and deletes them from time to time.
Another workaround I am thinking is to create a custom designate-bind charm to include also the the designate-bind IPs in the `allow-notify` in bind but I don't what further implications this may introduce.
Any advice on how to solve this issue would be helpful.
Thanks,
Silviu.
I did some extra research and according to bind9 documentation:
https:/ /bind9. readthedocs. io/en/v9_ 18_1/advanced. html#notify
```
As a secondary zone can also be a primary to other secondaries, named, by default, sends NOTIFY messages for every zone it loads. Specifying notify primary-only; causes named to only send NOTIFY for primary zones that it loads.
```
it is the default behaviour for the slaves to send a NOTIFY to all the other name servers in the zones if `notify primary-only;` is not set and at least for edge/latest is not.
So a mitigation to this should be either to add the designate-bind endpoints to `allow-notify` or to set `notify primary-only;` in named.conf.options.