ThingWorx 고가용성 > ThingWorx Foundation 파일 스토리지
ThingWorx Foundation 파일 스토리지
독립형 ThingWorx 설치의 경우 일반적으로 세 개의 설정된 파일 위치가 있습니다.
/ThingworxPlatform
/ThingworxStorage
/ThingworxBackupStorage
/ThingworxStorage 위치에 기본적으로 초기 파일 저장소가 만들어집니다. 클러스터링 배포의 경우 변경하고 일부 규칙을 따라야 합니다.
/ThingworxPlatform
ThingworxPlatform 폴더는 각 서버 인스턴스에 대해 로컬로 유지되며 공유해서는 안 됩니다. 이 폴더에는 ThingWorx 인스턴스를 시작할 때 읽어들이는 다음 필수 파일이 포함되어 있습니다.
platform-settings.json
keystore-password
license_capability_response.bin(또는 이 파일 이름의 변형)
다음 콘텐츠는 모든 ThingWorx HA 서버 간에 동기화되어야 합니다.
platform-settings.json
keystore-password
파일이 작성되거나 생성된 후 하나의 ThingWorx 서버에서 수정되면 해당 HA 구성의 다른 모든 ThingWorx 서버에서 콘텐츠가 업데이트되어야 합니다.
라이선싱 콘텐츠의 경우 각 ThingWorx 서버가 자체 라이선스 파일과 초기 활성화 시 작성된 신뢰 저장소를 둘 다 유지해야 합니다.
다음 프로세스를 사용하여 각 ThingWorx 서버의 /ThingworxPlatform에 이러한 파일을 설정할 수 있습니다.
1. 모든 ThingWorx 서버에서 /ThingworxPlatform을 만듭니다. 폴더 구조는 HA 구성에 포함된 모든 ThingWorx 서버에서 동일해야 합니다.
2. 시스템 환경에 맞게 platform-settings.json을 빌드하고 초기 ThingWorx 서버(HA 구성에서 시작할 첫 번째 ThingWorx 서버)의 /ThingworxPlatform에 저장합니다.
3. 초기 ThingWorx 서버를 시작하여 서버가 완전하게 작동하고 라이선스가 부여된 모든 예상 기능을 사용할 수 있는지 확인합니다. 이 시점에서는 /ThingworxPlatform 내에 세 개의 파일이 있어야 합니다.
platform-settings.json
keystore-password
successful_license_capability_response.bin
4. 초기 ThingWorx 서버를 종료합니다.
5. 초기 서버의 세 파일을 다른 서버의 /ThingworxPlatform 폴더에 복사합니다.
* 
platform-settings.json 파일에서 PlatformId 설정을 각 서버의 고유 ID로 업데이트해야 합니다. 자세한 내용은 ThingWorx HA를 위한 플랫폼 설정을 참조하십시오.
6. 다른 서버에서 라이선스 파일의 이름을 successful_license_capability_response.bin에서 license_capability_response.bin으로 바꿉니다.
7. 다른 ThingWorx 서버를 한 번에 하나씩 시작, 테스트 및 중지하여 라이선스가 부여된 모든 기능을 사용할 수 있는지 확인합니다.
ThingworxPlatform 폴더의 기본 위치는 /ThingworxPlatform입니다. 환경 변수 THINGWORX_PLATFORM_SETTINGS를 통해 기본 위치가 아닌 위치를 설정할 수 있습니다. ThingWorx와 함께 Tomcat을 시작하기 전에 Tomcat 운영 체제 사용자 환경에서 변수를 설정해야 합니다. THINGWORX_PLATFORM_SETTINGS로 참조되는 폴더가 있고 Tomcat 운영 체제 사용자에게 이 폴더에 대한 읽기/쓰기 권한이 있는지 확인합니다.
/ThingworxStorage
/ThingworxStorage 폴더는 모든 ThingWorx 서버가 동일한 읽기/쓰기 권한을 가지는 공유 파일 시스템 볼륨에 있어야 합니다.
keystore.pfx 파일은 이 폴더에 저장되며 플랫폼에 필요한 보안을 포함합니다. 이 파일은 keystore-password 파일에 연결됩니다. 두 파일을 모두 안전한 상태로 유지하고 백업해야 합니다. 두 파일 중 하나가 손실되면 데이터베이스에 저장된 정보를 해독할 수 없습니다.
로그 파일에 모든 서버의 로그가 포함되며 로그 엔트리에서 platformId로 식별됩니다.
/ThingworxStorage의 위치는 platform-settings.jsonBasicSettings 섹션에서 관리합니다.
Windows의 경우에만 ThingWorx Platform 호스트와 공유 스토리지 디렉터리가 위치한 호스트가 도메인에 있지 않은 경우 다음 단계를 완료합니다.
* 
로컬 사용자 계정을 사용하여 Apache Tomcat을 실행하는 경우에만 다음 단계를 완료합니다.
1. ThingWorx Platform 호스트와 공유 디렉터리가 있는 호스트에 존재하는 로컬 사용자 계정을 만듭니다.
* 
이 사용자 계정은 두 호스트에서 암호가 동일해야 합니다.
2. 1단계에서 로컬 사용자 계정으로 실행되도록 Apache Tomcat을 구성합니다.
a. 서비스 내에서 Apache Tomcat 서비스를 찾고 속성 > 로그온을 선택합니다.
b. 로컬 사용자 계정을 사용자 암호와 함께 입력합니다.
3. 플랫폼 스토리지 초기화 실패 오류를 방지하려면 로컬 사용자 계정에 Apache Tomcat 폴더의 tomcat9.exe 파일에 대한 전체 제어 권한을 부여합니다.
4. 네트워크 위치를 로컬 사용자 계정과 공유하고 전체 제어 권한을 부여합니다.
a. 네트워크 위치를 마우스 오른쪽 버튼으로 클릭하고 속성을 선택합니다. 공유 탭을 클릭합니다.
b. 로컬 사용자 계정을 찾고 읽기/쓰기를 선택합니다.
c. 보안 탭에서 로컬 사용자 계정에 전체 제어 권한이 부여되어 있는지 확인합니다.
5. platform-settings.json 내의 BasicSettings에 있는 Storage 키 값을 설정하여 네트워크 위치의 전체 UNC 경로를 사용합니다. 경로의 각 \에 대해 추가 백슬래시를 포함합니다. 예를 들면, 다음과 같습니다.
네트워크 공유 위치: \\ShareHost\MyThingworxShare
platform-settings.jsonStorage 값: \\\\ShareHost\\MyThingworxShare
6. Apache Tomcat을 다시 시작합니다.
/ThingworxBackupStorage
/ThingworxBackupStorage의 주요 용도는 H2 데이터베이스를 백업하는 것입니다. H2는 ThingWorx HA 구성에 대해서는 지원되지 않으므로 이 위치는 사용되지 않지만, 런타임에는 존재해야 합니다.
각 ThingWorx 서버에 이 위치를 만드는 것만으로도 오류가 로깅되는 것을 방지하기에 충분합니다.
HA 환경에서 불필요한 처리를 방지하려면 platform-settings.json 파일에서 "EnableBackup": false를 설정합니다.
/ThingworxBackupStorage의 위치는 platform-settings.json에서 관리됩니다. 폴더 구조는 모든 ThingWorx 서버에서 동일해야 합니다.
루트 파일 저장소
루트 파일 저장소는 모든 ThingWorx 서버가 동일한 읽기/쓰기 권한을 가지는 공유 파일 시스템 볼륨에 있어야 합니다.
루트 파일 저장소 폴더의 위치를 시스템의 platform-settings.json에 추가해야 합니다. 매개 변수 FileRepositoryRoot와 공유 파일 위치를 BasicSettings 섹션에 추가해야 합니다. 값에 저장소가 설정될 폴더 위치가 나열되어야 합니다. 예를 들어, 초기 저장소 폴더가 /ThingworxFileRepository/repository에 설정될 경우 platform-settings.json에 추가될 항목은 다음과 같아야 합니다. "FileRepositoryRoot":"/ThingworxFileRepository"
* 
platform-settings.json 파일에 FileRepositoryRoot 매개 변수가 지정되지 않은 경우 기본 저장소 위치(/ThingworxStorage)가 사용됩니다.
FileRepositoryRoot에 정의된 위치를 어떤 이유로든 사용할 수 없는 경우 시작 시 ThingWorx가 중단됩니다.
파일 공유 고려 사항:
NAS(Network Attached Storage)나 이에 해당하는 클라우드 저장소는 공유 파일 시스템을 제공하기 위한 일반적인 솔루션입니다.
NAS에는 이 ThingWorx HA 구현을 지원하기 위한 자체 고가용성 솔루션이 있어야 합니다.
ThingWorx 인스턴스가 시작되기 전에 서버에 볼륨이 마운트되어야 합니다.
각 ThingWorx 서버에서 Tomcat을 실행하는 운영 체제 사용자에게는 저장소가 설정된 파일 공유 위치에 대한 읽기/쓰기 권한이 있어야 합니다.
마운트 위치는 각 ThingWorx 서버에서 동일해야 합니다.
도움이 되셨나요?