2016-09-15 8 views
2

우리는 FIWARE NGSI 아키텍처를 분석하여 관련 인 에이 블러를 배포하기위한 확장 성 및 내결함성이 뛰어난 레시피를 제공합니다. 물론 우리는 ContextBroker 케이스에서 시작할 계획입니다. 우리는 그 다음 전체 내부 ContextBroker의 내용과 우리가 그것을 사용할 수있는 방법의 의미를 인식하지 못할 수 있기 때문에프로덕션 환경에서 ContextBroker를 배포하는 방법은 무엇입니까?

우리의 생각,하지만 우리는 피드백을 부탁드립니다 :

  1. 가 작성 정의/contextBroker 인스턴스의 연합을 지원하는 docker recipe (문서의 설명 : https://fiware-orion.readthedocs.io/en/develop/user/federation/index.html)
  2. 요청을 contextBroker의 다른 개인 IP에 균형을 맞추는 가상 IP가있는로드 밸런서 구성을 포함합니다.
  3. 클라이언트 IP에 따라 지리적 "샤딩"과 같은 추가 구성 옵션을 살펴보십시오.

물론 컨텍스트 브로커의 각 인스턴스에는 고유 한 "데이터베이스"인스턴스가 있습니다. 대안으로 mongo db의 "복제"기능을 활용하여 데이터베이스 수준에서 고 가용성의 "동기화"계층을 배치 할 수 있습니다. 그러나 이것이 좋은 생각인지 확신하지 못합니다.

모든 의견은 배포 (도움이 될 것입니다 다이어그램을 추가 할 질문의 게시물을 수정할)에 대한

답변

1

확실하지 :) 감사하지만 각 CB 인스턴스는 (자신의 상황에 맞는 데이터와 독립적 인 논리 노드의 역할을하는 경우 그래서 여러 CB 노드간에 연합을 언급 했으므로 프로덕션 배포에 대한 권장 사항은 각 노드를 고 가용성 (HA) 방식으로 설정하는 것입니다.

각 노드에 CB가 하나만있는 대신 액티브 - 액티브 CB-CB 구성을 사용하고 그 앞에 부하 분산 장치를 사용하십시오. 두 CB 모두 동일한 MongoDB 데이터베이스를 사용합니다. DB 레이어에서도 HA를 얻으려면 MongoDB 복제 세트를 사용해야합니다.