Configurazione necessaria prima dell'installazione del plug-in AI Parts Rationalization per l'ambiente locale
|
|
I destinatari del presente argomento sono gli amministratori che configurano il sistema Windchill locale.
|
Gli amministratori devono completare i seguenti prerequisiti prima di installare il plug-in.
Configurare il server Windchill
Prima di installare il plug-in AI nell'ambiente Windchill, assicurarsi che il sistema soddisfi i requisiti di configurazione descritti in questo argomento. Il rispetto di questi requisiti è essenziale per garantire la compatibilità, le prestazioni e la stabilità del plug-in all'interno dell'ecosistema Windchill.
Per ulteriori informazioni sulla configurazione del server Windchill, vedere
Installing Windchill and the Installation Process Flow.
Poiché il plug-in è ospitato sullo stesso computer del method server, sarà necessaria memoria aggiuntiva per garantire un funzionamento corretto.
• Versioni di Windchill supportate: Windchill 12.1.2.22, 13.0.2.10 e 13.1.3.0
• Modulo opzionale (PartsLink) - Il plug-in supporta l'installazione in ambienti Windchill. Questa flessibilità garantisce la possibilità di integrare il plug-in in un'ampia gamma di configurazioni di Windchill:
◦ Con PartsLink - Consente la classificazione avanzata e il riutilizzo delle parti mediante una tassonomia strutturata.
◦ Senza PartsLink - Funzionalità standard di Windchill senza miglioramenti alla classificazione.
• Opzioni di archiviazione BLOB - Il plug-in supporta gli ambienti Windchill che utilizzano l'archiviazione BLOB (Binary Large Object) su cloud. In questo modo si garantisce una gestione lineare di file e documenti di grandi dimensioni archiviati nei seguenti servizi cloud:
◦ Microsoft Azure
◦ Amazon Web Services (AWS)
|
|
Il plug-in richiede un account di archiviazione dedicato su AWS o Azure. Nonostante Windchill supporti attualmente la memorizzazione del contenuto degli archivi in Archiviazione BLOB, si tratta di un requisito distinto. Anche se un cliente utilizza già Archiviazione BLOB per i dati degli archivi, è comunque necessario un account di archiviazione dedicato specifico per questo plug-in.
|
• Configurazione del server Apache - Il plug-in utilizza i seguenti metodi di autenticazione tramite Apache, supportati da Windchill 12.1.2.22, 13.0.2.10 e 13.1.3.0:
◦ Autenticazione di base - Accesso semplice con nome utente e password
◦ SSO SAML
◦ CAC-PKI (certificato client) - Autenticazione avanzata tramite certificati SSL
◦ OIDC-SSO
|
|
L'autenticazione OIDC-SSO non è supportata quando il plug-in AI Parts Rationalization viene utilizzato con Windchill versione 12.1.2.22.
|
|
|
Se si utilizza MPMLink, per attivare l'indicizzazione con URL lungo configurare le impostazioni dei server AJP e Tomcat come descritto di seguito.
1. In una shell Windchill, passare alla cartella <HTTPServer> ed eseguire il comando:
ant -f config.xml configureAJPWorkers -DajpMaxPacketSize=16384
2. In una shell Windchill, passare alla cartella <Windchill>/Tomcat ed eseguire il comando:
ant -f config.xml configureConnectors -DajpMaxPacketSize=16384
3. Modificare il file HTTPServer/conf/httpd.conf per includere le righe seguenti:
LimitRequestLine 16384
LimitRequestFieldSize 16384
4. Riavviare i server Apache e Windchill per applicare le modifiche.
|
Aggiornare Windchill con l'opzione Mantieni impostazioni Apache attivata
Se durante l'aggiornamento a Windchill 12.1.2.22, 13.0.2.10 o 13.1.3.0 si sceglie l'opzione Mantieni impostazioni Apache, il server Apache non viene aggiornato durante il processo di aggiornamento. Ciò significa che la configurazione esistente di Apache rimane invariata e le nuove modifiche alla configurazione introdotte nell'aggiornamento non vengono applicate automaticamente.
Per applicare manualmente le modifiche necessarie alla configurazione di Apache, attenersi alla procedura descritta di seguito solo se durante l'aggiornamento è stata selezionata l'opzione Mantieni impostazioni Apache = true. Se non è stata seleziona questa opzione, la configurazione aggiornata di Apache viene applicata automaticamente.
Questi passi sono comuni a tutti i tipi di autenticazione (SSO SAML e di base):
1. Caricare i moduli necessari - Aggiornare il file modules-load.conf.template situato in <Windchill_Home>\HTTPServer\conf\templates\ includendo i moduli mancanti:
<IfModule !rewrite_module>
LoadModule rewrite_module modules/mod_rewrite.so
</IfModule>
<IfModule !proxy_module>
LoadModule proxy_module modules/mod_proxy.so
</IfModule>
<IfModule !proxy_http_module>
LoadModule proxy_http_module modules/mod_proxy_http.so
</IfModule>
<IfModule !proxy_hcheck_module>
LoadModule proxy_hcheck_module modules/mod_proxy_hcheck.so
</IfModule>
<IfModule !proxy_balancer_module>
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
</IfModule>
<IfModule !slotmem_shm_module>
LoadModule slotmem_shm_module modules/mod_slotmem_shm.so
</IfModule>
<IfModule !watchdog_module>
LoadModule watchdog_module modules/mod_watchdog.so
</IfModule>
<IfModule !lbmethod_byrequests_module>
LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so
</IfModule>
2. Riconfigurare Apache. Prima di procedere, assicurarsi di eseguire un backup della cartella Apache. Eseguire quindi il comando seguente per riconfigurare Apache:
ant -f config.xml reconfigure
• SSO SAML
a. Caricare i moduli necessari come indicato al
passo 1 comune.
b. Assicurarsi che la direttiva ShibUseHeaders On sia presente negli elementi LocationMatch in /apache/conf/conf.d/30-app-Windchill-1Auth.conf per REMOTE_USER. Qualora non sia presente, aggiungerla.
• Autenticazione di base
1. Caricare i moduli necessari come indicato al
passo 1 comune.
2. Aggiornare il file webAppAuthResToConf.xsl situato in <Windchill_Home>\HTTPServer\conf\templates\xsl includendo il seguente codice dopo la riga Require valid-user:
<xsl:if test="$resource='WCPlugins'">
RewriteRule .* - [E=PROXY_USER:%{LA-U:REMOTE_USER}]
RequestHeader set REMOTE_USER %{PROXY_USER}e
</xsl:if>
3. Modificare il file app-Windchill-AuthRes.xml - Aggiornare il file app-Windchill-AuthRes.xml situato in \<Windchill_Home>\HTTPServer\conf includendo la seguente riga subito dopo il tag di apertura <resources>, prima di qualsiasi voce esistente <resource>:
<resource>WCPlugins</resource>
4. Riconfigurare Apache. Prima di procedere, assicurarsi di eseguire un backup della cartella Apache. Eseguire quindi il comando seguente per riconfigurare Apache:
ant -f webAppConfig.xml regenAllWebApps
ant -f config.xml reconfigure
Quando si esegue l'aggiornamento di Windchill con Mantieni impostazioni Apache = true, è necessario aggiornare Apache manualmente. L'autenticazione SSO SAML richiede la convalida della corretta configurazione della direttiva ShibUseHeaders On. L'autenticazione di base richiede ulteriori modifiche alla configurazione e la rigenerazione dell'applicazione Web. Dopo avere completato i passi pertinenti per l'autenticazione SSO SAML e di base, riconfigurare Apache.
|
|
Se in Windchill vengono configurati certificati personalizzati per un'applicazione personalizzata, ad esempio l'app Navigate, copiare manualmente il contenuto del file del certificato personalizzato in HTTPServer/conf/sslvhostconf.d/allClientCerts.crt e rimuovere il file di configurazione che fa riferimento al certificato personalizzato.
|
Impostare la directory di installazione del plug-in
Viene fornita una proprietà dedicata wt.plugins.installed.dir predefinita che consente all'amministratore di definire la directory in cui vengono decompressi e installati i file del plug-in. Per default, questa proprietà viene lasciata vuota, ovvero non è predefinito alcun percorso di installazione.
Un amministratore che installa Windchill deve creare manualmente una directory sicura esterna alla home directory di Windchill, con permessi di lettura, scrittura ed esecuzione, quindi procedere alla configurazione di questa proprietà.
Per aggiungere e propagare la proprietà wt.plugins.installed.dir nel file wt.properties tramite xconfmanager, utilizzare il comando seguente: Esempio:
xconfmanager -s wt.plugins.installed.dir=<your_custom_path> -t codebase/wt.properties && xconfmanager -pF
|
|
Quando si specifica il percorso della directory di installazione del plug-in in Windows, fare riferimento all'argomento Specifying URIs and URLs per indicazioni sui formati di percorso validi.
|
Assicurarsi che l'accesso alla directory di installazione sia concesso solo agli utenti amministratori. Questo permesso non deve essere concesso ad altri utenti.
|
|
Se la directory di installazione del plug-in non viene creata nel modo descritto, l'installazione del plug-in non procederà.
|
Dopo aver creato una directory e averla definita utilizzando la proprietà, è possibile installare il plug-in senza richiedere un riavvio del server Windchill.
Configurare una directory condivisa per l'installazione del plug-in in ambienti cluster Windchill
In un ambiente cluster Windchill, l'installazione del plug-in richiede una directory condivisa accessibile da tutti i nodi del cluster. Questa posizione condivisa garantisce una distribuzione e una disponibilità omogenee dei plug-in nell'ambiente.
|
|
L'installazione del plug-in è supportata solo tramite la directory condivisa e le directory locali non sono supportate nelle configurazioni cluster. Se la directory condivisa non è configurata correttamente o non è accessibile ad alcun nodo, il processo di installazione del plug-in avrà esito negativo.
|
Per configurare e proteggere correttamente la directory condivisa, gli amministratori devono seguire le linee guida seguenti:
• Creare una cartella condivisa in rete da utilizzare come directory comune di installazione dei plug-in, accessibile da tutti i nodi di Windchill.
• Specificare un percorso di rete valido:
◦ \\shared\plugins (per sistemi Windows che utilizzano percorsi in formato UNC)
◦ /mnt/shared/plugins (per sistemi Linux che utilizzano percorsi di rete montati)
• Assicurarsi che tutti i nodi abbiano accesso in lettura e scrittura alla cartella condivisa e concedere i permessi di esecuzione all'utente che esegue il programma di installazione di Windchill. In una configurazione cluster Windows, i server plug-in funzionano sempre in modalità headless.
• Utilizzare l'utilità xconfmanager per impostare la proprietà wt.plugins.installed.dir su ogni nodo e assicurarsi che punti alla directory condivisa.
• Assicurarsi che la directory condivisa disponga di spazio libero sufficiente per ospitare tutti i plug-in. Ad esempio, se si prevede di installare 10 plug-in e ogni plug-in ha dimensioni diverse, calcolare lo spazio totale necessario aggiungendo le dimensioni di tutti i plug-in. La directory condivisa deve disporre di spazio libero sufficiente per ospitare tutti i plug-in dopo l'installazione.
|
|
In una configurazione cluster, se uno dei nodi è inattivo durante l'installazione del plug-in, il plug-in viene installato solo nel nodo in esecuzione. Quando il nodo che era inattivo torna online, il plug-in viene installato automaticamente in tale nodo e le modifiche della configurazione di Apache vengono aggiornate di conseguenza.
Si consideri, ad esempio, un'impostazione con un Nodo 1 e un altro Nodo 2. Se Nodo 2 è inattivo o passa in modalità offline durante l'installazione del plug-in, il plug-in non verrà installato in Nodo 2 in quel momento. Dopo il riavvio del server e dei servizi Apache, quando Nodo 2 torna online, tutti i file di installazione necessari vengono aggiornati automaticamente su Nodo 2. Non sono necessari passi manuali.
|
File di log nella directory di installazione del plug-in
La directory di installazione del plug-in contiene una cartella logs con i file generati dal plug-in, ad esempio /opt/ptc/plugins/logs. Gli amministratori possono fare riferimento a questi log dettagliati per risolvere problemi o verificare operazioni. Questi log includono data e ora, dettagli della richiesta e messaggi di errore.
Viene fornita una proprietà wt.plugins.logs.dir dedicata per specificare la posizione personalizzata per la generazione dei log del plug-in.
• Se la proprietà non è impostata, i log del plug-in vengono generati nella directory di installazione del plug-in, ad esempio /opt/ptc/plugins/logs.
• Se la proprietà è impostata, i log del plug-in vengono generati nella directory specificata dalla proprietà.
|
|
I log relativi a Windchill sono disponibili nei log di Apache e del method server all'interno delle directory di registrazione dell'installazione di Windchill.
|
Impostare la directory temporanea del plug-in
È stata introdotta una nuova proprietà wt.plugins.temp.dir. Si tratta di una proprietà facoltativa che definisce la directory in cui memorizzare i file temporanei del plug-in. Per default, il percorso della directory è impostato su ${wt.temp}/<pluginId>. wt.temp è la proprietà wt esistente che definisce la posizione temporanea di Windchill. È importante assicurarsi che l'accesso in scrittura a questa directory sia concesso solo agli utenti amministratori. Questo permesso non deve essere concesso ad altri utenti.
Per impostare questa proprietà, utilizzare il comando seguente:
xconfmanager -s wt.plugins.temp.dir=<your_custom_path> -t codebase/wt.properties && xconfmanager -pF
Creare un indice univoco nella colonna VIZSERVERJOBID della tabella PUBLISHCLOUDENTRY
Per migliorare le prestazioni delle operazioni di creazione di operazioni esterne e di AI Parts Rationalization, creare un indice univoco nella colonna VIZSERVERJOBID della tabella PUBLISHCLOUDENTRY.
Per creare un indice univoco, attenersi alla procedura descritta di seguito.
1. Prima di creare l'indice, verificare che la colonna VIZSERVERJOBID non contenga valori duplicati. Questa colonna è attualmente vuota perché Windchill non la utilizza per impostazione predefinita.
2. Utilizzare il comando SQL appropriato specificato dal fornitore del database per creare l'indice univoco nella colonna VIZSERVERJOBID della tabella PUBLISHCLOUDENTRY.
Di seguito è riportato un esempio per i database Oracle. Gli amministratori del database devono modificare la sintassi e le opzioni in base ai requisiti specifici e alle best practice del sistema di database in uso.
CREATE UNIQUE INDEX "VIZSERVERJOBID_UNIQUE_IDX" ON "PUBLISHCLOUDENTRY" ("VIZSERVERJOBID")
PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS
STORAGE(INITIAL 24576 NEXT 24576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE "INDX";
3. Se necessario, ricreare l'indice appena creato.
4. Verificare che l'indice sia stato creato correttamente.
A seconda dei parametri di sistema dell'organizzazione, l'amministratore del database deve eseguire le azioni appropriate.
|
|
La colonna VIZSERVERJOBID viene utilizzata come identificatore chiave nei flussi di operazioni esterne e di ricerca parti.
|
|
|
I parametri specifici dell'indice sono facoltativi quando si crea l'indice univoco nella colonna VIZSERVERJOBID. È consigliabile utilizzare le impostazioni di default del server di database di produzione. Viene eseguita solo l'interrogazione di creazione dell'indice di base, insieme al nome dello spazio tabelle appropriato.
|
Configurare lo spazio di archiviazione del cliente
La sezione riportata di seguito illustra i passi di configurazione per ciascuna opzione di archiviazione supportata: Archiviazione BLOB di Microsoft Azure e bucket Amazon S3.
Per le configurazioni del server Windchill locale, AI Parts Rationalization supporta solo l'autenticazione SECURITY_CREDENTIALS durante la connessione ad Archiviazione BLOB di Microsoft Azure e bucket Amazon S3.
Tutte le informazioni sensibili fornite durante la configurazione dello spazio di archiviazione vengono archiviate in modo sicuro tramite un keystore. Ciò garantisce che le credenziali siano crittografate e protette da accessi non autorizzati, mantenendo la riservatezza e l'integrità dei dati personali.
Per ulteriori informazioni, fare riferimento all'argomento
Configuring Customer Storage.
• Archiviazione di Azure
◦ Nome account - Nome dell'account di archiviazione di Azure.
◦ Chiave account - Chiave privata utilizzata per autenticare l'accesso.
◦ Nome contenitore - Nome di un contenitore esistente o di un nuovo contenitore creato.
|
|
È possibile trovare il nome e le chiavi di accesso dell'account di archiviazione nella pagina Archiviazione di Azure alle voci Security e Networking.
Se si dispone già di un account di archiviazione di Azure, è consigliabile creare un account aggiuntivo per una migliore organizzazione della sicurezza e dello spazio di archiviazione. È possibile trovare il nome dell'account esistente in > .
Azure Storage deve essere accessibile pubblicamente per l'utilizzo di VCS. Impostare l'opzione Enabled from all networks in > > > > .
|
• Amazon S3
◦ Nome bucket - Nome del bucket Amazon S3
◦ ID chiave di accesso - ID chiave di accesso AWS
◦ Chiave di accesso segreta - Chiave segreta per l'autenticazione
◦ Regione - Regione AWS in cui è ospitato il bucket
|
|
I dettagli sopra riportati sono disponibili nella console AWS:
• Nome bucket Amazon S3 - Accedere al servizio Amazon S3 nella console AWS. I nomi dei bucket sono elencati nella colonna Bucket name nel dashboard principale di S3. Attualmente, il plug-in AI Parts Rationalization non supporta una struttura di cartelle nel bucket di Amazon S3.
• ID chiave di accesso - Accedere alla scheda > > > per visualizzare o creare l'ID chiave di accesso.
• Chiave di accesso privata - È possibile trovare la chiave di accesso privata solo quando si crea una nuova chiave di accesso in > > > . Viene visualizzata una volta e non può essere visualizzata di nuovo in seguito.
• Regione - Accedere al servizio Amazon S3 nella console AWS. Nell'elenco dei bucket, la regione viene visualizzata nella colonna AWS Region accanto al nome di ciascun bucket.
• Definire una regola nel bucket di Amazon S3. Di seguito è riportata un'istantanea di esempio di una regola definita nel bucket di Amazon S3 AIPlugin-s3-bucket:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": "s3:*", "Resource": [ "arn:aws:s3::: AIPlugin-s3-bucket", "arn:aws:s3::: AIPlugin-s3-bucket/*" ] } ] }
La regola può essere personalizzata in base ai requisiti di protezione del cliente. Assicurarsi di fornire l'accesso in lettura, scrittura, elenco, eliminazione ed esiste al bucket di Amazon S3.
|
È possibile visualizzare e completare solo i campi attinenti al tipo di archiviazione selezionato.
I dettagli dell'account di archiviazione sono necessari durante la configurazione del plug-in. Per ulteriori informazioni, vedere la sezione
Configurare il plug-in AI Parts Rationalization.
Configurare l'utente per l'indicizzazione
Per impostazione predefinita, il campo relativo all'utente per l'indicizzazione è vuoto nell'interfaccia utente di configurazione del plug-in. Per attivare l'indicizzazione, è necessario configurare un utente per l'indicizzazione valido.
Se un amministratore del sito è configurato come utente per l'indicizzazione, tutti i dati del sito vengono considerati per l'indicizzazione. Per l'amministratore del sito non è necessario configurare nuove regole di controllo di accesso.
L'amministratore del sito è responsabile della creazione e della configurazione dell'utente per l'indicizzazione nel sistema Windchill. L'utente per l'indicizzazione deve essere un utente non amministratore designato specificamente per avviare le operazioni di indicizzazione.
Con appropriati controlli di accesso a livello di contesto, l'utente per l'indicizzazione può includere o escludere contenuti specifici di prodotto dall'indicizzazione.
|
|
• Fornire l'accesso all'utente per l'indicizzazione sia a livello di sito che a livello di contesto.
• Se viene creato un utente per l'indicizzazione e quindi aggiunta la configurazione ma non vengono definite regole di amministrazione di regole per l'utente e non viene concesso alcun accesso al contesto, non viene indicizzato alcun dato.
• Aggiungere l'utente per l'indicizzazione a una delle licenze di base tramite il gruppo di esclusione licenze. Per ulteriori informazioni, vedere Gruppi di esclusione licenze.
|
Per configurare l'utente per l'indicizzazione, attenersi alla procedura descritta di seguito.
1. Configurare i controlli di accesso a livello di sito.
a. Passare a > in Windchill.
b. Selezionare > .
Il nome dell'utente per l'indicizzazione (IndexUser) viene definito dall'utente stesso durante la configurazione.
2. Configurare i controlli di accesso a livello di contesto.
a. Passare a > in Windchill.
b. Selezionare Tutti i contesti e quindi selezionare > > dalla tabella. Impostare questi controlli di accesso per i contesti Prodotto le cui parti devono essere indicizzate.
c. Creare nuove regole di controllo di accesso con le configurazioni seguenti:
|
Tipo
|
Utente
|
Controllo d'accesso
|
|
Parte
|
IndexUser
|
Lettura
|
|
Immagine derivata
|
IndexUser
|
Lettura, download
|
L'utente per l'indicizzazione deve avere accesso al download per il tipo Immagine derivata. Questo permesso può essere ereditato dal contesto a livello di sito o aggiunto esplicitamente a un contesto specifico.
|
|
Quando si configura l'utente per l'indicizzazione, si consiglia di fornire l'accesso a contesti specifici, ad esempio Sito, Prodotto, Libreria, Progetto o Organizzazione, a tale utente. Se si desidera indicizzare solo determinati dati in un contesto specifico, è necessario assicurarsi che i permessi per i tipi Parte e Immagine derivata in tale contesto siano concessi correttamente. Se l'accesso non è limitato, tutte le parti del database Windchill vengono indicizzate, il che potrebbe non essere necessario e il tempo richiesto per l'indicizzazione aumenterebbe in modo significativo.
Selezionare con cautela gli elementi da indicizzare perché la licenza utilizza crediti AI. Un'indicizzazione non necessaria utilizza questi crediti, il che potrebbe comportare costi aggiuntivi per l'acquisto di altri crediti in un secondo momento. L'attenta configurazione dei permessi consente di controllare gli elementi indicizzati e di evitare un consumo di risorse non necessario.
|
4. Per configurare l'utente per l'indicizzatore per i contesti Progetto e Libreria, l'utente deve accedere come autore di Progetto o Libreria.
◦ Per il contesto Progetto, accedere a > > .
◦ Per il contesto Libreria, accedere a > > .
5. Impostare la stessa regola di accesso configurata nel contesto PDM, come descritto al passo 2c.
| Se si cambia l'utente per l'indicizzazione o si modificano i permessi associati a un contesto, i dati indicizzati rimangono nell'indice del vettore anche se in seguito si rimuovono tali permessi. In altre parole, una volta completata l'indicizzazione, la rimozione dei permessi per un contesto non comporta l'eliminazione delle voci corrispondenti dall'indice. Ad esempio, se un utente per l'indicizzazione dispone del permesso per due contesti e l'indicizzazione è stata completata per entrambi, successivamente, la rimozione del permesso per uno di questi contesti non rimuoverà i relativi embedding. L'indice conserva comunque le voci per quel contesto anche se il permesso è stato rimosso. |