├── README.md ├── diagrams ├── .DS_Store ├── Layers.pdf ├── application │ └── application layer diagram.pdf ├── infrastructure │ └── infrastructure layer diagram.pdf ├── layering-concept.md └── resource │ └── resource layer diagram.pdf ├── images ├── in-progress.png └── project-logo.png └── notes.md /README.md: -------------------------------------------------------------------------------- 1 |

2 | 3 |

4 | 5 |

Kubernetes Graphing Group

6 |

The Kubernetes Graphing Group formed out of a desire to make the Kubernetes documentation more easily accessible. We aim to establish conistency by developing graphical guidelines, to visualize concepts by constructing architecture diagrams, and to incorporate these diagrams and images into the open source documentation.

7 |

8 |

Vision

9 |

Facilitate the Kubernetes learning experience by making concepts easier to understand in the Kubernetes body of knowledge.

10 |

Mission

11 |

Make a high value and high exposure contribution to the Kuberenetes open source documentation set by creating a visual language for concept diagrams.

12 |

Status

13 |

M1 Initiation

14 | 15 |

16 | Milestone Overview 17 | · 18 | Task Overview 19 | · 20 | Get Involved 21 |

22 |

23 | 24 |

Progress

25 | 26 | | Progress | Milestone | | 27 | | ------------------------------------- | --------- | ------------------------------------------------------------ | 28 | | | M1 | [Initiation](https://github.com/Roderick-Jonsson/k8s-diagrams/milestone/1) | 29 | | | M2 | Prioritize concepts | 30 | | | M3 | Discuss possible representations for concepts & post sketches | 31 | | | M4 | Establish basic visual guidelines | 32 | | | M5 | Design visually consistent vector (i.e. SVG) symbols | 33 | 34 |

Prospective contributors

35 | 36 | - [Roderick Jonsson][rj] 37 | - [Rachael Graham][rg] 38 | - [Rinor Maloku][rm] 39 | 40 |

Get involved

41 | 42 | We are looking for like-minded individuals to contribute to this effort! If you have: 43 | * Technical knowledge of Kubernetes 44 | * Experience with making diagrams or similar visual elements 45 | * Creativity to brainstorm and evaluate the usefulness of diagram schematics 46 | 47 | then join us by finding a contribution opportunity. 48 | 49 | **A: How do I find a contribution opportunity?** 50 | 1. Check if there are [issues with the recruiting tag][issue recruiting] 51 | 52 | 2. Check for interesting tasks by browsing 53 | - [milestone][milestone] 54 | - [task overview][task overview] 55 | - [issue list][issue list] 56 | - contact assignee via the [communication center][communication center] 57 | 58 | **B: How is project work organized?** 59 | 60 | The project is guided by our vision statement. 61 | 62 | All work is geared towards completing the mission statement. 63 | 64 | General communication is done in our [Communication center][communication center] to not unnecessary clutter the project documentation ;) 65 | 66 | 1. [Milestones][milestone] 67 | - Key points to accomplish our mission 68 | 2. [Tasks][task overview] 69 | - Single actionable tasks which have to be done to reach a milestone 70 | 3. [Single Task][milestone issues] 71 | - Assignees are responsible for task completion (dedicated contributors) 72 | - Initial comment is a wiki aggregating the overall important information of the task 73 | - Continuing comments are used as a news stream to represent status of task 74 | 4. [Communication center][communication center] 75 | - Collaboration tool to chat and exchange information where needed 76 | 77 | **C: How can I learn about working in GitHub?** 78 | 79 | Get up and running in no time with these 2 Youtube guides from the GuitHub team :) 80 | - [Youtube: Professional Guides: Managing Projects (5min)][YT github pm short] 81 | - [Youtube: Webcast GitHub for Project Management (59min)][YT github pm long] 82 | 83 | [prospects file]: https://github.com/Roderick-Jonsson/k8s-diagrams/blob/master/workspace/prospects.md 84 | [milestone]: https://github.com/Roderick-Jonsson/k8s-diagrams/milestones?direction=asc&sort=title&state=open 85 | [task overview]: https://github.com/Roderick-Jonsson/k8s-diagrams/projects/1 86 | [issue list]: https://github.com/Roderick-Jonsson/k8s-diagrams/issues 87 | [issue recruiting]: https://github.com/Roderick-Jonsson/k8s-diagrams/issues?q=is%3Aissue+is%3Aopen+label%3Arecruiting 88 | [YT github pm short]: https://www.youtube.com/watch?v=nI5VdsVl0FM 89 | [YT github pm long]: https://www.youtube.com/watch?v=6fByt0o4UYs&t=3160s 90 | [milestone issues]: https://github.com/Roderick-Jonsson/k8s-diagrams/issues?utf8=✓&q=is%3Aissue+is%3Aopen+milestone%3A*+ 91 | [communication center]: https://k8s-graphing-group.slack.com 92 | [rj]: https://github.com/Roderick-Jonsson 93 | [rg]: https://github.com/Rachael-Graham 94 | [rm]: https://github.com/rinormaloku 95 | -------------------------------------------------------------------------------- /diagrams/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Roderick-Jonsson/k8s-diagrams/8c6fe3349ef78101ada979002803641de5036d45/diagrams/.DS_Store -------------------------------------------------------------------------------- /diagrams/Layers.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Roderick-Jonsson/k8s-diagrams/8c6fe3349ef78101ada979002803641de5036d45/diagrams/Layers.pdf -------------------------------------------------------------------------------- /diagrams/application/application layer diagram.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Roderick-Jonsson/k8s-diagrams/8c6fe3349ef78101ada979002803641de5036d45/diagrams/application/application layer diagram.pdf -------------------------------------------------------------------------------- /diagrams/infrastructure/infrastructure layer diagram.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Roderick-Jonsson/k8s-diagrams/8c6fe3349ef78101ada979002803641de5036d45/diagrams/infrastructure/infrastructure layer diagram.pdf -------------------------------------------------------------------------------- /diagrams/layering-concept.md: -------------------------------------------------------------------------------- 1 | # Layered Diagramming 2 | 3 | Kubernetes provides an Abstraction over the Infrastructure, to put it in perspective it gives us only one endpoint and it suffices to **manage the infrastructure** and **orchestrate the application**, and that is made possible by a small set of **resources**. 4 | 5 | This absctraction hides an enormous amount of detail and that's why diagramming is so difficult. How to know if we are making the diagram difficult to understand with too much information, should you display this information, if not where should it go. 6 | 7 | These questions are resolved with the **Layered diagramming** approach, where each layer serves to answers one specific question. 8 | 9 | ## Layers 10 | For the graphical presentation please see the [pdf](./Layers.pdf) 11 | 12 | ### Infrastructure 13 | * Whom does this layer serve? 14 | 15 | **Infrastructure Administrators** who need to know with regards to system setup and networking where which components are located and their relationship 16 | * What information is expected on this layer 17 | * Master VMs 18 | * Node VMs 19 | * LoadBalancer 20 | 21 | 22 | ### Application 23 | * Whom does this layer serve 24 | 25 | **Developers** who need to know how the components of the application (i.e. microservices) interact with each other. 26 | * What information is expected on this layer 27 | * Services 28 | * Deployments 29 | * Network policies 30 | 31 | ### Resource (Suggestion 1) 32 | 33 | * Whom does this layer serve 34 | DevOps who need to know how everything is configured. 35 | 36 | * What information is expected on this layer 37 | * Kubernetes resources that are related to one specific Microservice. 38 | 39 | * What does this suggestion lack: 40 | 41 | This approach leaves out Roles, ClusterRoles, RoleBindings etc. These are Kubernetes resources, as such their place would be in the Resource Layer. 42 | (Should a diagram deal with these resources?) 43 | 44 | ### Resource (Suggestion 2) 45 | * Whom does this layer serve: 46 | 47 | * **Kubernetes Administrators** for engineering and troubleshooting setups 48 | * **Application Developers** for configuration of services, i.e. on what ports are containers run, how is a container configured, on what configurations it is dependent. 49 | 50 | * What information is expected on this layer: 51 | * An example of the suggestion [Link](https://blog.openshift.com/kdl-notation-kubernetes-app-deploy/) 52 | 53 | 54 | ### Resource (Suggestion 3) 55 | * Whom does this layer serve: 56 | 57 | * App developers who are managing app resources; i.e.: 58 | * Scaling resources, 59 | * Updating resources, etc. 60 | (These tasks may skew more towards what DevOps might do) 61 | 62 | * What information is expected on this layer 63 | Resource config (specs; capacity) 64 | Resource current state (usage) 65 | Any resource controllers perhaps -------------------------------------------------------------------------------- /diagrams/resource/resource layer diagram.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Roderick-Jonsson/k8s-diagrams/8c6fe3349ef78101ada979002803641de5036d45/diagrams/resource/resource layer diagram.pdf -------------------------------------------------------------------------------- /images/in-progress.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Roderick-Jonsson/k8s-diagrams/8c6fe3349ef78101ada979002803641de5036d45/images/in-progress.png -------------------------------------------------------------------------------- /images/project-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Roderick-Jonsson/k8s-diagrams/8c6fe3349ef78101ada979002803641de5036d45/images/project-logo.png -------------------------------------------------------------------------------- /notes.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | - Team Emblem 4 | - Vision 5 | - Make Kubernetes concepts easy to undestand 6 | 7 | 8 | - Mission 9 | - Create a visual language composed of symbols and icons will enable the creation of illustrative diagrams. 10 | 11 | 12 | - Milestone Plan 13 | - Prioritize concepts 14 | - Discuss possible representations for concepts & post sketches 15 | - Establish basic visual guidelines 16 | - Design visually consistent vector (i.e. SVG) symbols 17 | 18 | 19 | - Current Status 20 | - Initiation Phase 21 | 22 | 23 | - Get involved 24 | - Dedicated Contributors 25 | - Daniel Romlein 26 | - Roderick Jonsson --------------------------------------------------------------------------------