ThingWorx 高可用性 > ThingWorx Foundation のファイルストレージ
ThingWorx Foundation のファイルストレージ
スタンドアロン ThingWorx インストールでは、通常は次の 3 つのファイルの場所が用意されています。
/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 内に 3 つのファイルが存在します。
platform-settings.json
keystore-password
successful_license_capability_response.bin
4. 初期 ThingWorx サーバーをシャットダウンします。
5. 初期サーバーからほかの 1 つまたは複数のサーバーの /ThingworxPlatform フォルダに 3 つのファイルをコピーします。
* 
各サーバーの platform-settings.json ファイルで、PlatformId 設定を一意の ID に更新する必要があります。詳細については、ThingWorx HA のプラットフォームの設定を参照してください。
6. ほかのサーバーで、ライセンスファイルの名前を successful_license_capability_response.bin から license_capability_response.bin に変更します。
7. ほかの ThingWorx サーバーを一度に 1 つずつ起動、テスト、および停止して、すべてのライセンス機能が使用可能であることを確認します。
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 プラットフォームのホストと、共有ストレージディレクトリが配置されているホストがドメインにない場合は、次の手順を実行します。
* 
ローカルユーザーアカウントを使用して Apache Tomcat を実行している場合に限り、次の手順を実行します。
1. ThingWorx Platform のホストと、共有ディレクトリがあるホストに存在するローカルユーザーアカウントを作成します。
* 
このユーザーアカウントのパスワードは両方のホストで同じでなければなりません。
2. 手順 1 のローカルユーザーアカウントとして実行するように Apache Tomcat を設定します。
a. 「サービス」内で、Apache Tomcat サービスを見つけ、「プロパティ」 > 「Log On」の順に選択します。
b. ローカルユーザーアカウントとユーザーパスワードを入力します。
3. Platform ストレージ初期化エラーを回避するため、Apache Tomcat フォルダにある tomcat9.exe ファイルに対する「Full Control」アクセス許可をローカルユーザーアカウントに付与します。
4. ネットワークの場所をローカルユーザーアカウントと共有し、「Full Control」アクセス許可を付与します。
a. ネットワークの場所を右クリックし、「プロパティ」を選択します。「共有」タブをクリックします。
b. ローカルユーザーアカウントを見つけ、「Read/Write」を選択します。
c. 「セキュリティ」タブで、ローカルユーザーアカウントに「Full Control」アクセス許可が付与されていることを確認します。
5. ネットワークの場所の UNC パスを使用するために、platform-settings.json 内の BasicSettingsStorage キーの値を設定します。パスのそれぞれの \ に追加のバックスラッシュを含めます。例:
ネットワーク共有場所: \\ShareHost\MyThingworxShare
platform-settings.json 内の Storage 値: \\\\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" を追加する必要があります。
* 
FileRepositoryRoot パラメータが platform-settings.json ファイルで指定されていない場合、デフォルトのリポジトリの場所 /ThingworxStorage が使用されます。
何らかの理由で FileRepositoryRoot で定義されている場所を使用できない場合、起動時に ThingWorx が中止されます。
ファイル共有に関する考慮事項:
ネットワークアタッチストレージ (NAS) 製品またはクラウドストレージは、共有ファイルシステムを提供するための一般的なソリューションです。
NAS 製品にはこの ThingWorx HA 実装をサポートするための独自の高可用性ソリューションがあります。
ThingWorx インスタンスを開始する前にサーバーにボリュームをマウントしなければなりません。
各 ThingWorx サーバー上で Tomcat サービスを実行しているオペレーティングシステムユーザーは、リポジトリが確立されているファイル共有場所に対する読み取り/書き込みのアクセス許可を持っていなければなりません。
マウントの場所は各 ThingWorx サーバーで同じでなければなりません。
これは役に立ちましたか?