Skip to content

Commit df13fd3

Browse files
committed
visualize
1 parent 5271064 commit df13fd3

File tree

12 files changed

+1005
-2
lines changed

12 files changed

+1005
-2
lines changed

examples/fullstack/README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,12 @@ The example includes:
2525
└─────────────┘ └─────────────┘ └─────────────┘
2626
```
2727

28+
### Resource Visualization
29+
30+
A detailed visualization of all Kubernetes resources and their relationships:
31+
32+
![Resource Visualization](docs/visualization.png)
33+
2834
## Prerequisites
2935

3036
1. **kubectl** configured to access your Kubernetes cluster
Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
digraph G {
2+
rankdir="TB";
3+
node [fontname="Arial"];
4+
5+
subgraph cluster_cluster_scoped {
6+
label="Namespace: cluster-scoped";
7+
style="filled";
8+
color="#E8F4F8";
9+
fontcolor="black";
10+
11+
namespace_fullstack [label="Namespace
12+
fullstack
13+
[postgres-db]", style="filled", fillcolor="#E8F4F8", shape="ellipse"];
14+
}
15+
16+
subgraph cluster_fullstack {
17+
label="Namespace: fullstack";
18+
style="filled";
19+
color="#FFF5E5";
20+
fontcolor="black";
21+
22+
configmap_frontend_config_fullstack [label="ConfigMap
23+
frontend-config
24+
[frontend-app]", style="filled", fillcolor="#E5FFE5", shape="note"];
25+
deployment_frontend_fullstack [label="Deployment
26+
frontend
27+
[frontend-app]", style="filled", fillcolor="#FFE5B4", shape="box"];
28+
ingress_frontend_fullstack [label="Ingress
29+
frontend
30+
[frontend-app]", style="filled", fillcolor="#E5FFF5", shape="trapezium"];
31+
service_frontend_fullstack [label="Service
32+
frontend
33+
[frontend-app]", style="filled", fillcolor="#B4E5FF", shape="diamond"];
34+
configmap_postgres_init_sql_fullstack [label="ConfigMap
35+
postgres-init-sql
36+
[postgres-db]", style="filled", fillcolor="#E5FFE5", shape="note"];
37+
deployment_postgres_fullstack [label="Deployment
38+
postgres
39+
[postgres-db]", style="filled", fillcolor="#FFE5B4", shape="box"];
40+
configmap_postgres_config_fullstack [label="ConfigMap
41+
postgres-config
42+
[postgres-db]", style="filled", fillcolor="#E5FFE5", shape="note"];
43+
persistentvolumeclaim_postgres_pvc_fullstack [label="PersistentVolumeClaim
44+
postgres-pvc
45+
[postgres-db]", style="filled", fillcolor="#E5E5FF", shape="cylinder"];
46+
service_postgres_fullstack [label="Service
47+
postgres
48+
[postgres-db]", style="filled", fillcolor="#B4E5FF", shape="diamond"];
49+
job_postgres_init_fullstack [label="Job
50+
postgres-init
51+
[postgres-db]", style="filled", fillcolor="#FFE5B4", shape="box"];
52+
secret_postgres_secret_fullstack [label="Secret
53+
postgres-secret
54+
[postgres-db]", style="filled", fillcolor="#FFE5E5", shape="note"];
55+
configmap_backend_config_fullstack [label="ConfigMap
56+
backend-config
57+
[backend-api]", style="filled", fillcolor="#E5FFE5", shape="note"];
58+
service_backend_fullstack [label="Service
59+
backend
60+
[backend-api]", style="filled", fillcolor="#B4E5FF", shape="diamond"];
61+
deployment_backend_fullstack [label="Deployment
62+
backend
63+
[backend-api]", style="filled", fillcolor="#FFE5B4", shape="box"];
64+
}
65+
66+
deployment_frontend_fullstack -> configmap_frontend_config_fullstack [label="uses-configmap"];
67+
ingress_frontend_fullstack -> service_frontend_fullstack [label="routes-to"];
68+
service_frontend_fullstack -> deployment_frontend_fullstack [label="selects"];
69+
deployment_postgres_fullstack -> configmap_postgres_config_fullstack [label="uses-configmap"];
70+
deployment_postgres_fullstack -> configmap_postgres_config_fullstack [label="uses-configmap"];
71+
deployment_postgres_fullstack -> secret_postgres_secret_fullstack [label="uses-secret"];
72+
deployment_postgres_fullstack -> persistentvolumeclaim_postgres_pvc_fullstack [label="uses-pvc"];
73+
service_postgres_fullstack -> deployment_postgres_fullstack [label="selects"];
74+
job_postgres_init_fullstack -> secret_postgres_secret_fullstack [label="uses-secret"];
75+
job_postgres_init_fullstack -> configmap_postgres_init_sql_fullstack [label="uses-configmap"];
76+
service_backend_fullstack -> deployment_backend_fullstack [label="selects"];
77+
deployment_backend_fullstack -> configmap_backend_config_fullstack [label="uses-configmap"];
78+
deployment_backend_fullstack -> configmap_backend_config_fullstack [label="uses-configmap"];
79+
}
157 KB
Loading

examples/kafka/README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,12 @@ The example includes:
1212
- **Resource limits** configured for production-like workloads
1313
- **Stock Price Processing**: Producer and consumer services for processing live stock prices
1414

15+
### Resource Visualization
16+
17+
A detailed visualization of all Kubernetes resources and their relationships:
18+
19+
![Resource Visualization](docs/visualization.png)
20+
1521
## Prerequisites
1622

1723
1. **kubectl** configured to access your Kubernetes cluster
Lines changed: 119 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,119 @@
1+
digraph G {
2+
rankdir="TB";
3+
node [fontname="Arial"];
4+
5+
subgraph cluster_cluster_scoped {
6+
label="Namespace: cluster-scoped";
7+
style="filled";
8+
color="#E8F4F8";
9+
fontcolor="black";
10+
11+
namespace_kafka [label="Namespace
12+
kafka
13+
[stock-price-producer]", style="filled", fillcolor="#E8F4F8", shape="ellipse"];
14+
clusterrole_strimzi_cluster_operator_namespaced [label="ClusterRole
15+
strimzi-cluster-operator-namespaced
16+
[strimzi-kafka-operator]", style="filled", fillcolor="#F0E5FF", shape="hexagon"];
17+
clusterrole_strimzi_cluster_operator_global [label="ClusterRole
18+
strimzi-cluster-operator-global
19+
[strimzi-kafka-operator]", style="filled", fillcolor="#F0E5FF", shape="hexagon"];
20+
clusterrole_strimzi_cluster_operator_leader_election [label="ClusterRole
21+
strimzi-cluster-operator-leader-election
22+
[strimzi-kafka-operator]", style="filled", fillcolor="#F0E5FF", shape="hexagon"];
23+
clusterrole_strimzi_cluster_operator_watched [label="ClusterRole
24+
strimzi-cluster-operator-watched
25+
[strimzi-kafka-operator]", style="filled", fillcolor="#F0E5FF", shape="hexagon"];
26+
clusterrole_strimzi_kafka_broker [label="ClusterRole
27+
strimzi-kafka-broker
28+
[strimzi-kafka-operator]", style="filled", fillcolor="#F0E5FF", shape="hexagon"];
29+
clusterrole_strimzi_entity_operator [label="ClusterRole
30+
strimzi-entity-operator
31+
[strimzi-kafka-operator]", style="filled", fillcolor="#F0E5FF", shape="hexagon"];
32+
clusterrole_strimzi_kafka_client [label="ClusterRole
33+
strimzi-kafka-client
34+
[strimzi-kafka-operator]", style="filled", fillcolor="#F0E5FF", shape="hexagon"];
35+
clusterrolebinding_strimzi_cluster_operator_namespaced [label="ClusterRoleBinding
36+
strimzi-cluster-operator-namespaced
37+
[strimzi-kafka-operator]", style="filled", fillcolor="#F5E5FF", shape="parallelogram"];
38+
clusterrolebinding_strimzi_cluster_operator [label="ClusterRoleBinding
39+
strimzi-cluster-operator
40+
[strimzi-kafka-operator]", style="filled", fillcolor="#F5E5FF", shape="parallelogram"];
41+
clusterrolebinding_strimzi_cluster_operator_watched [label="ClusterRoleBinding
42+
strimzi-cluster-operator-watched
43+
[strimzi-kafka-operator]", style="filled", fillcolor="#F5E5FF", shape="parallelogram"];
44+
clusterrolebinding_strimzi_cluster_operator_kafka_broker_delegation [label="ClusterRoleBinding
45+
strimzi-cluster-operator-kafka-broker-delegation
46+
[strimzi-kafka-operator]", style="filled", fillcolor="#F5E5FF", shape="parallelogram"];
47+
clusterrolebinding_strimzi_cluster_operator_entity_operator_delegation [label="ClusterRoleBinding
48+
strimzi-cluster-operator-entity-operator-delegation
49+
[strimzi-kafka-operator]", style="filled", fillcolor="#F5E5FF", shape="parallelogram"];
50+
clusterrolebinding_strimzi_cluster_operator_kafka_client_delegation [label="ClusterRoleBinding
51+
strimzi-cluster-operator-kafka-client-delegation
52+
[strimzi-kafka-operator]", style="filled", fillcolor="#F5E5FF", shape="parallelogram"];
53+
}
54+
55+
subgraph cluster_kafka {
56+
label="Namespace: kafka";
57+
style="filled";
58+
color="#FFF5E5";
59+
fontcolor="black";
60+
61+
kafkanodepool_brokers_kafka [label="KafkaNodePool
62+
brokers
63+
[kafka-cluster]", style="filled", fillcolor="#FFFFFF", shape="box"];
64+
kafka_my_cluster_kafka [label="Kafka
65+
my-cluster
66+
[kafka-cluster]", style="filled", fillcolor="#FFFFFF", shape="box"];
67+
kafkanodepool_controllers_kafka [label="KafkaNodePool
68+
controllers
69+
[kafka-cluster]", style="filled", fillcolor="#FFFFFF", shape="box"];
70+
deployment_stock_price_producer_kafka [label="Deployment
71+
stock-price-producer
72+
[stock-price-producer]", style="filled", fillcolor="#FFE5B4", shape="box"];
73+
configmap_stock_price_producer_config_kafka [label="ConfigMap
74+
stock-price-producer-config
75+
[stock-price-producer]", style="filled", fillcolor="#E5FFE5", shape="note"];
76+
configmap_stock_price_consumer_config_kafka [label="ConfigMap
77+
stock-price-consumer-config
78+
[stock-price-consumer]", style="filled", fillcolor="#E5FFE5", shape="note"];
79+
deployment_stock_price_consumer_kafka [label="Deployment
80+
stock-price-consumer
81+
[stock-price-consumer]", style="filled", fillcolor="#FFE5B4", shape="box"];
82+
serviceaccount_strimzi_cluster_operator_kafka [label="ServiceAccount
83+
strimzi-cluster-operator
84+
[strimzi-kafka-operator]", style="filled", fillcolor="#FFF5E5", shape="ellipse"];
85+
configmap_strimzi_cluster_operator_kafka [label="ConfigMap
86+
strimzi-cluster-operator
87+
[strimzi-kafka-operator]", style="filled", fillcolor="#E5FFE5", shape="note"];
88+
rolebinding_strimzi_cluster_operator_leader_election_kafka [label="RoleBinding
89+
strimzi-cluster-operator-leader-election
90+
[strimzi-kafka-operator]", style="filled", fillcolor="#F5E5FF", shape="parallelogram"];
91+
deployment_strimzi_cluster_operator_kafka [label="Deployment
92+
strimzi-cluster-operator
93+
[strimzi-kafka-operator]", style="filled", fillcolor="#FFE5B4", shape="box"];
94+
}
95+
96+
deployment_stock_price_producer_kafka -> configmap_stock_price_producer_config_kafka [label="uses-configmap"];
97+
deployment_stock_price_producer_kafka -> configmap_stock_price_producer_config_kafka [label="uses-configmap"];
98+
deployment_stock_price_producer_kafka -> configmap_stock_price_producer_config_kafka [label="uses-configmap"];
99+
deployment_stock_price_producer_kafka -> configmap_stock_price_producer_config_kafka [label="uses-configmap"];
100+
deployment_stock_price_consumer_kafka -> configmap_stock_price_consumer_config_kafka [label="uses-configmap"];
101+
deployment_stock_price_consumer_kafka -> configmap_stock_price_consumer_config_kafka [label="uses-configmap"];
102+
deployment_stock_price_consumer_kafka -> configmap_stock_price_consumer_config_kafka [label="uses-configmap"];
103+
clusterrolebinding_strimzi_cluster_operator_namespaced -> clusterrole_strimzi_cluster_operator_namespaced [label="references-role"];
104+
clusterrolebinding_strimzi_cluster_operator_namespaced -> serviceaccount_strimzi_cluster_operator_kafka [label="binds-to"];
105+
clusterrolebinding_strimzi_cluster_operator -> clusterrole_strimzi_cluster_operator_global [label="references-role"];
106+
clusterrolebinding_strimzi_cluster_operator -> serviceaccount_strimzi_cluster_operator_kafka [label="binds-to"];
107+
clusterrolebinding_strimzi_cluster_operator_watched -> clusterrole_strimzi_cluster_operator_watched [label="references-role"];
108+
clusterrolebinding_strimzi_cluster_operator_watched -> serviceaccount_strimzi_cluster_operator_kafka [label="binds-to"];
109+
clusterrolebinding_strimzi_cluster_operator_kafka_broker_delegation -> clusterrole_strimzi_kafka_broker [label="references-role"];
110+
clusterrolebinding_strimzi_cluster_operator_kafka_broker_delegation -> serviceaccount_strimzi_cluster_operator_kafka [label="binds-to"];
111+
clusterrolebinding_strimzi_cluster_operator_entity_operator_delegation -> clusterrole_strimzi_entity_operator [label="references-role"];
112+
clusterrolebinding_strimzi_cluster_operator_entity_operator_delegation -> serviceaccount_strimzi_cluster_operator_kafka [label="binds-to"];
113+
clusterrolebinding_strimzi_cluster_operator_kafka_client_delegation -> clusterrole_strimzi_kafka_client [label="references-role"];
114+
clusterrolebinding_strimzi_cluster_operator_kafka_client_delegation -> serviceaccount_strimzi_cluster_operator_kafka [label="binds-to"];
115+
rolebinding_strimzi_cluster_operator_leader_election_kafka -> clusterrole_strimzi_cluster_operator_leader_election [label="references-role"];
116+
rolebinding_strimzi_cluster_operator_leader_election_kafka -> serviceaccount_strimzi_cluster_operator_kafka [label="binds-to"];
117+
deployment_strimzi_cluster_operator_kafka -> serviceaccount_strimzi_cluster_operator_kafka [label="uses-serviceaccount"];
118+
deployment_strimzi_cluster_operator_kafka -> configmap_strimzi_cluster_operator_kafka [label="uses-configmap"];
119+
}
302 KB
Loading

examples/spark/README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,12 @@ The example includes:
1010
- **Sample Spark Application** (SparkPi) that calculates π using Monte Carlo method
1111
- **Resource limits** configured for production-like workloads
1212

13+
### Resource Visualization
14+
15+
A detailed visualization of all Kubernetes resources and their relationships:
16+
17+
![Resource Visualization](docs/visualization.png)
18+
1319
## Prerequisites
1420

1521
1. **kubectl** configured to access your Kubernetes cluster
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
digraph G {
2+
rankdir="TB";
3+
node [fontname="Arial"];
4+
5+
subgraph cluster_cluster_scoped {
6+
label="Namespace: cluster-scoped";
7+
style="filled";
8+
color="#E8F4F8";
9+
fontcolor="black";
10+
11+
clusterrole_spark_operator [label="ClusterRole
12+
spark-operator
13+
[spark-operator]", style="filled", fillcolor="#F0E5FF", shape="hexagon"];
14+
clusterrolebinding_spark_operator [label="ClusterRoleBinding
15+
spark-operator
16+
[spark-operator]", style="filled", fillcolor="#F5E5FF", shape="parallelogram"];
17+
namespace_spark [label="Namespace
18+
spark
19+
[spark-pi]", style="filled", fillcolor="#E8F4F8", shape="ellipse"];
20+
}
21+
22+
subgraph cluster_spark {
23+
label="Namespace: spark";
24+
style="filled";
25+
color="#FFF5E5";
26+
fontcolor="black";
27+
28+
serviceaccount_spark_operator_spark_spark [label="ServiceAccount
29+
spark-operator-spark
30+
[spark-operator]", style="filled", fillcolor="#FFF5E5", shape="ellipse"];
31+
role_spark_role_spark [label="Role
32+
spark-role
33+
[spark-operator]", style="filled", fillcolor="#F0E5FF", shape="hexagon"];
34+
rolebinding_spark_spark [label="RoleBinding
35+
spark
36+
[spark-operator]", style="filled", fillcolor="#F5E5FF", shape="parallelogram"];
37+
deployment_spark_operator_spark [label="Deployment
38+
spark-operator
39+
[spark-operator]", style="filled", fillcolor="#FFE5B4", shape="box"];
40+
serviceaccount_spark_operator_spark [label="ServiceAccount
41+
spark-operator
42+
[spark-operator]", style="filled", fillcolor="#FFF5E5", shape="ellipse"];
43+
rolebinding_spark_role_binding_spark [label="RoleBinding
44+
spark-role-binding
45+
[spark-pi]", style="filled", fillcolor="#F5E5FF", shape="parallelogram"];
46+
sparkapplication_spark_pi_spark [label="SparkApplication
47+
spark-pi
48+
[spark-pi]", style="filled", fillcolor="#FFFFFF", shape="box"];
49+
role_spark_role_spark [label="Role
50+
spark-role
51+
[spark-pi]", style="filled", fillcolor="#F0E5FF", shape="hexagon"];
52+
serviceaccount_spark_spark [label="ServiceAccount
53+
spark
54+
[spark-pi]", style="filled", fillcolor="#FFF5E5", shape="ellipse"];
55+
sparkapplication_custom_pyspark_job_spark [label="SparkApplication
56+
custom-pyspark-job
57+
[custom-pyspark-job]", style="filled", fillcolor="#FFFFFF", shape="box"];
58+
}
59+
60+
rolebinding_spark_spark -> role_spark_role_spark [label="references-role"];
61+
rolebinding_spark_spark -> serviceaccount_spark_operator_spark_spark [label="binds-to"];
62+
deployment_spark_operator_spark -> serviceaccount_spark_operator_spark [label="uses-serviceaccount"];
63+
clusterrolebinding_spark_operator -> clusterrole_spark_operator [label="references-role"];
64+
clusterrolebinding_spark_operator -> serviceaccount_spark_operator_spark [label="binds-to"];
65+
rolebinding_spark_role_binding_spark -> role_spark_role_spark [label="references-role"];
66+
rolebinding_spark_role_binding_spark -> serviceaccount_spark_spark [label="binds-to"];
67+
}
118 KB
Loading

0 commit comments

Comments
 (0)