PlantUML에서 Google Cloud Platform의 시스템 구성도 작성
제목
PlantUML 는 다이어그램을 생성하는 DSL.
예를 들어, 아래와 같이 써 plantuml
커멘드로 화상 변환하면,
@startuml
Alice -> Bob: Authentication Request
Bob --> Alice: Authentication Response
Alice -> Bob: Another authentication Request
Alice <-- Bob: another authentication Response
@enduml
다음과 같은 이미지 파일 (png)이 완성됩니다.
위는 시퀀스 다이어그램의 예이지만 UML 세트는 물론 와이어 프레임, 간트 차트, 마인드 맵까지 쓸 수 있습니다.
이번에는 이 PlantUML에서 Google Cloud Platform의 시스템 구성도를 작성해 보자.
개발 환경
#OS
$ cat /etc/os-release
NAME="Ubuntu"
VERSION="18.04.2 LTS (Bionic Beaver)"
# Visual Studio Code
Version: 1.33.1
Commit: 51b0b28134d51361cf996d2f0a1c698247aeabd8
Date: 2019-04-11T08:20:22.771Z
Electron: 3.1.6
Chrome: 66.0.3359.181
Node.js: 10.2.0
V8: 6.6.346.32
OS: Linux x64 4.15.0-47-generic
실천
plantuml-gcp-icons
"plantuml-gcp-icons"이라는 GCP의 각 서비스의 아이콘을 보여주는 도구를 사용.
덧붙여서, AWS의 각 서비스의 아이콘을 도시하는 것도 있는 것 같다.
htps : // 기주 b. 코 m / mi-min r 병 r / WS-P 펜츠 ML
전제
이하는 구구하면 곧 알기 때문에 생략.
@startuml
Alice -> Bob: Authentication Request
Bob --> Alice: Authentication Response
Alice -> Bob: Another authentication Request
Alice <-- Bob: another authentication Response
@enduml
#OS
$ cat /etc/os-release
NAME="Ubuntu"
VERSION="18.04.2 LTS (Bionic Beaver)"
# Visual Studio Code
Version: 1.33.1
Commit: 51b0b28134d51361cf996d2f0a1c698247aeabd8
Date: 2019-04-11T08:20:22.771Z
Electron: 3.1.6
Chrome: 66.0.3359.181
Node.js: 10.2.0
V8: 6.6.346.32
OS: Linux x64 4.15.0-47-generic
실천
plantuml-gcp-icons
"plantuml-gcp-icons"이라는 GCP의 각 서비스의 아이콘을 보여주는 도구를 사용.
덧붙여서, AWS의 각 서비스의 아이콘을 도시하는 것도 있는 것 같다.
htps : // 기주 b. 코 m / mi-min r 병 r / WS-P 펜츠 ML
전제
이하는 구구하면 곧 알기 때문에 생략.
샘플
우선은 plantuml-gcp-icons 사이트의 README 에 있는 것을 그대로 화상 변환해 본다.
@startuml
!include ./common.puml
!include ./GCP Icons/Products & Services/Storage & Databases/Cloud Bigtable.puml
!include ./GCP Icons/Products & Services/Big Data/BigQuery.puml
GCP_CloudBigtable(foo, "My BigTable")
GCP_BigQuery(bar, "Data Processing")
foo -> bar
@enduml
※Visual Studio Code의 PlantUML 플러그인이 표시한 미리보기
소매업을 위한 실시간 인벤토리 시스템
이하에 실려 있는 아키텍쳐도를 표현해 본다.
htps : // c ぉ d. 오, ぇ. 코 m / 소 치온 s / 부이 l ぢ ん れ あ ー ー ち め ー ー ゔ ぇ와 ry-sys ms 싶어 l? hl = 그럼
@startuml
!include ./common.puml
!include ./Icons/Compute/App Engine.puml
!include ./Icons/Big Data/Cloud PubSub.puml
!include ./Icons/Big Data/Cloud Dataflow.puml
!include ./Icons/Storage & Databases/Cloud SQL.puml
!include ./Icons/Big Data/BigQuery.puml
!include ./Icons/Storage & Databases/Cloud Bigtable.puml
rectangle RetailStore as rs {
node "Inventory Changes" <<"Point of sale">>
}
rectangle Ingest {
GCP_AppEngine("cc","Capture Changes")
}
rectangle Messaging {
GCP_CloudPubSub("sc", "Streaming Changes")
}
rectangle Services {
GCP_AppEngine("ia","Inventory APIs")
}
rectangle Processing {
GCP_CloudDataflow("is", "Inventory Streams")
}
rectangle Aggregates {
GCP_CloudSQL("ic", "Inventory Counts")
}
rectangle Analytics {
GCP_BigQuery("dw", "Data Warehouse")
}
rectangle Events {
GCP_CloudBigtable("pc", "Processed Changes")
}
rectangle Integrations as i {
node "Google Services"
}
rectangle BackOffice as bo {
node "Businness Applications"
}
rs -> cc
cc --> sc
sc --> ia
sc -> is
is --> ic
ic -left-> ia
is -> pc
is -> dw
ia --> bo
ia --> i
@enduml
※Visual Studio Code의 PlantUML 플러그인이 표시한 미리보기
요약
조금 아직 표현력으로서는 아쉽다고 하는 느낌일까. . .
물론 PlantUML을 쓰는 방법을 더 이해하면 좀 더 좋은 그림이 될 것 같지만.
이번 소스는 ↓
htps : // 기주 b. 코 m / 스카이 0621 / try-p ぁ つ ml / t Ree /
Reference
이 문제에 관하여(PlantUML에서 Google Cloud Platform의 시스템 구성도 작성), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/sky0621/items/50f04ed43d45c8b5983b
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(PlantUML에서 Google Cloud Platform의 시스템 구성도 작성), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/sky0621/items/50f04ed43d45c8b5983b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)