kube-router icon indicating copy to clipboard operation
kube-router copied to clipboard

Unclear error message

Open ghost opened this issue 5 years ago • 6 comments

I can not find anything in the docs to address this error:

Failed to run kube-router: Failed to create network routing controller: Router-id must be specified in ipv6 operation

What router-id is it looking for?!?!

ghost avatar Jun 23 '20 00:06 ghost

Are you trying to use a IPv6 cluster?

As per https://github.com/cloudnativelabs/kube-router/blob/master/docs/user-guide.md#command-line-options

--router-id string BGP router-id. Must be specified in a ipv6 only cluster.

If you are just trying to run some pods and not going to use any BGP related functionality of kube-router, it seems specifying router id is unintutive and should be hidden I guess.

@uablrek Sorry I dont recall and a IPv6 cluster is not handy at the moment to check. Do we need a unique ID for the router-id for each node?

murali-reddy avatar Jun 23 '20 04:06 murali-reddy

If you are just trying to run some pods and not going to use any BGP related functionality of kube-router, it seems specifying router id is unintutive and should be hidden I guess.

I agree. If BPB is not used a router-id is not needed.

Do we need a unique ID for the router-id for each node?

Yes. They are most often the ipv4 address on the interface where BPB is used. But for ipv6 you must specify it or get "clever" e.g use a 32-bit hash of the ipv6 address.

Work-around; If BGB is not used, just set any number, e.g "1".

uablrek avatar Jun 23 '20 08:06 uablrek

thank you @uablrek. I will raise a PR to auto generate an ID based on the node UUID or something similar.

murali-reddy avatar Jun 23 '20 10:06 murali-reddy

Thank you @uablrek , @murali-reddy !

Can I please ask a really stupid question for clarification?

I have a reasonably large cluster of about 20 nodes, created with Kubeadm. All of the networking is IPv6, and they all sit on the same /64 which is nicely routed. I attempted to install Kube-Router using the instructions here

It seems incorrect that I should supply a router-id as an argument to the kube-router daemonset; because then short of doing some shell gymnastics all of the nodes will have the same router-id?

Can I template out a file in /var/lib/kube-router/ to each node? (or provide an argument/label/annotation etc to Kubelet?). If so, I apologize, I can not find an appropriate example to copy from!

ghost avatar Jun 23 '20 11:06 ghost

@murali-reddy is this something that you want to address as part of 1.1 since it deals with BGP functionality?

aauren avatar Jul 09 '20 22:07 aauren

Should be simple to fix. Added to 1.1 release for now.

murali-reddy avatar Jul 14 '20 05:07 murali-reddy

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.

github-actions[bot] avatar Sep 05 '23 01:09 github-actions[bot]

This issue was closed because it has been stale for 5 days with no activity.

github-actions[bot] avatar Sep 10 '23 02:09 github-actions[bot]