Eventing: Knative eventing architecture diagrams

Created on 26 Nov 2019  路  18Comments  路  Source: knative/eventing

Problem
When explaining how Knative eventing works would be very good to have validated architecture diagrams.

Persona:
Contributors

Exit Criteria
Official architecture diagram in docs/specs:
https://github.com/knative/eventing/tree/master/docs/spec

Time Estimate (optional):
days

Additional context (optional)
Very important for visual thinking people ...
https://en.wikipedia.org/wiki/Visual_thinking

kindoc kinfeature-request kingood-first-issue

Most helpful comment

I was looking for official diagram(s) that show Knative eventing architecture but I could not find it - there are design and architecture diagrams in wbsite: https://knative.dev/docs/eventing/
but they are very high level and do not show actual implementation architecture (for example controllers or dispatchers)

I hope there may be good diagrams we could use?

I started drafting a simple one that may be too simple?

image

https://docs.google.com/presentation/d/1i-cciY4Goy5i966TTP-cQM4cNl8ZdbYBQ5egQsfmWOE/edit#slide=id.p

Please post links to diagrams.

All 18 comments

I was looking for official diagram(s) that show Knative eventing architecture but I could not find it - there are design and architecture diagrams in wbsite: https://knative.dev/docs/eventing/
but they are very high level and do not show actual implementation architecture (for example controllers or dispatchers)

I hope there may be good diagrams we could use?

I started drafting a simple one that may be too simple?

image

https://docs.google.com/presentation/d/1i-cciY4Goy5i966TTP-cQM4cNl8ZdbYBQ5egQsfmWOE/edit#slide=id.p

Please post links to diagrams.

Hi @aslom may I ask why 'dispatcher' is in the control-panel? I thought it's in the data-panel.

@caitengwei good point - i have modified diagram (in google slides the same link as above and screenshot below)

image

I am thinking to add list of steps involved in typical operations - similar to Architecture diagram description for https://cri-o.io/ - any other ideas how to explain knative eventing architecture?

@aslom This diagram is great. It answers how messaging pub/sub scenario works in Knative Eventing.
I'm thinking of adding other Knative Eventing models like triggers, sequences, and parallels. Readers would have a better understanding of the big picture.

@caitengwei that would be great - feel free to modify linked google slide and/or create new slide based on it to add ne components if it is hard to fit them in the existing slide

/label proposal/0.13

/assign @bskaplan

@akashrv: GitHub didn't allow me to assign the following users: bskaplan.

Note that only knative members, repo collaborators and people who have commented on this issue/PR can be assigned. Additionally, issues/PRs can only have 10 assignees at the same time.
For more information please see the contributor guide

In response to this:

/assign @bskaplan

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

Should this still be in 0.15? Is anyone working on it?

/assign

It seems that it is not feasible to add everything from Knative Eventing into one diagram.

Instead I thin it makes sense to start with conceptual architecture diagrams and then sho how they map to implementations. The focus is to help contributors to understand Knative Eventing and give them a conceptual "map" how different concepts and implementation artifacts fit together.

Current draft https://docs.google.com/document/d/1y8lB2mH88Zc4wxrEBIUE-h3X-aSzxaMD9tXFNztU-TA/edit?usp=sharing

Looking for feedback on the approach and comments about the diagrams.

Thanks for getting this started! Overall I like the progression of diagrams, but I think that things could be further clarified. I've left comments in the doc.

@bryeung thank you for your comments they were very useful. Please take a look again - I tried to address the issues you identified and made lot of changes in the conceptual part. The implementation is work-in-progress.

Thanks for making those improvements!

This issue is stale because it has been open for 90 days with no
activity. It will automatically close after 30 more days of
inactivity. Reopen the issue with /reopen. Mark the issue as
fresh by adding the comment /remove-lifecycle stale.

@aslom is this eventing diagram still accurate? Is it something that could be currently included?

if so, @abrennan89 would there be an area/directory in docs that @aslom could PR this to?

@abrennan89 that would be great to start PR or improving docs - let me know what is the best place in docs? i will update diagram and we can iterate over it?

@abrennan89 that would be great to start PR or improving docs - let me know what is the best place in docs? i will update diagram and we can iterate over it?

@aslom completely depends on the content of the diagram(s). There's no specific place where these should go really, just somewhere that it makes sense, e.g. if the diagram was about brokers, add it to the docs about brokers, etc.

Was this page helpful?
0 / 5 - 0 ratings