動かした。つまりこういうこと。
補足
- service[12]-container において、envoy process と flask process の group は表現できなかった
- なんか最初の user -> front-envoy のフローで http スキーマのあとの // が消えて斜線になってしまった
- front の cluster からの通信では、docker-compose の alias で service[12] で 名前解決している
- listen してる port とか表現できてないけど通信の URL でわかってほしい
- 肝心の match prefix
service/1
の最後の数字が消えてる。。。 - admin port は省略している。でも 8001 で browser でアクセスするといろんな情報みれて便利
感想
スッと動いて便利。最初の最初にこれやるのはよさそう。
UML
最近また plantuml 使いはじめた。たのしい。こういう Editor で。
uml @startuml package "front-envoy-container" { [front-envoy-listener] [service1-cluster] [service2-cluster] } package "service1-container" { [service1-listener] [service1_local_service-cluster] [service1_flask] } package "service2-container" { [service2-listener] [service2_local_service-cluster] [service2_flask] } [user] --> [front-envoy-listener] : "http://localhost:8000/service/1 or http://localhost:8000/service/2" [front-envoy-listener] --> [service1-cluster] : match: prefix: "/service/1" [front-envoy-listener] --> [service2-cluster] : match: prefix: "/service/2" [service1-cluster] --> [service1-listener] : http://service1/service/1:80 [service2-cluster] --> [service2-listener] : http://service2/service/2:80 [service1-listener] --> [service1_local_service-cluster] : match: prefix: "/service" [service2-listener] --> [service2_local_service-cluster] : match: prefix: "/service" [service1_local_service-cluster] --> [service1_flask] : http://127.0.0.1:8080 [service2_local_service-cluster] --> [service2_flask] : http://127.0.0.1:8080 @enduml