Skip to content
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

BGP on Minikube tutorial issues #142

Closed
pdf opened this issue Jan 17, 2018 · 11 comments
Closed

BGP on Minikube tutorial issues #142

pdf opened this issue Jan 17, 2018 · 11 comments
Assignees
Labels
Milestone

Comments

@pdf
Copy link

pdf commented Jan 17, 2018

Is this a bug report or a feature request?:

Bug

What happened:

Attempted to follow the tutorial, failed at Step 2. Failed for the following reasons:

  1. The tutorial specifies deploying the test routes first, however the test-bgp-router.yaml manifest is missing the metallb-system namespace definition. Worked around this by creating the namespace manually
  2. The test-bgp-router pod fails to start, with the following log:
bird: /etc/bird.conf, line 3: syntax error
F0117 07:16:56.514911       1 main.go:103] /usr/sbin/bird exited with an error: exit status 1
time="2018-01-17T07:16:56Z" level=info msg="Add a peer configuration for:192.168.39.228" Topic=Peer
2018/01/17 07:16:56 ZEBRA: Zebra 1.2.2 starting: vty@2601
2018/01/17 07:16:56 ZEBRA: client 17 says hello and bids fair to announce only bgp routes
2018/01/17 07:16:56 ZEBRA: Try to set TE Link Param
2018/01/17 07:16:56 ZEBRA: Try to set TE Link Param
2018/01/17 07:16:56 ZEBRA: Try to set TE Link Param
2018/01/17 07:16:56 ZEBRA: Try to set TE Link Param

What you expected to happen:

Tutorial run through to completion.

How to reproduce it (as minimally and precisely as possible):

Follow the BGP on Minikube tutorial.

Environment:

  • MetalLB version: v0.3
  • Kubernetes version: v1.8 (minikube v0.24.1)
  • BGP router type/version: N/A
  • OS (e.g. from /etc/os-release): N/A
  • Kernel (e.g. uname -a): N/A
@danderson danderson self-assigned this Jan 17, 2018
@danderson danderson added the bug label Jan 17, 2018
@danderson danderson added this to the v0.3.1 milestone Jan 17, 2018
@danderson
Copy link
Contributor

Thank you for the bug report! Fixing now, sorry for the hard time!

danderson added a commit that referenced this issue Jan 17, 2018
Minikube still uses k8s 1.8.0, so it doesn't understand the new API group yet.
danderson added a commit that referenced this issue Jan 17, 2018
…142

The tutorial makes you create test-bgp-router first, and it doesn't work
if you don't have the namespace defined.
@danderson
Copy link
Contributor

Okay, the last problem is sneaky: alpine:latest updated from bird 1.6 to bird 2.0, but the alpine:latest image cached on my dev machine was still using 1.6... So I didn't notice when the CI built an image with a broken Bird config :(

I'm going to have to learn bird 2.0 to fix this.

@danderson
Copy link
Contributor

Okay, ported most of the config over... But Bird 2.0 removed the option to change the BGP listening port, argh!

@pdf
Copy link
Author

pdf commented Jan 17, 2018

Alternatively, pin the alpine image version, for consistent builds?

ETA: Thanks for looking at this so quickly! ❤️

@danderson
Copy link
Contributor

That'll work for a short time, but it'll break again when the next version of alpine comes out.

Still, it's probably a quick way to fix it for now, while I try to readjust the test router to work with bird2.

@danderson
Copy link
Contributor

Okay, I also cannot pin the version back to 3.6, because Bird is only in the edge repository, so the build is always bird 2.0, and it's no longer compatible with alpine 3.6 :(

Plan B: I'm just going to disable Bird and remove it from the test-bgp-router for now, until I can fix it properly.

@miekg
Copy link
Contributor

miekg commented Jan 17, 2018 via email

@danderson
Copy link
Contributor

Possibly, but it's way past my bed time and I'm oncall tomorrow, so I just want to release 0.3.1 with a minimal fix and do it right later :)

@danderson danderson reopened this Jan 17, 2018
danderson added a commit that referenced this issue Jan 17, 2018
Alpine updated their Bird image to 2.0, which breaks the generated
config and makes bird behave weirdly in other ways. I need to sleep
right now, so this is a quick bandaid while I figure out a real fix.
danderson added a commit that referenced this issue Jan 17, 2018
…142

The tutorial makes you create test-bgp-router first, and it doesn't work
if you don't have the namespace defined.
danderson added a commit that referenced this issue Jan 17, 2018
Alpine updated their Bird image to 2.0, which breaks the generated
config and makes bird behave weirdly in other ways. I need to sleep
right now, so this is a quick bandaid while I figure out a real fix.
@danderson
Copy link
Contributor

Okay, MetalLB 0.3.1 released. The manifests should be fixed, and BIRD is disabled for now so that the tutorial works. Container images are still building on CircleCI, so it will take another 5-15min before those are live.

I also discovered #143 and #144 while doing the patch version release, so thank you again for the bug report!

Closing this bug because the tutorial should work again, but I've opened #145 to track fixing Bird in test-bgp-router.

@danderson
Copy link
Contributor

Container images for 0.3.1 are build and pushed, FYI.

@pdf
Copy link
Author

pdf commented Jan 17, 2018

All working as expected now, thank you, now get some sleep 😉

fedepaol referenced this issue in fedepaol/metallb Oct 19, 2023
OCPBUGS-18985: FRR templates: provide a seqnum for the prefix lists
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants