Distribuzione di DPM mediante la pagina PTC Software Download
In questo scenario, il database e ThingWorx vengono installati nel sistema e l'utente distribuisce DPM nell'istanza di ThingWorx scaricando la soluzione dalla pagina PTC Software Download e importando il package di estensioni in ThingWorx.
Completare la procedura descritta nelle sezioni seguenti:
Prerequisiti
Prima di distribuire DPM, completare i prerequisiti riportati di seguito.
• Esaminare i requisiti di sistema di
DPM, incluse le versioni di
ThingWorx compatibili con
DPM. Per ulteriori informazioni, vedere
Requisiti di sistema DPM.
• Esaminare i requisiti di sistema di
ThingWorx per una versione compatibile di
ThingWorx. Per ulteriori informazioni, vedere
Requisiti di sistema in
ThingWorx Help Center.
• Configurare
ThingWorx per attivare l'importazione delle estensioni. Per ulteriori informazioni, vedere
Importazione di estensioni in
ThingWorx Help Center.
• Se si installa il database in Linux, installare lo strumento sqlcmd.
Aggiornamento dell'impostazione di timeout dello script
Per aggiornare l'impostazione di timeout dello script, un amministratore di ThingWorx deve attenersi alla procedura descritta di seguito.
1. Sul server ThingWorx, passare alla cartella ThingWorxPlatform.
2. Aprire il file platform-settings.json in un editor di testo.
3. Nella sezione BasicSettings, individuare e aggiornare l'impostazione ScriptTimeout su un valore di 12000.
Se l'opzione non è già presente, aggiungerla alla sezione BasicSettings, come segue: "ScriptTimeout": 12000
4. Salvare e chiudere il file platform-settings.json.
5. Riavviare il server ThingWorx.
|
Se il log script contiene un messaggio simile al seguente, ripetere i passi precedenti per aumentare ulteriormente l'impostazione di ScriptTimeout:
[message: Execution of Script terminated after : 12000 seconds. Timeout configured for 12000 seconds.]
|
Per ulteriori informazioni, vedere
Dettagli di configurazione di platform-settings.json in
ThingWorx Help Center.
Aggiornare l'impostazione del timeout di sessione
Per default, il timeout delle sessioni utente inattive è 30 minuti. È possibile modificare questa impostazione per soddisfare le esigenze del sistema.
Per modificare l'impostazione di timeout della sessione, un amministratore di ThingWorx deve attenersi alla procedura descritta di seguito.
1. In ThingWorx, passare a > .
2. Aprire UserManagementSubsystem in modalità di modifica.
3. In Configurazione, modificare l'impostazione Timeout sessioni inattive (min).
4. Fare clic su Salva.
5. Riavviare il server ThingWorx.
Per ulteriori informazioni, vedere
Sottosistema Gestione utenti in
ThingWorx Help Center.
Installare il driver JDBC per MS SQL
Se l'istanza di ThingWorx è configurata con PostgreSQL come provider di persistenza, attenersi alla procedura riportata di seguito per installare il driver JDBC per MS SQL. Se l'istanza di ThingWorx è configurata con MS SQL come provider di persistenza, passare alla sezione successiva.
2. Copiare il file JAR JDBC nella directory lib di installazione di Tomcat (<HOME_TOMCAT>/lib).
3. Riavviare il server Tomcat per caricare il driver JDBC in modo da renderlo disponibile per ThingWorx.
Creare il database DPM e l'utente del database
Attenersi alla procedura descritta di seguito.
1. Creare l'accesso e la password dell'utente del database DPM nel database master. Attenersi alle indicazioni sulla complessità della password per il database.
◦ Per Windows, utilizzando il comando Transact-SQL nell'editor di query di Microsoft SQL Server Management Studio:
CREATE LOGIN <dpmadmin> WITH PASSWORD = '<password>';
Nel comando precedente, sostituire <dpmadmin> e <password> con l'accesso e la password dell'utente del database DPM.
◦ In ambiente Linux:
1. Aprire il prompt dei comandi nel client Linux.
2. Utilizzare i seguenti comandi per creare l'accesso su SQL Server:
sqlcmd –S <database-server-name> -U <sql-administrator-username> -P <sql-administrator-password> \
-Q "create login <dpmadmin> with password = '<dpmadmin-password>'" \
GO; \
exit
Nei comandi precedenti, sostituire <database-server-name> con il nome del server di database, <sql-administrator-username> e <sql-administrator-password> con il nome utente e la password di amministratore SQL, <dpmadmin> e <dpmadmin-password> con l'accesso e la password dell'utente del database DPM.
2. Creare il database di Microsoft SQL Server (MSSQL) che sarà utilizzato da DPM.
◦ Per Windows, utilizzando i comandi Transact-SQL nell'editor di query di Microsoft SQL Server Management Studio:
CREATE DATABASE <dpmdb> COLLATE SQL_Latin1_General_CP1_CI_AS;
ALTER DATABASE <dpmdb> SET READ_COMMITTED_SNAPSHOT ON;
ALTER DATABASE <dpmdb> SET ALLOW_SNAPSHOT_ISOLATION ON;
ALTER DATABASE <dpmdb> SET ARITHABORT ON;
Nei comandi precedenti, sostituire <dpmdb> con il nome del database.
◦ In ambiente Linux:
1. Aprire il prompt dei comandi nel client Linux.
2. Utilizzare i seguenti comandi per creare il database SQL Server, sostituendo le variabili con il nome del server di database e il nome utente e la password di amministratore SQL:
sqlcmd –S <database-server-name> \
-U <sql-administrator-username> -P <sql-administrator-password> \
-Q "create database <dpmdb> COLLATE SQL_Latin1_General_CP1_CI_AS; ALTER DATABASE <dpmdb> SET READ_COMMITTED_SNAPSHOT ON; ALTER DATABASE <dpmdb> SET ALLOW_SNAPSHOT_ISOLATION ON;ALTER DATABASE <dpmdb> SET ARITHABORT ON"
Nel comando precedente, sostituire <database-server-name> con il nome del server di database, <sql-administrator-username> e <sql-administrator-password> con il nome utente e la password di amministratore SQL e <dpmdb> con il nome del database.
3. Creare un utente del database per l'accesso creato al passo 1. Utilizzare lo stesso nome per l'utente del database utilizzato per l'accesso.
◦ Per Windows, utilizzando il comando Transact-SQL nell'editor di query di SQL Server Management Studio aperto per il database creato al passo 2:
CREATE USER <dpmadmin> FOR LOGIN <dpmadmin>;
ALTER ROLE [db_owner] ADD MEMBER <dpmadmin>;
Nel comando precedente, sostituire <dpmadmin> con il nome per l'accesso creato al passo 1.
◦ In ambiente Linux:
1. Aprire il prompt dei comandi nel client Linux.
2. Utilizzare i seguenti comandi per creare un utente del database per il database DPM, sostituendo le variabili con il nome del server di database e il nome utente e la password di amministratore SQL:
sqlcmd –S <database-server-name> \
-U <sql-administrator-username> -P <sql-administrator-password> \
-Q "use <dpmdb>; create user <dpmadmin> for login <dpmadmin>;ALTER ROLE [db_owner] ADD MEMBER <dpmadmin>"
Nei comandi precedenti, sostituire <database-server-name> con il nome del server di database, <sql-administrator-username> e <sql-administrator-password> con il nome utente e la password di amministratore SQL, <dpmdb> con il nome del database e <dpmadmin> con il nome per l'accesso creato al passo 1.
Scaricare la soluzione DPM mediante la pagina PTC Software Download
Attenersi alla procedura descritta di seguito.
2. Selezionare ThingWorx Foundation.
3. Espandere le seguenti cartelle: > > > .
4. Scaricare il file ZIP DPM-1-2 del package di estensioni.
Importare la soluzione DPM
Per importare la soluzione DPM, un amministratore di ThingWorx deve attenersi alla procedura descritta di seguito.
2. In ThingWorx Composer, fare clic su > .
3. Nella finestra Importazione selezionare Estensione nell'elenco Opzione di importazione.
4. In Nome file fare clic su Sfoglia. Cercare e selezionare il file ZIP del package di estensioni scaricato nella sezione precedente.
5. Fare clic su Importa. Al termine dell'importazione, fare clic su Chiudi.
6. Per visualizzare le estensioni della soluzione DPM dopo l'importazione, passare a > .
Eseguire il servizio InitializeSolution
Eseguire il servizio InitializeSolution per configurare l'oggetto database per la connessione al database DPM, creare tabelle di database e registrare gli oggetti manager per i building block che costituiscono DPM.
Per eseguire il servizio, un amministratore di ThingWorx deve attenersi alla procedura descritta di seguito.
1. In ThingWorx Composer, passare all'oggetto PTC.Base.Manager.
2. Ottenere i parametri di configurazione.
a. In Servizi, individuare ed eseguire il servizio GetSolutionDeploymentConfigurationParameters. L'output del servizio è un JSON contenente i parametri di configurazione necessari per il servizio InitializeSolution, basato dinamicamente sull'insieme di building block presenti. Il JSON di output del servizio è simile al seguente:
{
"databaseUser": {
"types": [
"STRING"
],
"description": "Name of the database user used for DPM database Thing",
"optional": false
},
"overrideComponentDeploymentState": {
"types": [
"BOOLEAN"
],
"description": "If true, the current component deployment state is ignored and the DeployComponent service will be rerun.",
"optional": true
},
"databasePassword": {
"types": [
"STRING"
],
"description": "Password of the database user used for DPM database Thing",
"optional": false
},
"databaseJDBCString": {
"types": [
"STRING"
],
"description": "JDBC Connection String for the DPM database Thing",
"optional": false
},
"databaseThing": {
"types": [
"STRING"
],
"description": "The default database thing (PTC.DBConnection.SQLThingDatabase)",
"optional": true
}
}
b. Copiare il JSON restituito nell'output del servizio e incollarlo in un editor di testo.
c. Modificare il JSON, sostituendo il contenuto tra le parentesi graffe per ciascun parametro di configurazione con il valore specifico del sito.
▪ databaseUser - Nome di accesso dell'utente del database con diritti di amministrazione del sistema.
▪ databasePassword - Password di accesso dell'utente del database con diritti di amministrazione del sistema.
▪ databaseJDBCString - Stringa di connessione JDBC per il database DPM.
▪ databaseThing - Oggetto database di default (PTC.DBConnection.SQLThingDatabase).
Il seguente è un esempio di JSON modificato:
{
"databaseUser": "<dpmadmin>",
"databasePassword": "<password>",
"databaseJDBCString": "jdbc:sqlserver://<databaseHost>:<databasePort>;databaseName=<DPMdatabaseName>",
"databaseThing": "PTC.DBConnection.SQLThingDatabase"
}
Il seguente è un esempio di JSON modificato con valori effettivi:
{
"databaseUser": "DPMadmin",
"databasePassword": "945DaTaBase!39525",
"databaseJDBCString": "jdbc:sqlserver://localhost:1433;databaseName=dpmdb",
"databaseThing": "PTC.DBConnection.SQLThingDatabase"
}
3. In Servizi, individuare ed eseguire il servizio InitializeSolution utilizzando il JSON modificato al passo 2.c come parametro di input deploymentConfig per il servizio.
Al termine del servizio, l'output visualizza una infotable che elenca i building block distribuiti e il relativo stato di configurazione: Configured, Not Configured o Error. Se sono presenti building block in stato Error o Not Configured, completare i passi di risoluzione dei problemi riportati di seguito.
a. Accertarsi che le credenziali del database specificate nel JSON siano valide, quindi eseguire il servizio InitializeSolution.
b. Se sono ancora presenti building block in stato Error o Not Configured nell'output del servizio, esaminare i log degli errori di script e applicazione ThingWorx e risolvere gli eventuali errori trovati. Eseguire quindi il servizio InitializeSolution.
c. Se sono ancora presenti building block in stato Error o Not Configured nell'output del servizio, aggiornare il JSON in modo da includere quanto segue ed eseguire il servizio InitializeSolution:
"overrideComponentDeploymentState": true