Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • 순수 로컬일때 스탠드 Alone으로 모든기능이 작동됩니다.
  • 로컬 Docker-Compose를 통해 클러스터 시스템을 디버깅할수 있습니다.
  • Docker-Compose로 구성되고 작동되는 서비스는 쿠버네티스 또는 클라우드로 확장에 용이합니다.

Application LayOut

프로젝트는 2개이지만, 롤을 분리하여 4개의 어플리케이션을  띄운후 

VisualStudio 내에서 작동및 디버깅을 하는 모습입니다.

Image Removed

Image Added

  • 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에서 도커툴을 지원함에 따라, 도커화된 프로젝트를 빌드및 디버깅가능합니다.

...