Page History
...
- 순수 로컬일때 스탠드 Alone으로 모든기능이 작동됩니다.
- 로컬 Docker-Compose를 통해 클러스터 시스템을 디버깅할수 있습니다.
- Docker-Compose로 구성되고 작동되는 서비스는 쿠버네티스 또는 클라우드로 확장에 용이합니다.
Application LayOut
프로젝트는 2개이지만, 롤을 분리하여 4개의 어플리케이션을 띄운후
VisualStudio 내에서 작동및 디버깅을 하는 모습입니다.
- LightHouse : 아파치의 주키퍼와 유사한 역활을 하며, 클러스터에 조인할 노드들이 대상서비스를 찾을수 있게 디스커버리역활을 합니다.
- NetCoreCluser : 분산처리 노드 / 단일 노드등 여러가지 기능을 가질수 있으며 작동방법은 띄우는시점 결정되어 클러스터에 조인됩니다.
- docker-compose-infra : 도커 컴포저를 이용해 클러스터 로컬환경을 구성할수 있습니다. 프로젝트는 2개이지만, 롤을 분리하여 N개의 어플리케이션을 롤별로 구동가능합니다. ( 단일저장소 MSA)
로컬에서는 다음과같은 구성으로 NetCoreCluser-StandAlone 으로 모든 롤이 실행이 가능하며, SeedNode없이 Seed기능이 작동됩니다. ( 누구나, 클러스터의 Seed가 될수 있습니다. )
Code Block |
---|
{ "$schema": "http://json.schemastore.org/launchsettings.json", "profiles": { "Local-Development": { "commandName": "Project", "launchBrowser": false, "launchUrl": "help/", "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development", "CLUSTER_PORT": "7100", "CLUSTER_IP": "127.0.0.1", "CLUSTER_SEEDS": "akka.tcp://NetCoreCluster@127.0.0.1:7100", "CLUSTER_ROLES": "WorkNode,AdminNode", "ACTORSYSTEM": "NetCoreCluster" }, "applicationUrl": "http://localhost:7000" } } } |
도커 프로젝트 추가
VisualStudio에서 도커툴을 지원함에 따라, 도커화된 프로젝트를 빌드및 디버깅가능합니다.
...