728x90
반응형

Diagrams 라는 Python Github 오픈소스 라이브러리 이며, 이 라이브러리는 소스 작성을 통해서 그림을 그려주는 것을 정말로 간단하게 해준다.
Github 주소 : github.com/mingrammer/diagrams
mingrammer/diagrams
:art: Diagram as Code for prototyping cloud system architectures - mingrammer/diagrams
github.com
Docs 주소 : diagrams.mingrammer.com/docs/guides/diagram
Diagrams · Diagram as Code
Diagram as Code
diagrams.mingrammer.com
이하 샘플로 작성한 코드.
from diagrams import Diagram, Cluster
from diagrams.aws.compute import EC2
from diagrams.aws.database import RDS, Database
from diagrams.aws.network import ELB
from diagrams.oci.monitoring import Queue
from diagrams.onprem.database import MySQL
from diagrams.onprem.inmemory import Redis
from diagrams.onprem.network import Nginx, Apache, Internet
from diagrams.onprem.queue import Celery
"""
https://diagrams.mingrammer.com
"""
with Diagram("WMS zzz", show = False):
user_web = EC2("Web")
with Cluster('WEB SERVER'):
web_server = [
Apache('Web Server'), Nginx('Web Server')
]
with Cluster('QUEUE'):
sever_queue = Redis('Queue Broker')
sever_queue - [Celery('Queue Worker')]
with Cluster('DATABASE'):
db_master = MySQL('Database')
# db_master - Database('Database')
with Cluster('DATABASE2'):
db_slave = MySQL('Database2')
# db_slave - Database('Database2')
user_web >> web_server >> sever_queue
sever_queue >> db_master
sever_queue >> db_slave
web_server >> db_master
web_server >> db_slave

728x90
반응형