手動インストール
Windows インストール
Java、Apache Tomcat、および ThingWorx のインストール
Java と Apache Tomcat のインストール
1. Java バージョンの要件については、ThingWorx の「システム要件」を参照してください。
2. 必要なバージョンの Java をダウンロードしてインストールします。
9.0: Java
9.1 以降: OpenJDK または Java 11
ダウンロードしたファイル (openjdk-11 zip など) を解凍し、解凍したフォルダ内の jdk-<xxx> フォルダをコピーします。jdk フォルダを C:\\Program Files\Java に貼り付けます。
3. Java 環境変数が適切に設定されていることを確認します。
a. Java インストールディレクトリを見つけてパスをコピーします。デフォルトのパスは C:\Program Files\Java\jdk_<バージョン番号> です。
b. Windows のスタートメニューから、「システムのプロパティ」の「詳細設定」に移動します。これらのプロパティへのパスは Windows のバージョンによって異なります。たとえば、Windows 10 では、「環境変数」をサーチし、「システム環境変数の編集」を選択します。
c. 「環境変数」をクリックします。
d. 「システム変数」セクションで、「新規」をクリックします。
e. 「変数名」フィールドに、「JAVA_HOME」と入力します。
f. 「変数値」フィールドに、手順 a で定義した Java インストールへのパスを入力します。
g. 変数 Path を編集し、新しい値 %JAVA_HOME%\bin を追加します。
h. 「OK」をクリックします。
4. Apache Tomcat バージョンの要件については、ThingWorx の「システム要件」を参照してください。
5. Apache Tomcat Web サイトにアクセスして、32-bit/64-bit Windows Service Installer (pgp, sha1, sha512) をダウンロードします。
* 
最良事例には、リリースごとに署名またはチェックサムを使用して Tomcat ファイルの整合性を検証することが含まれます。詳細については、Apache のドキュメンテーションを参照してください。
6. Apache Tomcat Setup ウィザードを起動します。「Next」をクリックします。
7. 「I Agree」をクリックします。
8. 「Choose Components」セクションでは、デフォルト設定を使用します。「Next」をクリックします。
9. 「HTTP/1.1 Connector Port」フィールドに、「80」 (またはその他の使用可能なポート) を入力します。
10. 「Tomcat Administrator Login」フィールドに、Tomcat 管理用の Tomcat user name と一意でセキュアなパスワードを入力します。ThingWorx では、これは必須でありオプションではありません。
11. 「Next」をクリックします。
12. 「Next」をクリックします。
13. 「インストール」をクリックします。
14. 「終了」をクリックします。
15. Tomcat を起動します。「Configure Tomcat」をクリックします。「Configure Tomcat」ウィンドウで、「Java」タブをクリックします。
16. 「Java Options」フィールドで、オプションフィールドの末尾に以下を追加します。
-Dserver -Dd64
-XX:+UseG1GC
-Dfile.encoding=UTF-8
-Duser.timezone=UTC
-Djava.library.path=<path to Tomcat>\webapps\Thingworx\WEB-INF\extensions
-Dlog4j2.formatMsgNoLookups=true
* 
Djava.library.path の例を次に示します。
-Djava.library.path=C:\Program Files\Apache Software Foundation\Tomcat 9.0\webapps\Thingworx\WEB-INF\extensions
* 
これらのオプションの詳細と、ホストされた環境または公開環境 (あるいは両方) のための追加オプションについては、Apache Tomcat Java オプションの設定を参照してください。
17. 「Initial memory pool」および「Maximum memory pool」フィールドを、使用可能な OS メモリの 75% (たとえば、16GB RAM システムの場合は 12GB) に設定します。詳細については、JVM チューニングを参照してください。
18. 「OK」をクリックします。
19. Tomcat がインストールされている場所で、conf/web.xml を開きます。以下を web.xml ファイルに追加することで、デフォルトのエラーページ (デフォルトはスタックトレース) を置き換えます。web-app タグ内 (welcome-file-list タグの後ろ) に以下を配置します。
* 
適切に設定された Web アプリケーションは webapps/APP_NAME/WEB-INF/web.xml 内でこのデフォルトをオーバーライドするので、問題は発生しません。
<error-page><exception-type>java.lang.Throwable</exception-type><location>/error.jsp</location></error-page>
20. Tomcat がインストールされている場所で、conf/server.xml を開きます。以下を <Host> </Host> タグ内に追加します。
<Valve className="org.apache.catalina.valves.ErrorReportValve" showReport="false" showServerInfo="false" />
* 
セキュリティ上の理由から、デフォルトですでに実行されていない場合、以下の手順を実行することによって AJP コネクタを無効にすることが重要です。
21. Tomcat がインストールされている場所で、conf/server.xml を開き、以下の行を見つけます。見つかった場合、コメントアウトしてファイルを保存します。
<Connector port ="8009" protocol="AJP/1.3" redirectPort="8443"/>
* 
Apache Tomcat 9.0 以降では、rejectIllegalHeader 属性はデフォルトで true に設定されています。conf/web.xml ファイルを手動で修正してこの属性を false に設定することは、PTC によって推奨されておらず、サポートもされていません。
22. /<Tomcat へのパス>/webapps/ にある Tomcat サンプル Web アプリケーション (docsexampleshost-managermanagerROOT) をすべて除去します。これらのアプリケーションを除去することで、ユーザーにほかのユーザーの cookie の閲覧を許可する場合は特に、Tomcat への不必要なアクセスを防止できます。
23. お使いのアプリケーションが特定の暗号化スイートを必要とする場合、設定情報については以下のドキュメンテーションを参照してください。
24. ThingWorx を実行する際には TLS を使用することを強くお勧めします。TLS の設定方法については、このテクニカルサポートのアーティクルを参照してください。
25. (オプションの手順) 静的ファイルキャッシュに影響を与えるデフォルトのキャッシュ設定を増やすには、/conf/context.xml ファイルの <Context></Context> タグ内に以下の行を追加します。
<Resources cacheMaxSize="501200" cacheObjectMaxSize="2048" cacheTtl="60000"/>
この値を増やすとパフォーマンスが向上し、Tomcat に次のメッセージが表示されなくなります。
WARNING: Unable to add the resource at [/Common/jquery/jquery-ui.js] to the cache
because there was insufficient
free space available after evicting expired cache entries -
consider increasing the maximum size of the cache
ThingWorx のインストール
1. Tomcat がインストールされているドライブのルートに、ThingworxPlatform および ThingworxStorage という名前のフォルダを作成します。
* 
別の場所にフォルダを作成する場合は、ここの手順を参照してください。
* 
これらのフォルダには適切な所有権とアクセス権が必要です。これらは Tomcat サービスの実行者と同じユーザーによって所有され、そのユーザーには「フルコントロール」が割り当てられている必要があります。このユーザーは一般的には NETWORK_SERVICE ですが、環境によって異なる場合もあります。これらのアクセス許可がない場合、サーバーは起動できません。
2. 使用しているデータベースに適した Thingworx.war ファイルを入手します。ThingWorx の最新のダウンロードは、support.ptc.com「ソフトウェアのダウンロード」 > 「ソフトウェアアップデートのご注文またはダウンロード」 > 「ThingWorx Foundation」 > 「Release X.X」 > 「ThingWorx PostgreSQL」「ThingWorx Mssql」「ThingWorx H2」、または「ThingWorx AzureSql」 > 「最新の製造コード」 > 「ThingWorx-Platform-<データベースタイプ>-<バージョン>」で公開されています。
3. platform-settings.jsonThingworxPlatform フォルダに配置します。
* 
H2 を使用している場合、ダウンロードに含まれていないので、platform-settings.json ファイルを作成する必要があります。
4. 管理者パスワードを設定します。
以下の AdministratorUserSettings セクション (PlatformSettingsConfig 内) を、少なくとも 14 文字の長さのパスワードとともに、platform-settings.json ファイルに追加します。配置の詳細については、「platform-settings.json コンフィギュレーションの詳細」を参照してください。パスワードの設定については、パスワードを参照してください。
* 
下に示すサンプルをコピーして貼り付けることはしないでください。お使いの platform-settings.json にフォーマットが適さない場合があります。代わりに、ここをクリックしてファイルからコピーしてください。

{
"PlatformSettingsConfig": {
"AdministratorUserSettings": {
"InitialPassword": "changeme"
}
}
}
* 
Tomcat の起動に失敗し、Check the InitialPassword setting in the AdministratorUserPassword section in platform-settings.json... というエラーメッセージがレポートされた場合は、以下を確認します。
platform-settings.json にパスワード設定が存在していること。
パスワードが有効であること (デフォルトで 14 文字以上)。
platform-settings.json ファイルのフォーマットが正しいこと。フォーマットが正しくない場合、エラーが発生する可能性があります。
5. 拡張機能のインポートを有効にします。デフォルトでは、すべてのユーザーで拡張機能のインポートが無効になっています。
platform-settings.json ファイルの PlatformSettingsConfig の下に以下を追加します。以下の ExtensionPackageImportPolicy のパラメータを true に更新することで、拡張機能のインポートを許可します。拡張機能インポート制御の最良事例については、拡張機能のインポートを参照してください。
"ExtensionPackageImportPolicy": {
"importEnabled": <true or false>,
"allowJarResources": <true or false>,
"allowJavascriptResources": <true or false>,
"allowCSSResources": <true or false>,
"allowJSONResources": <true or false>,
"allowWebAppResources": <true or false>,
"allowEntities": <true or false>,
"allowExtensibleEntities": <true or false>
},
6. データベースとして H2 を使用していない場合は、この手順をスキップします。H2 のユーザー名とパスを platform-settings.json ファイルに追加します。詳細については、「platform-settings.json コンフィギュレーションの詳細」を参照してください。
* 
H2 データベースへの ThingWorx 接続にはユーザーが定義したユーザー名とパスワードが必要です。これを指定しない場合、サーバーは起動しません。この設計は CVE-2018-10054 に記載されていいる潜在的な脆弱性を十分に軽減します。
},
"PersistenceProviderPackageConfigs":{
"H2PersistenceProviderPackage":{
"ConnectionInformation":
{
"password": "<addsecurepassword>",
"username": "twadmin"
}
},
7. データベースとして Azure SQL を使用していない場合は、この手順をスキップします。platform-settings.json ファイルを開き、Azure SQL 永続化プロバイダのパラメータを追加します。
"PersistenceProviderPackageConfigs": {
"AzuresqlPersistenceProviderPackage": {
"ConnectionInformation": {
"driverClass": "com.microsoft.sqlserver.jdbc.SQLServerDriver",
"jdbcUrl": "jdbc:sqlserver://<server name>:<port>;databaseName=thingworx;applicationName=Thingworx;",
"password": "<database password>",
"username": "twadmin"
}
}
}
8. データベースとして H2 を使用していない場合は、データベースのインストールと設定に進んでデータベースを設定します。データベースを設定した後で、次の手順に戻ります。H2 を使用している場合、次の手順に進みます。
9. ライセンスを設定します。
platform-settings.json ファイルを開き、PlatformSettingsConfig セクションに以下を追加します (配置の詳細については、「platform-settings.json コンフィギュレーションの詳細」を参照してください)。
* 
切断されたインストール (インターネットアクセスなし) を実行する場合は、platform-settings.json ファイルにライセンス情報を追加する必要はありません。「ThingWorx Platform のライセンス」で切断されたサイトについての説明を参照し、この手順はスキップしてください。
{
"PersistenceProviderPackageConfigs": {
"PostgresPersistenceProviderPackage": {
"ConnectionInformation": {
"jdbcUrl": "jdbc:postgresql://localhost:5432/thingworx",
"password": "<password>",
"username": "<username>"
}
}
},
"PlatformSettingsConfig": {
"LicensingConnectionSettings": {
"username":"<PTC_support_portal_username>",
"password":"<PTC_support_portal_password>"
}
}
}
Tomcat を停止します。
Thingworx.war ファイルをコピーし、Tomcat インストールの次の場所に配置します。
<Tomcat_Install_Location>\webapps
Tomcat を起動します。
ライセンスファイル (successful_license_capability_response.bin) が ThingworxPlatform フォルダに作成されたことを確認します。
* 
設定が正しく入力されていない場合や、サーバーが接続できない場合は、ThingworxPlatform フォルダにライセンスリクエストのテキストファイル (licenseRequestFile.txt) が作成されます。このシナリオでは、ライセンスを手動で作成する必要があります。 (作成されていない場合、ThingWorx は制限されたモードで起動されます。制限されたモードでは、ライセンスエンティティをデータベースに永続化できません。ライセンスエンティティとは Thing、マッシュアップ、マスター、ガジェット、ユーザー、永続化プロバイダのことです。)
PTC のライセンス管理サイトから ThingWorx の切断されたサイトのライセンスを入手する方法については、「ThingWorx Platform のライセンス」の (PTC サポートポータルとは接続されていない) 切断されたサイトについての説明を参照してください。この状況では、ライセンスファイルが手動で生成された場合、名前を license_capability_response.bin に変更して ThingworxPlatform フォルダに配置する必要があります。
* 
ライセンスのトラブルシューティングについては、このサポートアーティクルを参照してください。
10. パスワードの暗号化の手順に従って、ライセンスサーバーのパスワードを暗号化します。
11. データベースとして Azure SQL を使用している場合、次の手順に従って JDBC ドライバーをダウンロードします。Azure SQL を使用していない場合は、この手順をスキップします。
a. Azure ポータルに移動し、ThingWorx データベースにアクセスします。
b. 「Connection strings」を選択します。
c. 「JDBC」タブを選択します。
d. 「Download Microsoft JDBC Driver for SQL Server」を選択します。
e. 「Microsoft JDBC Driver 6.0 for SQL Server」を選択します。
f. ThingWorx VM でダウンロードしたバイナリを抽出して Tomcat lib ディレクトリにコピーします。
12. Tomcat を再起動します。
13. ThingWorx を起動するには、Web ブラウザで http://<サーバー名>:<ポート>/Thingworx に移動します。
14. 最初の管理者パスワードを変更します。
a. Composer で、「管理者」 > 「パスワードを変更」の順に選択します。
b. 「パスワードを変更」ウィンドウで、「現在のパスワード」「新しいパスワード」「パスワードの確認」を入力します。
* 
パスワードは、簡単に推測または認知できるもの (一般的なパスワード) にしないでください。長さは 14 文字以上で、大文字と小文字、数字、特殊文字を組み合わせます。
c. 最初の管理者パスワードを platform-settings.json ファイルから削除します。
15. 「終了」を選択します。
16. (オプションの手順) ライセンスのステータスを確認するには、Composer で、「監視」 > 「サブシステム」 > 「ライセンスサブシステムの設定」を開き、ライセンスに含まれる機能 (ライセンスエンティティ) のリストを確認します。ライセンスエンティティが存在しない場合は、制限されたモードにいます。
これは役に立ちましたか?