ThingWorx a disponibilità elevata > Memorizzazione dei file in ThingWorx Foundation
Memorizzazione dei file in ThingWorx Foundation
Per un'installazione indipendente di ThingWorx, esistono in genere tre posizioni di file stabilite:
/ThingworxPlatform
/ThingworxStorage
/ThingworxBackupStorage
Nella posizione /ThingworxStorage, viene creato il repository di file iniziale per default. Per una distribuzione di clustering, è necessario apportare alcune modifiche e seguire determinate regole.
/ThingworxPlatform
La cartella ThingworxPlatform viene mantenuta in locale per ogni istanza del server e non deve essere condivisa. La cartella contiene i seguenti file obbligatori che vengono letti all'avvio di un'istanza di ThingWorx:
platform-settings.json
keystore-password
license_capability_response.bin (o varianti di questo nome file)
È necessario che il contenuto seguente sia sincronizzato in tutti i server ThingWorx a disponibilità elevata:
platform-settings.json
keystore-password
Una volta creati o generati i file e ogni volta che questi vengono modificati in un server ThingWorx, è necessario aggiornare il contenuto su tutti gli altri server ThingWorx nella relativa configurazione a disponibilità elevata.
Per il contenuto relativo alle licenze, ogni server ThingWorx deve mantenere sia il proprio file di licenza che i truststore creati durante l'attivazione iniziale.
Per stabilire questi file nella cartella /ThingworxPlatform di ogni server ThingWorx, utilizzare il processo descritto di seguito.
1. Creare /ThingworxPlatform su tutti i server ThingWorx. La struttura di cartelle deve essere la stessa su tutti i server ThingWorx della configurazione a disponibilità elevata.
2. Creare il file platform-settings.json in base all'ambiente di sistema e salvarlo nella cartella /ThingworxPlatform del server ThingWorx iniziale (il primo server ThingWorx da avviare nella configurazione a disponibilità elevata).
3. Avviare il server ThingWorx iniziale e assicurarsi che sia completamente operativo e che possa utilizzare tutte le funzioni con licenza previste. A questo punto all'interno di /ThingworxPlatform devono essere presenti tre file:
platform-settings.json
keystore-password
successful_license_capability_response.bin
4. Arrestare il server ThingWorx iniziale.
5. Copiare i tre file dal server iniziale nella cartella /ThingworxPlatform dell'altro o degli altri server.
* 
Nel file platform-settings.json è necessario aggiornare l'impostazione PlatformId in modo che sia un ID univoco per ogni server. Per ulteriori informazioni, vedere Impostazioni di piattaforma per ThingWorx a disponibilità elevata.
6. Negli altri server rinominare il file di licenza da successful_license_capability_response.bin in license_capability_response.bin.
7. Avviare, verificare e arrestare gli altri server ThingWorx uno alla volta per assicurarsi che tutte le funzionalità concesse in licenza siano disponibili.
La posizione di default per la cartella ThingworxPlatform è /ThingworxPlatform. È possibile impostare una posizione non di default attraverso la variabile di ambiente THINGWORX_PLATFORM_SETTINGS. La variabile deve essere stabilita nell'ambiente utente del sistema operativo Tomcat prima dell'avvio di Tomcat con ThingWorx. Assicurarsi che la cartella a cui fa riferimento THINGWORX_PLATFORM_SETTINGS esista e che l'utente del sistema operativo Tomcat disponga dei permessi di lettura/scrittura per tale cartella.
/ThingworxStorage
La cartella /ThingworxStorage deve trovarsi in un volume di file system condiviso per il quale tutti i server ThingWorx dispongono dello stesso accesso in lettura/scrittura.
Il file keystore.pfx viene memorizzato in questa cartella e contiene i segreti richiesti dalla piattaforma. Il file è collegato al file keystore-password. È necessario mantenere entrambi i file protetti ed eseguirne il backup. Se uno dei due file viene perso, non sarà possibile decrittografare le informazioni memorizzate nel database.
I file di log conterranno tutti i log di tutti i server e saranno identificati da platformId nelle voci del log.
La posizione di /ThingworxStorage viene gestita nella sezione BasicSettings di platform-settings.json.
Solo per Windows, quando l'host di ThingWorx Platform e l'host in cui si trova la directory di archiviazione condivisa non si trovano in un dominio, attenersi alla procedura descritta di seguito.
* 
Attenersi alla procedura descritta di seguito solo se si utilizza un account utente locale per eseguire Apache Tomcat.
1. Creare un account utente locale esistente sull'host di ThingWorx Platform e sull'host in cui si trova la directory condivisa.
* 
Questo account utente deve avere la stessa password per entrambi gli host.
2. Configurare Apache Tomcat per l'esecuzione come account utente locale dal passo 1.
a. In Servizi individuare il servizio Apache Tomcat e selezionare Proprietà > Log On.
b. Immettere l'account utente locale con la password utente.
3. Concedere all'account utente locale permessi Full Control per il file tomcat9.exe nella cartella Apache Tomcat per evitare errori di inizializzazione dello spazio di archiviazione della piattaforma.
4. Condividere il percorso di rete con l'account utente locale e concedere permessi Full Control.
a. Fare clic con il pulsante destro del mouse sul percorso di rete e scegliere Proprietà. Fare clic sulla scheda Condividi.
b. Individuare l'account utente locale e selezionare Read/Write.
c. Nella scheda Protezione assicurarsi che all'account utente locale siano concessi permessi Full Control.
5. Impostare il valore della chiave Storage in BasicSettings nel file platform-settings.json per utilizzare il percorso UNC completo della posizione di rete. Includere barre rovesciate aggiuntive per ogni \ del percorso. Ad esempio:
Posizione condivisione di rete: \\ShareHost\MyThingworxShare
Valore Storage in platform-settings.json: \\\\ShareHost\\MyThingworxShare
6. Riavviare Apache Tomcat.
/ThingworxBackupStorage
L'uso principale di /ThingworxBackupStorage consiste nell'eseguire il backup del database H2. Poiché H2 non è supportato per le configurazioni a disponibilità elevata di ThingWorx, questa posizione non viene utilizzata. Tuttavia la sua esistenza è comunque prevista in fase di esecuzione.
È sufficiente creare questa posizione su ogni server ThingWorx per evitare la registrazione di errori.
Impostare "EnableBackup": false nel file platform-settings.json per evitare elaborazione non necessaria in un ambiente a disponibilità elevata.
La posizione di /ThingworxBackupStorage è gestita in platform-settings.json. La struttura di cartelle deve essere la stessa in tutti i server ThingWorx.
Repository dei file radice
Il repository dei file radice deve trovarsi in un volume di file system condiviso per il quale tutti i server ThingWorx dispongono dello stesso accesso in lettura/scrittura.
La posizione della cartella del repository di file radice deve essere aggiunta al file platform-settings.json del sistema. Il parametro FileRepositoryRoot e la posizione di un file condiviso devono essere aggiunti alla sezione BasicSettings. Il valore deve elencare la posizione della cartella in cui deve essere stabilito il repository. Se, ad esempio, la cartella del repository iniziale deve essere stabilita in /ThingworxFileRepository/repository, l'aggiunta al file platform-settings.json deve essere "FileRepositoryRoot":"/ThingworxFileRepository".
* 
Se non viene specificato il parametro FileRepositoryRoot nel file platform-settings.json, verrà utilizzata la posizione /ThingworxStorage del repository di default.
Se per qualsiasi motivo la posizione definita in FileRepositoryRoot non è disponibile, l'esecuzione di ThingWorx verrà interrotta all'avvio.
Considerazioni sulla condivisione file:
Un Network Attached Storage (NAS) o l'equivalente cloud è una soluzione comune per fornire un file system condiviso.
Per supportare questa implementazione a disponibilità elevata di ThingWorx, il NAS deve disporre di una propria soluzione di disponibilità elevata.
Il volume deve essere montato sul server prima che venga avviata un'istanza ThingWorx.
L'utente del sistema operativo che esegue i servizi Tomcat su ogni server ThingWorx deve disporre di permessi di lettura/scrittura per la posizione di condivisione file in cui è stato stabilito il repository.
La posizione di montaggio deve essere identica su ciascun server ThingWorx.
È stato utile?