Add service and node discovery to test resources#127
Add service and node discovery to test resources#127matmerr wants to merge 7 commits intomattfenwick:masterfrom
Conversation
be1a818 to
bf3040e
Compare
Good question, I couldn't find a definitive answer to this one. So I punted, adding the In general, the behavior seems to be undefined here and varies from CNI to CNI |
Do you have a mockup of what this table should look like? Doesn't have to be generated by cyclonus, if you can just show me a picture then I think everything else in this PR will become clear to me ! |
|
thanks @matmerr this is exciting ! overall I'm on board with this and it's a great feature to add ! looks like there's still some TODOs you're planning to clear up, so I'll wait to give a more thorough review (spoiler: code already looks good 👍 ) on my end, for some reason I can't run the CNI-specific tests on this PR -- guess I missed some config so I'll look into enabling that |
tbh I don't have an easy solution in mind, just expressing connectivity between nodes and pods in the same table is clunky 😕 Example: Actual vs expected (last round):
+--------------------+--------------------+-------------+--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+
| | KIND-CONTROL-PLANE | KIND-WORKER | KIND-WORKER2 | X/A | X/B | X/C | Y/A | Y/B | Y/C | Z/A | Z/B | Z/C |
+--------------------+--------------------+-------------+--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+
| kind-control-plane | . | . | . | . | . | . | . | . | . | . | . | . |
| kind-worker | . | . | . | . | . | . | . | . | . | . | . | . |
| kind-worker2 | . | . | . | . | . | . | . | . | . | . | . | . |
| x/a | X | X | X | . | . | . | . | . | . | . | . | . |
| x/b | X | X | X | . | . | . | . | . | . | . | . | . |
| x/c | X | X | X | . | . | . | . | . | . | . | . | . |
| y/a | X | X | X | . | . | . | . | . | . | . | . | . |
| y/b | X | X | X | . | . | . | . | . | . | . | . | . |
| y/c | X | X | X | . | . | . | . | . | . | . | . | . |
| z/a | X | X | X | . | . | . | . | . | . | . | . | . |
| z/b | X | X | X | . | . | . | . | . | . | . | . | . |
| z/c | X | X | X | . | . | . | . | . | . | . | . | . |
+--------------------+--------------------+-------------+--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+A lot of the remaining work is around visualization, definitely needs some mockups but core datapath is usable for validating with external tools. Best to omit the |
bf3040e to
330c050
Compare
330c050 to
ee65f12
Compare
|
looking good @matmerr !! sorry for the delay getting back to you on this how close is this to ready to merge ? I'll take another look through but overall it seems like this is getting pretty close ? |
In the current state the service/node creation exists, but the ux around test case evaluation and table presentation is still missing. Tagging in @huntergregory who is currently working in this scope. |
|
hi @huntergregory checking in , how is this going ? lmk if you're hitting any problems ! |
Add some basic wiring to create/destroy services as part of test step, and target desting datapath from pod matrix to nodes, specifically via nodeport.
Known TODOs: