-
Notifications
You must be signed in to change notification settings - Fork 2
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
Writes all functions in all files. #8
Comments
Thanks for filing this issue! Just for my understanding: since you have a separate config file for ipv4 and ipv6 for birdwatcher to manage, may I assume you include the first config file in bird and the latter in bird6 config? And if so, why does it matter that your ipv4 ranges are not exported in bird6 and vice versa? |
Hi, I am running BIRD 2.0.9 from EPEL. |
These are our configs. bird.conf
in bird.d directory we have these files:
BGP:
Filter:
The files for IPv4 and IPv6 are the same, main difference is the number 4 and 6 to make a difference between them. |
I may have made birdwatcher a bit too specific for BIRD 1.x which is what I still tend to use most. Ideally, when using BIRD 2, you should be able to define the same config file for both protocols, right? |
Yes, if a single file can be used it will be enough. As long the function name is configured unique. (I read your comment a bit to fast and misread it, this since I was stressed between meetings at work) |
@Bjorn-H I ended up removing all IP-family specific separation in a branch called |
Sorry I have not had the time to test this before today. I get these errors:
|
It seems that it does not read the global statement:
Since is is trying to read the:
It is not super clear, but I have defined the directory as '/etc/bird.d' and it is trying to work in the directory '/etc/bird' |
creating the '/etc/bird' directory, it seems to create the files properly and the output seems fine as well. |
Perhaps that is not clear, but you shouldn't add the
|
Ok, making those changes, it works as it should. One thing, you should add a Makefile, so it will be easily compiled and can easily be used when creating RPM's. It such a big difference in system load after switching from anycast-healthchecker to birdwatcher. |
The other day I added goreleaser config that creates DEB packages as well as the binary itself, so it is easily downloadable from the releases page. I have no RHEL/CentOS/whatever system to my disposal so I can't test whether an RPM package works though. I'm glad you like the performance of birdwatcher, that was ultimately what made me write it in the first place! 👍 |
I am no go-lang person and have little experience with the universe around it. But if goreleaser is as easy as Makefiles, then it should not be a problem for us to create our flavored RPM's in our build environment. If the same functionality that you have in birdwatcher is written in python I think that it would have performed satisfactorily as well. anycast-healthchecker have some design flaws that creates this issue. Especially when you want to announce 50+ prefixes. Our load went down from more than 10 to around 1-2. (And that is when the service is active which take around that load normally) We will roll out birdwatcher into production next week. Hopefully this will fix the issues, and i highly presume it will, we have been monitoring using anycast-healthchecker. |
@Bjorn-H could you try this RPM package: https://github.com/skoef/birdwatcher/releases/tag/v1.0.0-beta1 |
Hi, we have already starting to use our compilation in production. Also we prefer to compile the stuff in our environment since we have had previous problem with pre-compiled RPM's. I did a simple manual check of the package and one thing that I personally would change is that since it is a daemon it should follow the standard and be installed in sbin and not bin. |
You're right, that is better. Goreleaser installs it in |
When configuring multiple files when using multiple functions it will write all function in all files.
cat /etc/bird.d/birdwatcher-ipv4.conf
cat /etc/bird.d/birdwatcher-ipv6.conf
This causes the filtering for ipv4 to become false all the time and no exported prefixes.
And if I set the configuration file to the same only the ipv6 is filled up, ipv4 is never set.
birdwatcher -version
birdwatcher, build 18df0fd (master branch)
The text was updated successfully, but these errors were encountered: