ThingWorx 배포 아키텍처
다음 단원에는 일반적인 ThingWorx 배포 다이어그램이 포함되어 있습니다. 아키텍처는 단순 개발 시스템에서 다중 노드 클러스터, 글로벌 페더레이션 생산 시스템에 이르기까지 다양합니다. ThingWorx 구성 요소에 대한 자세한 내용은 ThingWorx Foundation 배포 구성 요소를 참조하십시오.
* 
하이브리드 및 다중 사이트 배포에서 ThingWorx를 배포하려면 분산 ThingWorx 배포를 참조하십시오.
배포 옵션
PTC 클라우드 서비스 - 관리형 서비스 배포에서 ThingWorx 응용 프로그램은 타사 서버(대개 비공개 클라우드)에서 호스팅되고 관리됩니다. 필요한 인프라 관리 및 성능 보장에 대한 책임이 외부 조직에게 있습니다.
ThingWorx 관리에 대한 IT 부담 및 전문 기술에 관심이 있는 회사에는 PTC에서 관리형 서비스 배포 옵션을 제공합니다. PTC 클라우드 서비스를 통해 ThingWorx를 구매한 회사는 배포 속도를 높이고, IT 비용 및 요구사항을 최소화하고, 지속적인 성능을 유지할 수 있습니다. PTC 클라우드 서비스는 지속적인 응용 프로그램 관리, 성능 조정 및 업데이트가 제공되는 상업용 클라우드 서비스 내의 보안 환경에서 ThingWorx 솔루션을 호스팅합니다. 자세한 내용은 www.ptc.com/services/cloud를 참조하십시오.
온프레미스 배포 - 온프레미스 배포를 사용하는 것은 사용자의 사이트 또는 데이터 센터에 있는 서버에서 ThingWorx 소프트웨어를 설치하고 실행하는 것을 의미합니다. 인프라 및 소프트웨어 응용 프로그램 조달, 설치 및 유지 관리뿐만 아니라 이에 대한 상태, 가용성 및 성능과 관련한 지속적인 지원에 대한 책임은 사용자에게 있습니다.
온프레미스 배포를 사용하면 사용자가 배포를 직접 수행하거나 PTC 전문 서비스(또는 PTC 인증 파트너)의 도움을 받아 배포를 관리할 수 있습니다. 이 옵션은 강력한 IT 조직이 있고 사내 관리 시스템을 유지하려는 의지가 확고한 회사에 적합합니다.
자세한 내용은 다음 단원을 참조하십시오.
ThingWorx Foundation 기본 생산 시스템
기본 생산 시스템의 경우 데이터베이스를 별도의 서버에서 운영하도록 권장됩니다. 이는 소규모-중규모 엔터프라이즈 시스템 또는 중규모-대규모 제조 시스템에 적합합니다.
구성 요소 목록
구성 요소 수
부하 분산 장치
1개
ThingWorx Connection Server
1개
ThingWorx Foundation Server
1개
결합 또는 NAS 파일 스토리지
1개
데이터베이스
1개
ThingWorx Foundation 대규모 생산 시스템(HA 아님)
대규모 생산 시스템은 추가 구성 요소를 통합하여 더 많은 수의 연결된 장치와 높은 데이터 수집 속도를 지원합니다.
대규모 생산 시스템에는 플랫폼 구성 요소 외에도 ThingWorx Connection Server 및 InfluxDB 시계열 데이터베이스가 포함될 수 있습니다.
InfluxDB 시스템은 자산에서 들어오는 데이터를 수집하고, 이러한 데이터는 ThingWorx에서 로깅된 가치 스트림 콘텐츠로 관리합니다.
ThingWorx 모델 유지 관리를 위해 관계형 데이터베이스가 여전히 필요합니다.
InfluxDB는 수집 및 고가용성 요구사항을 기반으로 단일 노드 또는 다중 노드(엔터프라이즈) 구성으로 배포할 수 있습니다. 자세한 내용은 InfluxDB를 지속성 공급자로 사용을 참조하십시오.
구성 요소 목록
구성 요소 수
부하 분산 장치
1개(장치 트래픽을 연결 서버에 분산)
ThingWorx Connection Server
2개n개(장치 수에 따라 다름)
ThingWorx Foundation Server
1개
관계형 데이터베이스
1개
InfluxDB(단일 노드)
1개
ThingWorx 생산 클러스터
고가용성(HA) 배포의 경우 응용 프로그램 및 데이터 레이어에서 단일 실패 지점을 제거하는 추가 구성 요소가 추가됩니다. ThingWorx Platform에는 다음과 같은 구성 요소가 필요합니다.
고가용성 부하 분산 장치. 연결 서버 및 Foundation 서버 노드 그룹 모두 로드 분산을 위한 부하 분산 장치 인스턴스가 필요합니다. Influx Enterprise 클러스터에는 인스턴스(사용되는 경우)도 필요합니다. 많은 부하 분산 장치 옵션은 여러 인스턴스를 처리할 수 있습니다. 적절하게 구성된 경우 세 개의 인스턴스를 모두 처리하는 데 단일 기기가 사용될 수 있습니다.
두 개 이상의 ThingWorx Connection Server. 클러스터링된 작업에서는 장치 로드를 클러스터 간에 분산하거나 노드 실패가 발생하는 경우 다시 분산하기 위해 연결 서버가 필요합니다.
두 개 이상의 ThingWorx Foundation 인스턴스. 각 노드가 활성 상태임 - 로드가 노드 간에 분산됩니다.
ThingWorxStorage는 공유(각 노드에서 액세스 가능)되는 디스크상의 스토리지입니다.
* 
전체 고가용성 배포의 경우 부하 분산 장치 및 공유 ThingWorxStorage에도 중복이 구현되어 있어야 합니다.
Apache Ignite 노드 - ThingWorx Foundation 노드에 대한 공유 캐시를 제공합니다.
세 개의 Apache ZooKeeper 노드. ZooKeeper가 ThingWorx 노드를 모니터링하여 각 노드가 반응하고 예상대로 작동 하는지 여부를 확인합니다. ZooKeeper 노드는 쿼럼을 형성하고 ThingWorx 노드가 오프라인일 때를 결정합니다. ThingWorx Foundation 노드가 오프라인 상태가 되면 ZooKeeper가 ThingWorx 부하 분산 장치를 재구성하여 트래픽의 방향을 다른 Foundation 노드로 지정합니다.
PostgreSQL 데이터베이스에는 다음과 같은 구성 요소가 필요합니다.
PostgreSQL 서버 노드 - 최소 두 개(세 개가 이상적임)의 노드가 사용됩니다.
pgpool-II 노드 - PostgreSQL 서버 실패 시 장애 조치 및 복구 작업을 수행하는 최소 두 개(세 개가 이상적임)의 노드입니다. 이러한 노드는 클라이언트(ThingWorx)와 서버(PostgreSQL) 간의 연결을 유지 관리하고 PostgreSQL 서버 노드 간의 콘텐츠 복제를 관리합니다.
InfluxDB Enterprise 시스템에는 다음과 같은 구성 요소가 필요합니다.
InfluxDB Enterprise 메타 노드 - 쿼럼에 도달할 수 있고 한 노드가 실패할 때 클러스터가 계속 작동할 수 있도록 세 개의 노드 설정이 권장됩니다.
InfluxDB Enterprise 데이터 노드 - 하나도 가능하지만 최소 두 개가 권장됩니다. InfluxDB 복제 요소로 균등하게 나눌 수 있는 노드 수가 권장됩니다.
고가용성 환경에서 ThingWorx를 배포하는 방법에 대한 자세한 내용은 ThingWorx 고가용성을 참조하십시오.
높은 확장성 및 고가용성 클러스터
이 다이어그램에서는 클러스터의 각 구성 요소가 자체 물리적 시스템, 가상 컴퓨터 또는 컨테이너에 있습니다. 이렇게 해야 서로 다른 구성 요소 그룹을 각각 독립적으로 확장할 때 가장 유연해질 수 있습니다.
구성 요소 목록
구성 요소 수
ThingWorx Connection
Server
2개n개
(장치 수 기준)
부하 분산 장치
2개 또는 3개의 인스턴스:
장치 트래픽을 연결 서버로 라우팅합니다.
트래픽을 ThingWorx 노드 사이로 라우팅합니다.
트래픽을 InfluxDB Enterprise 데이터 노드(사용되는 경우) 사이로 라우팅합니다.
ThingWorx Foundation Server
2개 n개: 고가용성 및 확장성 요구사항 기준
네트워크/엔터프라이즈 스토리지
모든 ThingWorx Foundation Server와 공유되는 ThingWorx Storage 저장소에 대한 디스크 공간입니다.
Ignite
두 가지 옵션:
Foundation 프로세스 내에 포함되어 있습니다.
2개 이상의 별도의 노드(HA 요구사항에 따라 달라짐)
ZooKeeper
최소 3개. 홀수 할당이어야 합니다.
데이터베이스
데이터베이스에 따라 다름:
PostgreSQL: 3개의 데이터베이스 노드 + 2개의 pgpool-II 노드
MS SQL Server(그림에 없음): 장애 조치 구성의 일부로 최소 2개입니다.
InfluxDB Enterprise
5개(또는 5개 이상).
3개의 메타 노드
2개 이상의 데이터 노드, 총 개수를 복제 요소로 균등하게 나눌 수 있습니다.
최소 클러스터 공간
이 다이어그램에서는 구성 요소가 더 작은 물리적/가상 컴퓨터 또는 컨테이너 집합으로 압축되거나 그룹화되어 있습니다.
이 구성은 고가용성에 사용할 수 있지만 구성 요소가 리소스를 공유하는 분산 구성에 비해 확장성이 떨어집니다.
이 다이어그램을 사용하여 여러 독립 ThingWorx 배포에서 동일한 공유 인프라(ZooKeeper, DB, 네트워크 스토리지)를 활용하는 배포를 확인할 수도 있습니다.
구성 요소 목록(클러스터 노드당)
구성 요소 수
ThingWorx Connection Server
1개(클러스터 노드당)
ThingWorx Foundation Server
1개(클러스터 노드당)
Ignite
없음 - 각 Foundation Server 프로세스 내 포함된 모드로 실행 중입니다.
구성 요소 목록(공유)
구성 요소 수
부하 분산 장치 인스턴스
2개 또는 3개의 인스턴스:
장치 트래픽을 연결 서버로 라우팅합니다.
트래픽을 ThingWorx 노드 사이로 라우팅합니다.
트래픽을 InfluxDB Enterprise 데이터 노드(사용되는 경우) 사이로 라우팅합니다.
ZooKeeper
최소 3개. 홀수 할당이어야 합니다.
데이터베이스
이전 다이어그램을 참조하십시오.
네트워크/엔터프라이즈 스토리지
모든 ThingWorx Foundation Server와 공유되는 ThingWorx Storage 저장소에 대한 디스크 공간입니다.
도움이 되셨나요?