浏览代码

docs: add an example for on-premise

tags/v0.6.0
mingrammer 4 年前
父节点
当前提交
c500223e81
共有 2 个文件被更改,包括 50 次插入0 次删除
  1. +50
    -0
      docs/getting-started/examples.md
  2. 二进制
      website/static/img/on-premise_system_architecture.png

+ 50
- 0
docs/getting-started/examples.md 查看文件

@@ -200,3 +200,53 @@ with Diagram("Broker Consumers", show=False):
````

![rabbitmq consumers diagram](/img/rabbitmq_consumers_diagram.png)

## On-Premise System Architecture

```python
from diagrams import Cluster, Diagram
from diagrams.onprem.analytics import Spark
from diagrams.onprem.compute import Server
from diagrams.onprem.database import PostgreSQL
from diagrams.onprem.inmemory import Redis
from diagrams.onprem.logging import Fluentd
from diagrams.onprem.monitoring import Grafana, Prometheus
from diagrams.onprem.network import Linkerd, Nginx
from diagrams.onprem.queue import Kafka
from diagrams.onprem.workflow import Airflow

with Diagram("On-Premise System Architecture", show=False):
ingress = Nginx("ingress")

with Cluster("Service Cluster"):
svcmesh = Linkerd("svcmesh")
grpcsvc = [Server("grpc1"), Server("grpc2"), Server("grpc3")]
svcmesh >> grpcsvc

with Cluster("Database HA"):
maindb_master = PostgreSQL("maindb")
maindb_replica = PostgreSQL("replica")
maindb_master - maindb_replica
grpcsvc >> maindb_master

maindb_replica >> Airflow("scheduler")

with Cluster("Sessions HA"):
session_master = Redis("session")
session_master - Redis("replica")
grpcsvc >> session_master

logaggr = Fluentd("aggregator")
logaggr >> Kafka("stream") >> Spark("log analytics")
grpcsvc >> logaggr

metricq = Kafka("buffer")
metricq >> Prometheus("metric") >> Grafana("monitoring")

logaggr >> metricq
svcmesh >> metricq

ingress >> svcmesh
```

![on-premise system architecture diagram](/img/on-premise_system_architecture.png)

二进制
website/static/img/on-premise_system_architecture.png 查看文件

之前 之后
宽度: 1319  |  高度: 1027  |  大小: 157 KiB

正在加载...
取消
保存