external-dns
external-dns copied to clipboard
Cloudflare provider rate limits cause a fatal error and pod restarts into CLBO
What happened: External DNS for Cloudflare often enters CrashLoopBackOff when it hits a rate limit. Since this was merged https://github.com/kubernetes-sigs/external-dns/pull/3009 with the v0.13.5 release this has been occurring. We caught it on an upgrade to 0.14.1
What you expected to happen: Rate limit errors should be handled as the new SoftError type to prevent bailing and restarting.
How to reproduce it (as minimally and precisely as possible):
- Run a version of external-dns >= 0.13.5
- Use up the rate limit of Cloudflare API calls (or mock this)
- Have external-dns running through a loop
- It will then exit and bail.
Anything else we need to know?:
I'm willing to attempt to fix this, though my golang isn't super
Environment:
- External-DNS version (use
external-dns --version): 0.14.1 - DNS provider: cloudflare
- Others: