hybrid crd objects diagram 1.3.2 - apigee/ahr GitHub Wiki
Apigee Hybrid Apigee Namespace Object Diagram
This is a diagram with ALL objects from apigee namespace. the goal is to have it as a tool for training and/or troubleshooting, by providing a mental picture of object naming scheme as well as object containment.
It's supposed to be useful as a guide for use cases like:
- multiple orgs in same cluster visual modelling;
- conveying component scopes (org/env/cluster) analysis;
- explain routing, etc.
How to view it using Chrome:
- right-click the diagram image;
- select Open Image in New tab and switch to it;
- click repeatedly on the image to zoom it in and out;
- use scroll weel to move it up and down.
The layout and colour coding conventions:
- orange for Apigee CRDs)
- roles (ie: ReplicaSet -- targetRef: -- Pod)
- line endpoint cardinality, that reflect syntax of manifest yaml
How the diagram was created
There are different ways to visualise contents of your kubernetes cluster. For example, tree kubectl plugin, https://github.com/ahmetb/kubectl-tree.
In our case, we wanted more precise control on interim object representation.
- The list of kubernetes namespace objects was generated using following script:
https://github.com/kubernetes/kubernetes/issues/24873#issuecomment-694243228
- The objects were then colored using aha command:
grep --color=always -rE '(kind: |ownerReferences:)' * > kind-owner-grep.logl
cat kind-owner-grep.log | aha --black --title "kind:owner" >kind-owner-grep.html
the result is pretty readable structure-wise
- The objects were then layed out for enhanced readability using drawio and re-named to reflect an ORG and ENV naming arrangements.