diff --git a/README.md b/README.md index 6cc7167..8f7e41c 100644 --- a/README.md +++ b/README.md @@ -61,6 +61,7 @@ Many other architecture diagrams are available into [examples/](https://github.c ### Business Applications +1. [Bank of Anthos](https://github.com/philippemerle/KubeDiagrams/blob/main/examples/bank-of-anthos/) 1. [DeathStarBench](https://github.com/philippemerle/KubeDiagrams/blob/main/examples/deathstarbench/) 1. [Official Kubernetes WordPress tutorial](https://github.com/philippemerle/KubeDiagrams/blob/main/examples/wordpress/) 1. [Official Kubernetes ZooKeeper tutorial](https://github.com/philippemerle/KubeDiagrams/blob/main/examples/zookeeper/) diff --git a/examples/bank-of-anthos/.gitignore b/examples/bank-of-anthos/.gitignore new file mode 100644 index 0000000..3a4d036 --- /dev/null +++ b/examples/bank-of-anthos/.gitignore @@ -0,0 +1 @@ +bank-of-anthos diff --git a/examples/bank-of-anthos/README.md b/examples/bank-of-anthos/README.md new file mode 100644 index 0000000..9c30507 --- /dev/null +++ b/examples/bank-of-anthos/README.md @@ -0,0 +1,25 @@ +# Bank of Anthos Example + +This example is dedicated to **[Google Cloud Platform's Bank of Anthos](https://github.com/GoogleCloudPlatform/bank-of-anthos/)**. + +## Instructions + +Generate the Kubernetes architecture diagrams: + +```sh +./generate.sh +``` + +## Generated architecture diagrams + +Architecture diagram for **[Google Cloud Platform's Bank of Anthos manifests](https://github.com/GoogleCloudPlatform/bank-of-anthos/tree/main/kubernetes-manifests)**: + +![diagrams/bank-of-anthos.png](diagrams/bank-of-anthos.png) + +Customized architecture diagram for **[Google Cloud Platform's Bank of Anthos manifests](https://github.com/GoogleCloudPlatform/bank-of-anthos/tree/main/kubernetes-manifests)**: + +![diagrams/custom-diagram-1.png](diagrams/custom-diagram-1.png) + +Another customized architecture diagram for **[Google Cloud Platform's Bank of Anthos manifests](https://github.com/GoogleCloudPlatform/bank-of-anthos/tree/main/kubernetes-manifests)**: + +![diagrams/custom-diagram-2.png](diagrams/custom-diagram-2.png) diff --git a/examples/bank-of-anthos/custom-diagram-1.kdc b/examples/bank-of-anthos/custom-diagram-1.kdc new file mode 100644 index 0000000..7300fde --- /dev/null +++ b/examples/bank-of-anthos/custom-diagram-1.kdc @@ -0,0 +1,3 @@ +clusters: + - label: app + show: false diff --git a/examples/bank-of-anthos/custom-diagram-2.kdc b/examples/bank-of-anthos/custom-diagram-2.kdc new file mode 100644 index 0000000..4d4e2c5 --- /dev/null +++ b/examples/bank-of-anthos/custom-diagram-2.kdc @@ -0,0 +1,13 @@ +clusters: + - label: app + show: false + - label: tier + show: false + - label: application + title: "Application: {}" + graph_attr: + bgcolor: "#ECE8F6" + - label: team + title: "Team: {}" + graph_attr: + bgcolor: "#EBF3E7" \ No newline at end of file diff --git a/examples/bank-of-anthos/custom-edges.kdc b/examples/bank-of-anthos/custom-edges.kdc new file mode 100644 index 0000000..d9c5165 --- /dev/null +++ b/examples/bank-of-anthos/custom-edges.kdc @@ -0,0 +1,44 @@ +edges: + REFERENCE: + color: gray +diagram: + edges: + - from: loadgenerator/default/Deployment/apps/v1 + to: frontend/default/Service/v1 + color: brown + - from: frontend/default/Deployment/apps/v1 + to: userservice/default/Service/v1 + color: brown + - from: frontend/default/Deployment/apps/v1 + to: contacts/default/Service/v1 + color: brown + - from: frontend/default/Deployment/apps/v1 + to: ledgerwriter/default/Service/v1 + color: brown + - from: frontend/default/Deployment/apps/v1 + to: ledgerwriter/default/Service/v1 + color: brown + - from: frontend/default/Deployment/apps/v1 + to: balancereader/default/Service/v1 + color: brown + - from: frontend/default/Deployment/apps/v1 + to: transactionhistory/default/Service/v1 + color: brown + - from: userservice/default/Deployment/apps/v1 + to: accounts-db/default/Service/v1 + color: brown + - from: contacts/default/Deployment/apps/v1 + to: accounts-db/default/Service/v1 + color: brown + - from: ledgerwriter/default/Deployment/apps/v1 + to: ledger-db/default/Service/v1 + color: brown + - from: ledgerwriter/default/Deployment/apps/v1 + to: balancereader/default/Service/v1 + color: brown + - from: balancereader/default/Deployment/apps/v1 + to: ledger-db/default/Service/v1 + color: brown + - from: transactionhistory/default/Deployment/apps/v1 + to: ledger-db/default/Service/v1 + color: brown diff --git a/examples/bank-of-anthos/diagrams/bank-of-anthos.png b/examples/bank-of-anthos/diagrams/bank-of-anthos.png new file mode 100644 index 0000000..a74b83b Binary files /dev/null and b/examples/bank-of-anthos/diagrams/bank-of-anthos.png differ diff --git a/examples/bank-of-anthos/diagrams/custom-diagram-1.png b/examples/bank-of-anthos/diagrams/custom-diagram-1.png new file mode 100644 index 0000000..3f7fd9b Binary files /dev/null and b/examples/bank-of-anthos/diagrams/custom-diagram-1.png differ diff --git a/examples/bank-of-anthos/diagrams/custom-diagram-2.png b/examples/bank-of-anthos/diagrams/custom-diagram-2.png new file mode 100644 index 0000000..27c3aa6 Binary files /dev/null and b/examples/bank-of-anthos/diagrams/custom-diagram-2.png differ diff --git a/examples/bank-of-anthos/generate.sh b/examples/bank-of-anthos/generate.sh new file mode 100755 index 0000000..b76a1f8 --- /dev/null +++ b/examples/bank-of-anthos/generate.sh @@ -0,0 +1,15 @@ +#! /bin/sh + +PATH=../../bin:$PATH + +# Clone the Bank of Anthos GitHub repository +git clone https://github.com/GoogleCloudPlatform/bank-of-anthos.git + +# Generate the architecture diagram for Bank of Anthos manifests +kube-diagrams bank-of-anthos/kubernetes-manifests/* bank-of-anthos/extras/jwt/jwt-secret.yaml -o diagrams/bank-of-anthos.png + +# Generate a custom diagram for Bank of Anthos manifests +kube-diagrams bank-of-anthos/kubernetes-manifests/* bank-of-anthos/extras/jwt/jwt-secret.yaml -c custom-diagram-1.kdc -c custom-edges.kdc -o diagrams/custom-diagram-1.png + +# Generate another custom diagram for Bank of Anthos manifests +kube-diagrams bank-of-anthos/kubernetes-manifests/* bank-of-anthos/extras/jwt/jwt-secret.yaml -c custom-diagram-2.kdc -c custom-edges.kdc -o diagrams/custom-diagram-2.png