Page MenuHomePhabricator

Anycast: Add IPv6 support to bird and anycast-healthchecker (Puppet)
Open, Needs TriagePublic

Description

As mentioned in the anycast documentation, both bird and anycast-healthchecker support IPv6 but since there was no use case for it, it's not supported in our puppetization of it. Given that we now have a case for supporting IPv6 for Wikidough (also see T288559), we should add IPv6 support to both these tools and try configuring an actual host (doh*) to use them.

The change should ensure that it doesn't affect existing hosts that use profile:🐦:anycast as all our current use cases use IPv4 and not IPv6.

Event Timeline

Change 727355 had a related patch set uploaded (by Ssingh; author: Ssingh):

[operations/puppet@production] bird: add IPv6 support to bird and anycast-healthchecker

https://gerrit.wikimedia.org/r/727355

Change 728349 had a related patch set uploaded (by Jbond; author: Ssingh):

[operations/puppet@production] bird: add IPv6 support to bird and anycast-healthchecker

https://gerrit.wikimedia.org/r/728349

Change 728349 merged by Jbond:

[operations/puppet@production] bird: add IPv6 support to bird and anycast-healthchecker

https://gerrit.wikimedia.org/r/728349

Change 727355 abandoned by Ssingh:

[operations/puppet@production] bird: add IPv6 support to bird and anycast-healthchecker

Reason:

merged in https://gerrit.wikimedia.org/r/c/operations/puppet/+/728349

https://gerrit.wikimedia.org/r/727355

The Puppet change has been merged but I am going to keep this open in case @ayounsi feels that there is something else that needs to be done to make this more complete. (Maybe on homer or the routers?)

Thanks to @jbond for all his help with the review, including pointing out something obvious that we were missing and writing extra code to fix it!

Thanks that's great!

Could you update the doc to reflect the new config knobs?

And we need to be sure we don't forget to update https://github.com/wikimedia/puppet/blob/fc52ba04a5941574a33e30cb9b14990e5736192a/modules/bird/templates/bird_anycast.conf.epp#L37 when possible.

Thanks that's great!

Could you update the doc to reflect the new config knobs?

Thanks for the suggestion! I have updated the documentation to document how to enable IPv6 support. Please let me know if there is something else I should have added.

And we need to be sure we don't forget to update https://github.com/wikimedia/puppet/blob/fc52ba04a5941574a33e30cb9b14990e5736192a/modules/bird/templates/bird_anycast.conf.epp#L37 when possible.

Yes, thanks, hopefully with the first IPv6 VIP we advertise :)