123456789101112131415161718192021222324252627282930 |
- from diagrams import Cluster, Diagram, Edge
- from diagrams.onprem.database import Mariadb
- from diagrams.azure.database import DatabaseForMariadbServers
- from diagrams.onprem.inmemory import Redis
- from diagrams.onprem.groupware import Nextcloud
- from diagrams.custom import Custom
- with Diagram(filename="./assets/dia_db_cluster", show=False):
- nc = Nextcloud()
- with Cluster("Database cluster"):
- with Cluster("Load balancer"):
- paSQL = Custom("ProxySQL Active", "../assets/proxysql.png")
- ppSQL = Custom("ProxySQL Passive", "../assets/proxysql.png")
-
- with Cluster("Galera cluster"):
- bckp1 = DatabaseForMariadbServers("Backup writer")
- primary = Mariadb("Primary writer")
- bckp2 = DatabaseForMariadbServers("Backup writer")
-
- paSQL - Edge(color="firebrick") - primary
- bckp1 - Edge(style="dashed") - paSQL - Edge(style="dashed") - bckp2
-
- ppSQL - Edge(color="firebrick") - primary
- bckp1 - Edge(style="dashed") - ppSQL - Edge(style="dashed") - bckp2
- paSQL << nc >> ppSQL
|