Configuration requise avant l'installation du plug-in AI Parts Rationalization pour un environnement sur site
|
|
Cette rubrique est destinée aux administrateurs configurant le système Windchill sur site.
|
Les administrateurs doivent remplir les conditions requises suivantes avant d'installer le plug-in :
Configurer le serveur Windchill
Avant d'installer le plug-in IA dans votre environnement Windchill, assurez-vous que votre système satisfait aux exigences de configuration énoncées dans cette rubrique. Le respect de ces exigences est essentiel pour garantir la compatibilité, les performances et la stabilité du plug-in au sein de l'écosystème Windchill.
Pour plus d'informations sur la configuration du serveur Windchill, consultez la rubrique
Installing Windchill and the Installation Process Flow.
Le plug-in étant hébergé sur la même machine que le serveur de méthodes, son bon fonctionnement nécessitera un supplément de mémoire.
• Versions de Windchill prises en charge : Windchill 12.1.2.22, 13.0.2.10 et 13.1.3.0
• Module facultatif (PartsLink) : le plug-in prend en charge l'installation dans les environnements Windchill. Cette flexibilité permet d'intégrer le plug-in à un large éventail de configurations Windchill :
◦ Avec PartsLink : possibilité de classification avancée et de réutilisation des articles à l'aide d'une taxonomie structurée.
◦ Sans PartsLink : fonctionnalité Windchill standard sans améliorations de classification.
• Options de stockage de gros objets binaires (Binary Large Object, BLOB) : le plug-in prend en charge les environnements Windchill qui utilisent le stockage BLOB basé sur le Cloud. Cela garantit une gestion transparente des fichiers et documents volumineux stockés dans les services Cloud suivants :
◦ Microsoft Azure
◦ Amazon Web Services (AWS)
|
|
Le plug-in nécessite un compte de stockage dédié, soit sur AWS, soit sur Azure. Notez que même si Windchill prend actuellement en charge le stockage du contenu des coffres-forts dans le stockage BLOB, il s'agit ici d'une exigence distincte. Même si un client utilise déjà le stockage BLOB pour les données de coffre-fort, un compte de stockage dédié reste spécifiquement requis pour ce plug-in.
|
• Configuration du serveur Apache : le plug-in utilise les méthodes d'authentification suivantes via Apache, telles que prises en charge par les versions Windchill 12.1.2.22, 13.0.2.10 et 13.1.3.0 :
◦ Authentification de base : accès simple par nom d'utilisateur/mot de passe
◦ Authentification unique SAML
◦ CAC-PKI (certificat client) : authentification forte à l'aide de certificats SSL
◦ OIDC-SSO
|
|
L'authentification OIDC-SSO n'est pas prise en charge lorsque le plug-in AI Parts Rationalization est utilisé avec la version Windchill 12.1.2.22.
|
|
|
Pour permettre l'indexation avec des URL longues lorsque vous utilisez MPMLink, configurez les paramètres des serveurs AJP et Tomcat comme suit :
1. Dans un shell Windchill, accédez au dossier <HTTPServer> et exécutez la commande suivante :
ant -f config.xml configureAJPWorkers -DajpMaxPacketSize=16384
2. Dans un shell Windchill, accédez au dossier <Windchill>/Tomcat et exécutez la commande suivante :
ant -f config.xml configureConnectors -DajpMaxPacketSize=16384
3. Modifiez le fichier HTTPServer/conf/httpd.conf pour y inclure les lignes suivantes :
LimitRequestLine 16384
LimitRequestFieldSize 16384
4. Redémarrez les serveurs Apache et Windchill pour appliquer les modifications.
|
Mettre à jour Windchill en activant l'option Conserver les paramètres Apache
Lors de la mise à niveau de Windchill vers les versions 12.1.2.22, 13.0.2.10 ou 13.1.3.0, si vous choisissez l'option Conserver les paramètres Apache, le serveur Apache ne sera pas mis à jour lors du processus de mise à niveau. Cela signifie que la configuration Apache existante restera inchangée et que les modifications apportées à la configuration dans la mise à jour ne seront pas appliquées automatiquement.
Pour appliquer manuellement les modifications de configuration Apache nécessaires, ne suivez cette procédure que si vous avez sélectionné Conserver les paramètres Apache = true lors de la mise à jour. Si vous n'avez pas sélectionné cette option, la configuration Apache mise à jour sera appliquée automatiquement.
Ces étapes s'appliquent à tous les types d'authentification (authentification unique SAML et authentification de base) :
1. Chargez les modules requis : mettez à jour le fichier modules-load.conf.template situé dans <Windchill_Home>\HTTPServer\conf\templates\ pour inclure les modules manquants :
<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. Reconfigurez Apache. Avant de continuer, veillez à effectuer une sauvegarde du dossier Apache. Ensuite, exécutez la commande suivante pour reconfigurer Apache :
ant -f config.xml reconfigure
• Authentification unique (SSO) SAML
a. Chargez les modules requis comme indiqué à l'
Etape 1 commune.
b. Assurez-vous que l'instruction ShibUseHeaders On est présente dans les éléments LocationMatch de /apache/conf/conf.d/30-app-Windchill-1Auth.conf pour REMOTE_USER. Si ce n'est pas le cas, ajoutez-la.
• Authentification de base
1. Chargez les modules requis comme indiqué à l'
Etape 1 commune.
2. Mettez à jour le fichier webAppAuthResToConf.xsl situé dans <Windchill_Home>\HTTPServer\conf\templates\xsl en y insérant le code suivant après la ligne 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. Modifiez app-Windchill-AuthRes.xml : mettez à jour le fichier app-Windchill-AuthRes.xml situé dans \<Windchill_Home>\HTTPServer\conf en y intégrant la ligne suivante immédiatement après la balise d'ouverture <resources>, avant toute entrée <resource> existante :
<resource>WCPlugins</resource>
4. Reconfigurez Apache. Avant de continuer, veillez à effectuer une sauvegarde du dossier Apache. Ensuite, exécutez la commande suivante pour reconfigurer Apache :
ant -f webAppConfig.xml regenAllWebApps
ant -f config.xml reconfigure
Lors de la mise à niveau de Windchill avec Conserver les paramètres Apache = true, Apache doit être mis à jour manuellement. L'authentification unique SAML nécessite de valider que la directive ShibUseHeaders On est correctement configurée. L'authentification de base nécessite des modifications supplémentaires de la configuration et une régénération de l'application Web. Après avoir complété les étapes appropriées pour l'authentification unique SAML et l'authentification de base, reconfigurez Apache.
|
|
Si des certificats personnalisés sont configurés dans Windchill pour une application personnalisée (par exemple, l'application Navigate), copiez manuellement le contenu du fichier de certificat personnalisé dans HTTPServer/conf/sslvhostconf.d/allClientCerts.crt et supprimez le fichier de configuration qui référence le certificat personnalisé.
|
Définir le répertoire d'installation du plug-in
Une propriété wt.plugins.installed.dir dédiée est fournie en standard pour permettre à l'administrateur de définir le répertoire dans lequel les fichiers du plug-in seront décompressés et installés. Par défaut, cette propriété est laissée vide, ce qui signifie qu'aucun chemin d'installation n'est prédéfini.
Un administrateur installant Windchill doit créer manuellement un répertoire sécurisé à l'extérieur du répertoire de base Windchill avec des permissions de lecture, d'écriture et d'exécution, puis configurer cette propriété en conséquence.
Pour ajouter et propager la propriété wt.plugins.installed.dir dans le fichier wt.properties à l'aide de xconfmanager, utilisez la commande suivante. Par exemple :
xconfmanager -s wt.plugins.installed.dir=<your_custom_path> -t codebase/wt.properties && xconfmanager -pF
|
|
Lorsque vous spécifiez le chemin du répertoire d'installation du plug-in sous Windows, reportez-vous à la rubrique Specifying URIs and URLs pour obtenir des conseils sur les formats de chemin valides.
|
Assurez-vous que l'accès au répertoire d'installation est accordé uniquement aux utilisateurs administrateurs. Aucun autre utilisateur ne doit bénéficier de cette permission.
|
|
Si le répertoire d'installation du plug-in n'est pas créé conformément aux instructions, l'installation du plug-in ne s'effectuera pas.
|
Après avoir créé un répertoire et l'avoir défini à l'aide de la propriété, vous pouvez installer le plug-in sans avoir à redémarrer le serveur Windchill.
Configurer un répertoire partagé pour l'installation du plug-in dans les environnements Windchill en grappe
Dans un environnement Windchill en grappe, l'installation du plug-in nécessite un répertoire partagé accessible à partir de tous les noeuds de la grappe. Cet emplacement partagé garantit une cohérence de déploiement et de disponibilité des plug-ins dans l'environnement.
|
|
L'installation du plug-in est uniquement prise en charge via le répertoire partagé, et les répertoires locaux ne sont pas pris en charge dans les configurations en grappe. Si le répertoire partagé n'est pas configuré correctement ou est inaccessible sur un noeud, le processus d'installation du plug-in échoue.
|
Les administrateurs doivent respecter les consignes suivantes pour configurer et sécuriser correctement le répertoire partagé :
• Créez un dossier partagé en réseau qui servira de répertoire commun d'installation du plug-in, accessible à partir de tous les noeuds Windchill.
• Spécifiez un chemin de réseau valide :
◦ \\shared\plugins (pour les systèmes Windows utilisant le format de chemin UNC)
◦ /mnt/shared/plugins (pour les systèmes Linux utilisant des chemins de réseau montés)
• Assurez-vous que tous les noeuds disposent d'un accès en lecture et en écriture au dossier partagé, et accordez des permissions d'exécution à l'utilisateur du programme d'installation Windchill. Dans une configuration en grappe Windows, les serveurs de plug-ins fonctionnent toujours en mode administré à distance.
• Utilisez l'utilitaire xconfmanager pour définir la propriété wt.plugins.installed.dir sur chaque noeud et vous assurer qu'elle pointe de manière cohérente vers le répertoire partagé.
• Assurez-vous que le répertoire partagé dispose d'un espace libre suffisant pour accueillir tous les plug-ins. Par exemple, si vous prévoyez d'installer 10 plug-ins de différentes tailles, calculez l'espace total requis en additionnant les tailles de tous les plug-ins. Le répertoire partagé doit comporter suffisamment d'espace libre pour accueillir tous les plug-ins après l'installation.
|
|
Dans une configuration en grappe, si l'un des noeuds est à l'arrêt pendant l'installation du plug-in, le plug-in n'est installé que sur le noeud en cours d'exécution. Lorsque le noeud à l'arrêt est remis en ligne, le plug-in y est automatiquement installé, et les modifications de configuration Apache sont mises à jour en conséquence.
Prenons l'exemple d'une configuration impliquant un Noeud 1 et un Noeud 2. Si le Noeud 2 est à l'arrêt ou est mis hors ligne pendant l'installation du plug-in, le plug-in n'est pas installé sur le Noeud 2 à ce stade. Une fois que le serveur et les services Apache ont été redémarrés et que le Noeud 2 est remis en ligne, tous les fichiers d'installation requis sont automatiquement mis à jour sur le Noeud 2. Aucune étape manuelle n'est requise.
|
Fichiers journaux dans le répertoire d'installation du plug-in
Le répertoire d'installation du plug-in comporte un dossier contenant les fichiers journaux générés par le plug-in, par exemple /opt/ptc/plugins/logs. Les administrateurs peuvent se référer à ces journaux détaillés pour résoudre les problèmes ou vérifier les opérations. Ces journaux incluent des horodatages, les détails des demandes et les messages d'erreur.
Une propriété wt.plugins.logs.dir dédiée est fournie pour spécifier l'emplacement personnalisé pour la génération des journaux du plug-in.
• Si la propriété n'est pas définie, les journaux du plug-in sont générés dans le répertoire d'installation du plug-in, par exemple /opt/ptc/plugins/logs.
• Si la propriété est définie, les journaux du plug-in sont générés dans le répertoire spécifié par la propriété.
|
|
Les journaux associés à Windchill sont disponibles dans Apache et les journaux du serveur de méthodes stockés dans les répertoires de journalisation de l'installation Windchill.
|
Définir le répertoire temporaire du plug-in
Une nouvelle propriété wt.plugins.temp.dir a été introduite. Il s'agit d'une propriété facultative qui définit le répertoire de stockage des fichiers temporaires du plug-in. Par défaut, le chemin du répertoire est défini sur ${wt.temp}/<pluginId>. wt.temp est la propriété wt existante qui définit l'emplacement temporaire de Windchill. Il est important de veiller à ce que seuls les utilisateurs administrateurs disposent d'un accès en écriture à ce répertoire. Aucun autre utilisateur ne doit bénéficier de cette permission.
Pour définir cette propriété, utilisez la commande suivante :
xconfmanager -s wt.plugins.temp.dir=<your_custom_path> -t codebase/wt.properties && xconfmanager -pF
Créer un index unique dans la colonne VIZSERVERJOBID du tableau PUBLISHCLOUDENTRY
Pour améliorer les performances de la création de tâches externes et des opérations AI Parts Rationalization, créez un index unique dans la colonne VIZSERVERJOBID du tableau PUBLISHCLOUDENTRY.
Pour créer un index unique, procédez comme suit :
1. Avant de créer l'index, assurez-vous que la colonne VIZSERVERJOBID ne comporte pas de valeurs en double. Cette colonne est actuellement vide, car Windchill ne l'utilise pas en standard.
2. Utilisez la commande SQL appropriée indiquée par le fournisseur de la base de données afin de créer l'index unique dans la colonne VIZSERVERJOBID du tableau PUBLISHCLOUDENTRY.
Voici un exemple de code applicable aux bases de données Oracle. Les administrateurs de base de données doivent adapter la syntaxe et les options aux exigences et bonnes pratiques spécifiques de leur système de base de données :
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. Reconstituez l'index nouvellement créé si nécessaire.
4. Vérifiez que l'index a bien été créé.
Selon les paramètres système de votre organisation, l'administrateur de base de données doit prendre les mesures appropriées.
|
|
Le VIZSERVERJOBID est utilisé comme identificateur clé dans les flux de recherche d'articles et de tâches externes.
|
|
|
Les paramètres propres à l'index sont facultatifs lors de la création de l'index unique sur la colonne VIZSERVERJOBID. Nous vous recommandons d'utiliser les paramètres par défaut du serveur de base de données de production. Seule la requête de création d'index de base, avec le nom d'espace de table approprié, est exécutée.
|
Configurer le stockage client
La section suivante décrit la procédure de configuration de chaque option de stockage prise en charge : le Stockage Blob Azure Microsoft et le compartiment Amazon S3.
Pour les configurations de serveur Windchill sur site, AI Parts Rationalization prend uniquement en charge l'authentification SECURITY_CREDENTIALS lors de la connexion au Stockage Blob Azure Microsoft et aux compartiments Amazon S3.
Toutes les informations sensibles fournies lors de la configuration du stockage sont stockées de manière sécurisée à l'aide d'un KeyStore. Cette approche vous offre l'assurance que vos informations d'identification sont chiffrées et protégées contre tout accès non autorisé, maintenant ainsi la confidentialité et l'intégrité de vos données.
Pour plus d'informations, consultez la rubrique
Configuring Customer Storage.
• Stockage Azure
◦ Nom du compte : nom de votre compte de stockage Azure.
◦ Clé de compte : clé secrète utilisée pour authentifier l'accès.
◦ Nom du conteneur : nom d'un conteneur existant ou nouvellement créé.
|
|
Le nom du compte de stockage et les clés d'accès sont fournis sur la page Stockage Azure sous Sécurité et mise en réseau.
Si vous disposez déjà d'un compte de stockage Azure, nous vous recommandons de créer un compte supplémentaire afin d'améliorer la sécurité et l'organisation du stockage. Le nom du compte existant figure sous > .
L'utilisation de VCS nécessite que le Stockage Azure soit accessible publiquement. Définissez l'option Activé à partir de tous les réseaux sur > > > > .
|
• Amazon S3
◦ Bucket Name : nom de votre compartiment Amazon S3.
◦ Access Key ID : votre ID de clé d'accès AWS.
◦ Secret Access Key : clé secrète pour l'authentification.
◦ Region : région AWS dans laquelle votre compartiment est hébergé.
|
|
Vous trouverez les détails ci-dessus sur la console AWS :
• Amazon S3 Bucket Name : accédez au service Amazon S3 sur la console AWS. Les noms de vos compartiments sont répertoriés sous la colonne Bucket name du tableau de bord S3 principal. Actuellement, le plug-in AI Parts Rationalization ne prend pas en charge une structure de dossiers sous le compartiment Amazon S3.
• Access Key ID : accédez à l'onglet > > > pour afficher ou créer votre ID de clé d'accès.
• Secret Access Key : votre clé d'accès secrète n'est disponible que lorsque vous créez une nouvelle clé d'accès dans > > > . Elle n'apparaît qu'une seule fois et n'est plus consultable par la suite.
• Region : accédez au service Amazon S3 sur la console AWS. Dans la liste des compartiments, la région figure dans la colonne AWS Region en regard du nom de chaque compartiment.
• Définissez une politique sur le compartiment Amazon S3. Voici un exemple d'instantané de politique définie sur le compartiment 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 politique peut être personnalisée en fonction des exigences de sécurité du client. Assurez-vous de fournir un accès en lecture, en écriture, en listage d'objets, en suppression et en vérification d'existence au compartiment Amazon S3.
|
Vous pouvez uniquement visualiser et renseigner les champs relatifs au type de stockage que vous avez sélectionné.
Les détails du compte de stockage sont requis lors de la configuration du plug-in. Pour plus d'informations, consultez la section
Configurer le plug-in AI Parts Rationalization.
Configurer l'utilisateur d'indexation
Par défaut, le champ d'utilisateur d'indexation de l'interface utilisateur de configuration du plug-in est vide. Pour permettre l'indexation, vous devez configurer un utilisateur d'indexation valide.
Si un administrateur du site est configuré en tant qu'utilisateur d'indexation, toutes les données du site seront prises en compte pour l'indexation. Pour l'administrateur du site, il est inutile de configurer une nouvelle règle de contrôle d'accès.
L'administrateur du site est responsable de la création et de la configuration de l'utilisateur d'indexation dans le système Windchill. L'utilisateur d'indexation doit être un utilisateur non-administrateur spécifiquement désigné pour initialiser les opérations d'indexation.
Grâce aux contrôles d'accès appropriés au niveau du contexte, l'utilisateur d'indexation peut inclure ou exclure un contenu de produit spécifique de l'indexation.
|
|
• Fournissez à l'utilisateur d'indexation un accès au niveau du site et au niveau du contexte.
• Si un utilisateur d'indexation est créé et qu'une configuration est ajoutée, mais qu'aucune règle d'administration des politiques n'est définie pour l'utilisateur et qu'aucun accès au contexte n'est accordé, aucune donnée ne sera indexée.
• Ajoutez l'utilisateur d'indexation à l'une des licences de base par le biais du groupe d'exclusion de licence. Pour plus d'informations, consultez la rubrique Groupes d'exclusion de licence.
|
Pour configurer l'utilisateur d'indexation, procédez comme suit :
1. Configurez les contrôles d'accès au niveau du site.
a. Dans Windchill, accédez à > .
b. Sélectionnez > .
Le nom de l'utilisateur d'indexation (IndexUser) est défini par l'utilisateur lors de la configuration.
2. Configurez les contrôles d'accès au niveau du contexte.
a. Dans Windchill, accédez à > .
b. Sélectionnez Tous les contextes. Dans le tableau, sélectionnez > > . Définissez ces contrôles d'accès pour les contextes Produit dont les articles doivent être indexés.
c. Créez de nouvelles règles de contrôle d'accès avec les configurations suivantes :
|
Type
|
Utilisateur
|
Contrôle d'accès
|
|
Article
|
IndexUser
|
Lire
|
|
Image dérivée
|
IndexUser
|
Lire, Télécharger
|
L'utilisateur d'indexation doit disposer d'un accès en téléchargement pour le type Image dérivée. Cette permission peut être héritée du contexte au niveau du site ou être explicitement ajoutée à un contexte spécifique.
|
|
Lors de la configuration de l'utilisateur d'indexation, il est recommandé de lui permettre d'accéder à des contextes spécifiques, tels que Site, Produit, Bibliothèque, Projet ou Organisation. Si vous ne souhaitez indexer que certaines données d'un contexte spécifique, vous devez vous assurer que les permissions pour les types Article et Image dérivée de ce contexte sont correctement accordées. Si l'accès n'est pas restreint, tous les articles de la base de données Windchill seront indexés, ce qui peut être inutile et augmentera considérablement le temps nécessaire à l'indexation.
Sélectionnez avec soin les éléments à indexer, car la licence utilise des crédits IA. Une indexation superflue consomme ces crédits, ce qui peut entraîner des coûts additionnels liés à l'achat ultérieur de crédits supplémentaires. Une configuration minutieuse des permissions permet de contrôler les éléments indexés et d'éviter toute consommation inutile des ressources.
|
4. Pour configurer l'utilisateur d'indexation pour les contextes Projet et Bibliothèque, l'utilisateur doit se connecter en tant que créateur de Projet ou de Bibliothèque.
◦ Pour le contexte Projet, accédez à > > .
◦ Pour le contexte Bibliothèque, accédez à > > .
5. Définissez la même règle de contrôle d'accès que celle que vous avez configurée dans le contexte PDM, comme décrit à l'étape 2c.
| Si vous modifiez l'utilisateur d'indexation ou les permissions qui lui sont associées pour un contexte, les données indexées demeurent dans l'index vectoriel, même si vous supprimez ces permissions par la suite. En d'autres termes, une fois l'indexation terminée, la suppression des permissions pour un contexte n'élimine pas les entrées correspondantes de l'index. Par exemple, supposons qu'un utilisateur d'indexation dispose d'une permission pour deux contextes et que l'indexation soit effectuée pour ces deux contextes. La suppression ultérieure de la permission pour l'un de ces contextes n'éliminera pas ses incorporations. L'index conservera les entrées de ce contexte, bien que la permission ait été supprimée. |