Adding flannel arch diagram#3743
Conversation
|
Also, have included some follow ups to suggestions in #3477 |
|
@knobunc - can you PTAL at the diagram and let us know if any changes are required? |
knobunc
left a comment
There was a problem hiding this comment.
LGTM @openshift/networking PTAL
There was a problem hiding this comment.
typo "vSwtich"
oh, you just copied that out of configuring_sdn.adoc, where it is also misspelled...
There was a problem hiding this comment.
Thanks for spotting this. Fixed typo in both places.
There was a problem hiding this comment.
This is a diagram of the default flannel configuration, using an overlay network, but our ansible-based flannel install uses flannel in the "host-gw" mode, which is totally different. (The default config does, technically, avoid "dual Open vSwitch" (since flannel doesn't use OVS) but it doesn't avoid double encapsulation of data, which is the actual problem. The "host-gw" mode uses a completely different architecture to avoid that.
There was a problem hiding this comment.
@danwinship -- Thanks for the feedback. How can we refine the image so that it better represents host-gw mode?
There was a problem hiding this comment.
I don't know the details of how host-gw sets up networking, other than that it doesn't use an overlay.
There was a problem hiding this comment.
(The openshift networking team mostly isn't involved with flannel stuff.)
There was a problem hiding this comment.
Thanks, @rajatchopra ! I'll organize to get the diagram modified per your suggestion.
There was a problem hiding this comment.
@rajatchopra -- I've got the image updated along with the text to accommodate your feedback. I've put the example routes underneath the image, rather than within the image itself.
How does it all look now?
There was a problem hiding this comment.
The flanneld seems to be on the data path of the packet. Maybe connect docker0 directly to the routing table and show flanneld connected to the routing table in a different color connector.
Thanks for working on this, would be really helpful in understanding what's going on underneath.
There was a problem hiding this comment.
@rajatchopra -- modifed the diagram as per your feedback -- the flanneld component should be out of the way of the data path, but still interacting with the routing table. How does this look now?
45557b5 to
3fd9738
Compare
There was a problem hiding this comment.
The hostgw mode does not use flannel0 tap device. There is a routing table update made by flanneld to the host's routing table so the packet is sent directly to the note where the pod belongs.
I would draw a routing table lookup box before eth0 and after docker0 bridge that shows rules like the following:
10.1.3.0/24 via
10.1.4.0/24 via
..
This table to be fed by flanneld which is watching etcd.
install_config/configuring_sdn.adoc
Outdated
There was a problem hiding this comment.
It is particularly to avoid double encapsulation of packets, whether by openvswitch or not.
9e47d04 to
005fdf8
Compare
Also: - Adding variable for flannel nic config - Fixing flannel image filename - Making adjustments to image and content based on feedback
005fdf8 to
79c3d13
Compare
|
[rev_history] |
Also adding variable for flannel nic config