설치 및 업그레이드 > 고가용성 활성-활성 환경에 대한 ThingWorx Apps 확장 가져오기
고가용성 활성-활성 환경에 대한 ThingWorx Apps 확장 가져오기
* 
이 항목의 지침은 HA(고가용성) 활성-활성 환경에 대해 구성된 ThingWorx 시스템에서 ThingWorx Apps의 초기 가져오기에 관한 것입니다. 단일 서버 ThingWorx 시스템에서 ThingWorx Apps를 가져오는 경우 ThingWorx Apps 확장 프로그램 가져오기의 지침을 따르십시오.
ThingWorx Apps는 다음 구성을 사용하여 고가용성(HA) 활성-활성 환경으로 구성된 ThingWorx 시스템에서 실행할 수 있습니다.
2개 서버 고가용성 활성-활성 설치.
Ignite을 독립형을 실행하는 대신 ThingWorx Platform에 포함된 Apache Ignite를 사용하여 실행.
다음 그림은 이 시나리오에 대한 클러스터 구성을 보여줍니다.
다음은 HA 배포에 포함될 수 있는 구성 요소입니다.
사용자 및 장치 - HA 기능에서 역할이 없습니다. 사용자 및 장치 관점에서는 어떤 변경도 없습니다. 주 ThingWorx 서버가 변경되더라도 사용자 및 장치는 항상 동일한 URL 및 IP 주소를 사용합니다.
방화벽 - 어떠한 HA 기능도 선택적 기능으로 간주할 수 없습니다. 대개 방화벽은 보안 요구사항을 구현하기 위해 배치됩니다.
부하 분산 - 부하 분산은 부하 부산이 지원하는 응용 프로그램에 대한 가상 IP 주소를 관리합니다. 해당 가상 IP 주소로 라우팅되는 모든 트래픽은 트래픽을 수신할 수 있는 활성 응용 프로그램으로 전달됩니다. 이 시나리오에서는 HAProxy가 사용됩니다.
ThingWorx Connection Servers - 자산에서 웹 소켓 트래픽을 수신하여 ThingWorx Platform으로 라우팅합니다. 연결 서버는 클러스터 구성에서 작동할 수 있습니다. 자산이 특정 연결 서버로 전달된 후에는 항상 동일한 연결 서버를 사용해야 합니다. 해당 서버가 오프라인 상태가 되면 사용 가능한 다른 연결 서버로 자산이 리디렉션되어야 합니다.
ThingWorx Foundation - 모든 사용자 및 자산 트래픽을 수신합니다.
ThingWorx 저장소 - ThingworxPlatform, ThingworxStorageThingworxBackupStorage와 같은 필수 스토리지 위치 및 구현을 지원하기 위해 추가된 추가 스토리지 위치입니다. 클러스터 환경의 경우 모든 ThingWorx 서버가 동일하게 액세스할 수 있는 공통 스토리지 위치에 저장 폴더가 있어야 합니다.
Apache ZooKeeper - ZooKeeper는 서비스 검색, 단일 선택 및 분산 조정을 위해 ThingWorx Connection Server 및 Ignite에서 사용하는 중앙 집중형 조정 서비스입니다.
Apache Ignite - Ignite는 클러스터의 서버 간에 상태를 공유하는 분산 메모리 캐시를 제공합니다. 이 구성에서 Ignite는 별도로 설치되지 않고 ThingWorx Platform에 포함되어 있습니다.
PostgreSQL - HA 구성의 경우 PostgreSQL은 상시 대기 구성에 있는 하나 이상의 서버 노드를 통해 작동합니다. 한 노드가 모든 쓰기 트래픽을 수신하고 다른 노드 중 하나가 모든 읽기 트래픽을 수신할 수 있습니다. 각 노드를 최신 상태로 유지하기 위해 모든 노드 간에 스트리밍 복제가 활성화됩니다.
Pgpool-II - PostgreSQL HA 구성에서만 사용됩니다. Pgpool-II 노드는 ThingWorx 요청(읽기 및 쓰기)을 수신하여 적절한 PostgreSQL 노드로 전달합니다. 또한 각 PostgreSQL 노드의 상태를 모니터링하고 노드 중 하나가 오프라인 상태가 되면 작업의 대상을 변경하고 장애 조치를 시작할 수 있습니다.
Microsoft SQL Server - Microsoft 장애 조치(Failover)는 하나 이상의 MS SQL 서버가 온라인이고 사용 가능한 상태가 되도록 보장하는 데 사용됩니다.
InfluxDB - InfluxDB 구현은 ThingWorx 클러스터링 구성에 필요하지 않습니다. 구현의 수집 요구사항을 충족하기 위해 필요한 경우에는 HA에 맞게 구성되어 있는지 확인하십시오.
자세한 내용은 ThingWorx 도움말 센터의 ThingWorx 고가용성을 참조하십시오.
설치 프로세스
다음 단원의 단계를 완료하십시오.
사전 요구 사항
시작하기 전에 다음 사전 요구 사항을 완료하십시오.
ThingWorx Apps 제품 요구 사항을 검토합니다.
ThingWorx 9.0 요구 사항을 검토합니다. 자세한 내용은 ThingWorx 도움말 센터의 9.0 시스템 요구 사항클러스터링 요구 사항을 참조하십시오.
고가용성 활성-활성 환경에 대한 ThingWorx 설치 및 구성
다음 단계를 완료합니다.
1. ThingWorx 도움말 센터의 ThingWorx HA를 위한 ZooKeeper 설치 및 구성에서 설명한 대로 Apache ZooKeeper를 설치하고 구성합니다.
2. ThingWorx 도움말 센터의 PostgreSQL 고가용성 또는 Microsoft SQL Server 고가용성에서 설명한 대로 데이터베이스를 설치하고 구성합니다.
3. Apache Ignite를 설치하지 마십시오.
4. ThingWorx 도움말 센터의 클러스터링을 위한 ThingWorx Foundation 구성에서 설명한 대로 두 서버에 ThingWorx 9.0을 설치하고 구성합니다.
5. ThingWorx 서버에서 platform-settings.json 파일을 구성할 때 다음 값이 설정되어 있는지 확인합니다.
cache 섹션에서:
client-modefalse로 설정합니다.
read-from-backuptrue로 설정합니다.
cache-modeREPLICATED로 설정합니다.
backups0로 설정합니다.
BasicSettings 섹션에서 ScriptTimeout 설정을 500으로 업데이트합니다.
추가 설정 정보는 ThingWorx 도움말 센터에서 ThingWorx HA를 위한 플랫폼 설정을 참조하십시오.
6. /ThingWorxStorage/ThingWorxBackupStorage 폴더가 두 ThingWorx 서버 모두에서 액세스할 수 있는 공통 위치에 있는지 확인합니다. 자세한 내용은 ThingWorx Foundation 파일 스토리지를 참조하십시오.
7. ThingWorx 도움말 센터의 ThingWorx HA를 위한 ThingWorx Connection Servers에서 설명한 대로 ThingWorx Connection Server를 설치하고 구성합니다.
8. ThingWorx 도움말 센터의 ThingWorx 고가용성을 위한 부하 분산HAProxy 예제에서 설명한 대로 HAProxy를 부하 분산으로 설치하고 구성합니다.
9. 다음 HAProxy timeout 설정을 500s 값으로 업데이트합니다.
timeout connect
timeout client
timeout server
10. ThingWorx에서 확장 가져오기를 활성화하도록 구성합니다. 자세한 내용은 ThingWorx 도움말 센터의 확장 프로그램 가져오기를 참조하십시오.
11. ThingWorx 확장을 가져오기 전에 ThingWorx 플랫폼 설치의 일부로 ThingWorx Apps Remote Access Extension을 가져와야 합니다. 자세한 내용은 ThingWorx 도움말 센터의 원격 액세스를 참조하십시오.
확장 파일 가져오기
ThingWorx Apps를 기존 ThingWorx 9.x 플랫폼 설치에 ThingWorx 확장으로 가져옵니다.
* 
고가용성 클러스터링 환경에서는 ThingWorx 서버 중 하나에서만 ThingWorx 확장을 가져오면 됩니다. 자세한 내용은 ThingWorx 도움말 센터에서 ThingWorx HA에서 ThingWorx Extension 관리를 참조하십시오.
1. ThingWorx Remote Access Extension을 가져와야 합니다. 자세한 내용은 ThingWorx 도움말 센터의 원격 액세스를 참조하십시오.
2. 다음 파일의 콘텐츠를 다운로드하고 압축을 풉니다. ThingWorx-Apps-<버전>-extension-bundle
다운로드를 찾으려면 PTC 소프트웨어 다운로드 페이지로 이동하여 ThingWorx Foundation > Release 9.0 > ThingWorx Manufacturing Apps Extension 또는 ThingWorx Service Apps Extension 폴더를 확장합니다.
3. ThingWorx Apps 확장 파일을 가져옵니다. 확장 파일은 다음 순서로 가져와야 합니다.
a. ThingWorx-Apps-<버전>-extension-dependencies
b. ThingWorx-Apps-<버전>-extension
확장 파일을 가져오려면 다음을 수행하십시오.
a. ThingWorx Composer에서 가져오기/내보내기 > 가져오기로 이동합니다.
b. 가져오기 창의 가져오기 옵션 목록에서 확장을 선택합니다.
c. 파일 이름에서 찾아보기를 클릭합니다. 확장 프로그램 파일을 찾아 선택합니다.
d. 가져오기를 클릭합니다. 가져오기가 완료되면 닫기를 클릭합니다.
e. 필요에 따라 반복합니다.
4. 가져오기가 완료된 후 관리 > 확장으로 이동하여 확장을 확인합니다.
선택적 확장 가져오기
다음 선택적 확장은 ThingWorx Apps와 함께 가져올 수 있으며 PTC 소프트웨어 다운로드 페이지의 동일한 위치에서 다운로드할 수 있습니다.
ThingWorx-Asset-Remoting-<버전>-extension - Asset Advisor에서 Remote Access and Control 기능을 사용할 수 있습니다. 자세한 내용은 Remote Access and Control 항목을 참조하십시오.
ThingWorx-Apps-<버전>-extension-factory-demo - 제조 계획 활동에 대한 예제 구현을 제공합니다. 자세한 내용은 제조 계획 예제 구현 항목을 참조하십시오.
다음 선택적 확장 프로그램은 ThingWorx Apps와 함께 가져올 수 있으며 ThingWorx Foundation > Release 9.0 > ThingWorx Utilities > 최근 제조코드에서 다운로드할 수 있습니다.
ThingWorx-Software-Content-Management-<버전> - 자세한 내용은 Software Content Management 항목을 참조하십시오.
* 
ThingWorx Utilities Core 확장 번들은 ThingWorx Software Content Management 확장에 대한 사전 요구 사항이므로 먼저 가져와야 합니다. ThingWorx Utilities Core 확장 번들을 아직 가져오지 않은 경우 ThingWorx Software Content Management 확장을 가져오기 전에 가져오십시오. 자세한 내용은 ThingWorx Utilities 도움말 센터의 ThingWorx Utilities 설치를 참조하십시오.
다음 선택적 확장 프로그램은 ThingWorx Apps와 함께 가져올 수 있으며 ThingWorx Foundation > Release 8.5 > ThingWorx Rockwell FactoryTalk MES 확장 프로그램에서 다운로드할 수 있습니다. 이 8.5.0 확장은 ThingWorx Apps 9.0에서 지원됩니다.
ThingWorx-Rockwell-FT-MES-8-5-0-Extension-Bundle - 자세한 내용은 ThingWorx Rockwell FactoryTalk MES 통합 항목을 참조하십시오.
ThingWorx Apps 확장을 가져온 것과 같은 방식으로 선택적 확장을 가져옵니다.
가져오기 후 데이터베이스 구성
ThingWorx Apps 확장을 가져온 후 다음 데이터베이스 구성을 완료합니다.
1. 데이터베이스에 해당하는 데이터베이스 사물(PTC.SCA.SCO.PostgresDatabase 또는 PTC.SCA.SCO.MSSQLDatabase)로 이동합니다.
2. 구성 아래에서 JDBC 연결 문자열, 데이터베이스 사용자 이름데이터베이스 암호 필드를 포함하여 사용자의 데이터베이스에 적합하게 JDBC 설정을 지정합니다. ThingWorx Platform에 사용되는 동일한 데이터베이스를 사용 중인 경우 이러한 세 개 필드는 platform-settings.json 파일에 지정된 값과 동일한 값을 사용합니다.
* 
데이터베이스 사물을 구성하기 전에 필요한 JDBC 드라이버가 ThingWorx에 있는지 확인합니다. ThingWorx는 JDBC 드라이버를 사용하여 JDBC 호환 데이터베이스(예: SQL Server, MySQL 등)에 연결할 수 있습니다. 데이터베이스가 방화벽 뒤에 있는 경우 OLEDB 및 ODBC를 사용하는 ThingWorx Edge MicroServer 및 ThingWorx 호스트/리소스를 사용하여 연결할 수도 있습니다. ThingWorx에 데이터베이스용 JDBC 확장 프로그램이 없는 경우 JDBC 드라이버를 다운로드하고 /<Tomcat 폴더>/webapps/Thingworx/WEB-INF/lib 위치에 파일을 추가하여 해당 드라이버를 수동으로 추가할 수 있습니다. 드라이버를 복사한 후 ThingWorx 서버를 다시 시작해야 합니다.
3. 저장을 클릭하여 데이터베이스 사물을 저장합니다.
4. PTC.Factory.C_LaunchPointConfigurationThing_[ReleaseVersion] 사물로 이동합니다.
5. 구성DatabaseConfigurationSettings 단원에서 2단계에서 구성한 데이터베이스 사물을 가리키도록 DBConnection 필드를 편집합니다.
6. 저장을 클릭하여 시작 지점 구성 사물을 저장합니다.
7. PTC.SCA.SCO.DatabaseManager 사물로 이동합니다.
8. 서비스에서 CreateTables 서비스를 실행합니다.
ThingWorx Apps 액세스
ThingWorx Apps에 액세스하려면 ThingWorx 서버에서 다음 URL로 이동합니다. <포트>를 사용자의 포트 번호로 바꿉니다.
https://localhost:<포트>/Thingworx/FormLogin/Welcome
기본 사용자 이름은 Administrator입니다. 암호는 ThingWorx 설치 및 구성 과정에서 사용자가 지정한 암호입니다.