-
Notifications
You must be signed in to change notification settings - Fork 369
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
GoBgp client cli capability #6539
Conversation
I am not sure I get the point of this PR, please add more details in the PR summary to clarify what you want to implement in this PR. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's discuss in #6189 before committing to an approach for this
58af939
to
d73f352
Compare
ee21e74
to
8a05cd4
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In the commit message, please indicate the increase in image size for antrea/antrea-agent-ubuntu:latest
because of this change (uncompressed image size, which can be obtained with docker images
).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
GoBGP client binary size is ~15MB Signed-off-by: Rajnish Kumar <rajnishk1@vmware.com>
@antoninbas Thanks for checking my opinion. @rajnkamr Can you update the description to point to the right issue #6541? #6189 barely provides any information. However, #6541 doesn't have information about how the gobgp CLI can/will be used either, it says "advanced live debugging", but without a single example. Does antrea-agent even open a socket for gobgp CLI to connect? I don't find such socket. Have you validated any command can work? Besides, is it right to open such socket to introduce another source of truth of bgp routes? Unlike the typical gobgpd and gobgp case that the latter is used to configure the former, we only leverage the gobgp library to implement bgp using the BGPPolicy as the source of truth. Maybe it could be helpful in read-only mode but I guess there is no permission control in such granularity once the socket is there. Who is supposed to use the CLI, users, developers, or both? Lastly, I remember there was a topic to have other BGP implementations if required, I suppose gobgp CLI won't work for other implementations? |
Generally we should avoid adding things to image when there is no strong reason. Despite of the image size, every dependency comes with CVEs and maintenance efforts. If the reason is just maybe helpful for some scenarios (and in the particular case non use case has been shown), maybe let's at least defer to when users/developers have to install gobgp themselves to address their use cases? Actually there are many useful networking tools I frequently use when debugging: netstat, tcpdump, etc., which are even more common and frequently used than gobgp. You can imagine the impact to image size if all of them are added. At least it's not a problem for me to install tools / use ephemeral containers when there is a need. |
We are utilizing the GoBGP library directly within Antrea, rather than deploying the standalone gobgpd binary. As a result, the gRPC-based interface typically exposed by gobgpd is not available. Consequently, external tools or clients, such as the GoBGP CLI (gobgp), which rely on gRPC to connect to gobgpd, will not be able to interface with Antrea's BGP server operating on port 179. So to manage and configure the BGP server within Antrea, currently interactions will be conducted only via the Antrea API or CLI (antctl). Hence we will have to continuously enhance antctl by incorporating additional commands to support more functionality. To fully support advanced debugging commands provided with gobgp binary, a comprehensive solution would involve rewriting gobgp to align with our current architecture. It could be long term solution or we could just continue enhancing antctl with more commands as par with gobgp binary. |
Add GoBGP client cli capability to Antrea Agent
gobgp image size is 15 MB
#6189