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

Comments

Projects
3 participants
@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

This comment has been minimized.

Copy link
Member

danderson commented Jan 17, 2018

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

danderson added a commit that referenced this issue Jan 17, 2018

Revert the metallb deployment and daemonset to apps/v1beta2. #142
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

Create the metallb-system namespace when installing test-bgp-router. #…
…142

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

This comment has been minimized.

Copy link
Member

danderson commented Jan 17, 2018

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

This comment has been minimized.

Copy link
Member

danderson commented Jan 17, 2018

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

@pdf

This comment has been minimized.

Copy link

pdf commented Jan 17, 2018

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

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

@danderson

This comment has been minimized.

Copy link
Member

danderson commented Jan 17, 2018

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

This comment has been minimized.

Copy link
Member

danderson commented Jan 17, 2018

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

This comment has been minimized.

Copy link
Collaborator

miekg commented Jan 17, 2018

@danderson

This comment has been minimized.

Copy link
Member

danderson commented Jan 17, 2018

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 closed this Jan 17, 2018

@danderson danderson reopened this Jan 17, 2018

danderson added a commit that referenced this issue Jan 17, 2018

Temporarily disable BIRD in test-bgp-router. #142
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

Create the metallb-system namespace when installing test-bgp-router. #…
…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

Temporarily disable BIRD in test-bgp-router. #142
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

danderson added a commit that referenced this issue Jan 17, 2018

@danderson danderson added this to To Do in BGP mode via automation Jan 17, 2018

@danderson

This comment has been minimized.

Copy link
Member

danderson commented Jan 17, 2018

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 danderson closed this Jan 17, 2018

BGP mode automation moved this from To Do to Done Jan 17, 2018

@danderson

This comment has been minimized.

Copy link
Member

danderson commented Jan 17, 2018

Container images for 0.3.1 are build and pushed, FYI.

@pdf

This comment has been minimized.

Copy link

pdf commented Jan 17, 2018

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment