Необходимая настройка перед установкой подключаемого модуля AI Parts Rationalization в локальной среде
|
|
Этот раздел предназначен для администраторов, настраивающих локальную установку Windchill.
|
Перед установкой подключаемого модуля администраторы должны выполнить следующие предварительные условия:
Конфигурировать сервер Windchill
Перед установкой подключаемого модуля AI в среде Windchill убедитесь, что ваша система соответствует требованиям к конфигурации, представленным в этом разделе. Выполнение этих требований важно для совместимости, производительности и стабильности подключаемого модуля в экосистеме Windchill.
Дополнительные сведения о настройке сервера Windchill см. в разделе
Установка Windchill и процесс установки.
Поскольку подключаемый модуль размещается на том же компьютере, что и сервер методов, для обеспечения бесперебойной работы потребуется дополнительная память.
• Поддерживаемые версии Windchill: 12.1.2.22, 13.0.2.10 и 13.1.3.0
• Необязательный модуль (PartsLink) - подключаемый модуль поддерживает установку в средах Windchill. Такая гибкость обеспечивает интеграцию подключаемого модуля с широким диапазоном настроек Windchill:
◦ С PartsLink - включает расширенную классификацию и повторное использование деталей с помощью структурированной таксономии.
◦ Без PartsLink - стандартная функциональность Windchill без улучшений классификации.
• Опции хранилища BLOB-объектов - подключаемый модуль поддерживает среды Windchill, использующие облачное хранилище BLOB-объектов. Это обеспечивает бесперебойную обработку больших файлов и документов, хранящихся в следующих облачных сервисах:
◦ Microsoft Azure
◦ Amazon Web Services (AWS)
|
|
Для подключаемого модуля требуется выделенная учетная запись хранилища в AWS или Azure. Отметим, что в настоящее время Windchill поддерживает хранение содержимого архива в хранилище BLOB-объектов, но это отдельное требование. Даже если клиент уже использует хранилище BLOB-объектов для данных архива, для этого подключаемого модуля по-прежнему требуется отдельная учетная запись хранилища.
|
• Конфигурация сервера Apache: подключаемый модуль использует следующие методы аутентификации с помощью Apache, поддерживаемые выпусками Windchill 12.1.2.22, 13.0.2.10 и 13.1.3.0.
◦ Базовая аутентификация - простой доступ с именем пользователя и паролем.
◦ SSO SAML
◦ CAC-PKI (сертификат клиента) - строгая аутентификация с использованием сертификатов SSL.
◦ OIDC-SSO
|
|
Аутентификация OIDC-SSO не поддерживается при использовании подключаемого модуля AI Parts Rationalization с Windchill версии 12.1.2.22.
|
|
|
Если используется MPMLink, чтобы включить индексирование с длинным URL-адресом, задайте настройки серверов AJP и Tomcat следующим образом:
1. В оболочке Windchill перейдите в папку <HTTPServer> и выполните следующую команду:
ant -f config.xml configureAJPWorkers -DajpMaxPacketSize=16384
2. В оболочке Windchill перейдите в каталог папок <Windchill>/Tomcat и выполните следующую команду:
ant -f config.xml configureConnectors -DajpMaxPacketSize=16384
3. Отредактируйте файл HTTPServer/conf/httpd.conf, чтобы включить в него следующие строки:
LimitRequestLine 16384
LimitRequestFieldSize 16384
4. Перезапустите серверы Apache и Windchill, чтобы изменения вступили в силу.
|
Обновите Windchill с установленным флажком "Сохранить настройки Apache"
Если при обновлении Windchill до выпуска 12.1.2.22, 13.0.2.10 или 13.1.3.0 выбрать опцию Сохранить настройки Apache, сервер Apache не будет обновляться в процессе обновления. Это означает, что существующая конфигурация Apache останется неизменной и любые новые изменения конфигурации, внесенные в обновление, не будут применяться автоматически.
Чтобы вручную применить необходимые изменения конфигурации Apache, выполните эти шаги, только если во время обновления для опции Сохранить настройки Apache выбрано значение истина. Если вы не выбрали это значение, обновленная конфигурация Apache будет применена автоматически.
Следующие шаги являются общими для всех типов аутентификации (SAML, SSO и базовой аутентификации).
1. Загрузите требуемые модули - обновите файл modules-load.conf.template, расположенный в <Windchill_Home>\HTTPServer\conf\templates\, чтобы включить отсутствующие модули:
<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. Измените конфигурацию Apache. Прежде чем продолжить, убедитесь, что создана резервная копия папки Apache. Затем выполните следующую команду, чтобы изменить конфигурацию Apache:
ant -f config.xml reconfigure
• SAML SSO
a. Загрузите требуемые модули, как описано в общем
Шаге 1.
b. Убедитесь, что директива ShibUseHeaders On присутствует в элементах LocationMatch в файле /apache/conf/conf.d/30-app-Windchill-1Auth.conf для REMOTE_USER. Добавьте ее, если она отсутствует.
• Базовая аутентификация
1. Загрузите требуемые модули, как описано в общем
Шаге 1.
2. Обновите файл webAppAuthResToConf.xsl в папке <Windchill_Home>\HTTPServer\conf\templates\xsl, чтобы включить следующий код после строки 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. Измените файл app-Windchill-AuthRes.xml - измените файл app-Windchill-AuthRes.xml, расположенный в папке \<Windchill_Home>\HTTPServer\conf, чтобы включить следующую строку сразу после открывающего тега <resources> перед любыми существующими записями <resource>:
<resource>WCPlugins</resource>
4. Измените конфигурацию Apache. Прежде чем продолжить, убедитесь, что создана резервная копия папки Apache. Затем выполните следующую команду, чтобы изменить конфигурацию Apache:
ant -f webAppConfig.xml regenAllWebApps
ant -f config.xml reconfigure
Если Windchill обновляется при значении Сохранить настройки Apache = true. Apache необходимо обновить вручную. Для единого входа в систему SAML SSO требуется проверка правильности конфигурирования директивы ShibUseHeaders On. Для "Базовой аутентификации" требуются дополнительные изменения конфигурации и регенерация веб-приложений. После выполнения соответствующих шагов для SSO SAML и базовой аутентификации измените конфигурацию Apache.
|
|
Если пользовательские сертификаты сконфигурированы в Windchill для пользовательского приложения (например, для приложения Navigate), вручную скопируйте содержимое файла пользовательского сертификата в файл HTTPServer/conf/sslvhostconf.d/allClientCerts.crt и удалите файл конфигурации, который ссылается на пользовательский сертификат.
|
Задать папку установки подключаемого модуля
В стандартной версии (OOTB) предоставляется выделенное свойство wt.plugins.installed.dir, чтобы администратор мог определить папку, в которую будут распакованы и установлены файлы подключаемого модуля. По умолчанию это свойство оставлено пустым, то есть путь установки не предопределен.
Администратор, устанавливающий Windchill, должен вручную создать безопасную папку вне домашней папки Windchill с разрешениями на чтение, запись и выполнение, а затем соответствующим образом сконфигурировать это свойство.
Чтобы добавить и распространить свойство wt.plugins.installed.dir в файле wt.properties с помощью xconfmanager, используйте следующую команду. Например:
xconfmanager -s wt.plugins.installed.dir=<your_custom_path> -t codebase/wt.properties && xconfmanager -pF
|
|
Инструкции по допустимым форматам путей при задании пути к папке установки подключаемого модуля в Windows см. разделе Задание URI и URL.
|
Убедитесь, что доступ к папке установки предоставлен только администраторам. Другие пользователи не должны иметь такое разрешение.
|
|
Если папка установки подключаемого модуля не будет создана, как описано, установка подключаемого модуля не будет продолжена.
|
После создания папки и определения ее с помощью свойства можно установить подключаемый модуль без перезагрузки сервера Windchill.
Конфигурирование общего каталога для установки подключаемого модуля в кластерных средах Windchill
В кластерной среде Windchill для установки подключаемого модуля требуется общая папка, доступная из всех узлов в кластере. Это общее расположение обеспечивает согласованное развертывание и доступность подключаемых модулей во всей среде.
|
|
Установка подключаемого модуля поддерживается только через общий каталог, а локальные каталоги не поддерживаются в кластерных конфигурациях. Если общий каталог не сконфигурирован должным образом или не доступен ни для одного узла, произойдет сбой процесса установки подключаемого модуля.
|
Для правильной настройки и защиты общего каталога администраторы должны следовать приведенным ниже рекомендациям.
• Создайте общую для сети папку, которая будет служить общей папкой установки подключаемого модуля, доступной из всех узлов Windchill.
• Укажите допустимый путь сети.
◦ \\shared\plugins (для систем Windows, использующих формат пути UNC)
◦ /mnt/shared/plugins (для систем Linux, использующих смонтированные сетевые пути)
• Убедитесь, что все узлы имеют доступ на чтение и запись к общей папке, и предоставьте разрешения на выполнение пользователю программы установки Windchill. В кластерной установке Windows серверы подключаемых модулей всегда работают в режиме удаленного управления.
• Используйте утилиту xconfmanager, чтобы задать свойство wt.plugins.installed.dir на каждом узле, и убедитесь, что оно согласованно указывает на общий каталог.
• Убедитесь, что в общем каталоге достаточно свободного места для размещения всех подключаемых модулей. Например, если планируется установить 10 подключаемых модулей, каждый из которых имеет свой размер, рассчитайте требуемое общее пространство, сложив размеры всех подключаемых модулей. В общем каталоге должно быть достаточно свободного места для размещения всех подключаемых модулей после установки.
|
|
Если в кластерной установке один из узлов не работает во время установки подключаемого модуля, подключаемый модуль устанавливается только в текущем выполняющемся узле. Когда вышедший из строя узел возвращается в интерактивный режим, подключаемый модуль автоматически устанавливается на этом узле и изменения конфигурации Apache обновляются соответствующим образом.
Например, рассмотрим настройку с узлом 1 и другим узлом 2. Если узел 2 не работает или переходит в автономный режим во время установки подключаемого модуля, он не будет установлен на узле 2 в это время. После перезапуска сервера и сервисов Apache и возврата узла 2 в режим работы все требуемые установочные файлы автоматически обновляются на узле 2. Никакие дополнительные шаги не требуются.
|
Файлы журнала в папке установки подключаемого модуля
Папка установки подключаемого модуля содержит папку журналов с файлами, генерируемыми подключаемым модулем, например /opt/ptc/plugins/logs. Администраторы могут обращаться к этим подробным журналам для устранения проблем или проверки операций. Эти журналы содержат метки времени, подробности запросов и сообщения об ошибках.
Специальное свойство wt.plugins.logs.dir предоставляется для задания пользовательского расположения для генерации журналов подключаемого модуля.
• Если это свойство не задано, журналы подключаемого модуля будут генерироваться в папке по умолчанию, например в папке /opt/ptc/plugins/logs.
• Если свойство задано, журналы подключаемого модуля генерируются в папке, указанной в свойстве.
|
|
Журналы, связанные с Windchill, доступны в журналах Apache и сервера методов (MethodServer) в папках ведения журнала установки Windchill.
|
Задать папку установки подключаемого модуля
Добавлено новое свойство wt.plugins.temp.dir. Это дополнительное свойство, определяющее папку для хранения временных файлов подключаемого модуля. По умолчанию задается путь к папке ${wt.temp}/<pluginId>. wt.temp - это существующее wt-свойство, определяющее временное расположение Windchill. Важно гарантировать, что доступ на запись в эту папку будет предоставлен только административным пользователям. Другие пользователи не должны иметь такое разрешение.
Чтобы задать это свойство, используйте следующую команду:
xconfmanager -s wt.plugins.temp.dir=<your_custom_path> -t codebase/wt.properties && xconfmanager -pF
Создайте уникальный индекс в столбце VIZSERVERJOBID таблицы PUBLISHCLOUDENTRY
Чтобы повысить производительность операций по созданию внешних заданий и операций AI Parts Rationalization, создайте уникальный индекс в столбце VIZSERVERJOBID таблицы PUBLISHCLOUDENTRY.
Выполните следующие шаги, чтобы создать уникальный индекс.
1. Перед созданием индекса убедитесь в отсутствии дублирующихся значений в столбце VIZSERVERJOBID. Этот столбец в данный момент пуст, поскольку Windchill не использует его в стандартной настройке.
2. Используйте соответствующую команду SQL, предоставленную поставщиком базы данных, чтобы создать уникальный индекс в столбце VIZSERVERJOBID таблицы PUBLISHCLOUDENTRY.
Ниже приведен пример для баз данных Oracle. Администраторы базы данных должны настроить синтаксис и опции в соответствии с конкретными требованиями и оптимальными методами для системы базы данных.
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. При необходимости перестройте вновь созданный индекс.
4. Убедитесь, что индекс создан успешно.
В зависимости от системных параметров организации администратор базы данных должен предпринять соответствующие действия.
|
|
VIZSERVERJOBID используется в качестве идентификатора ключа в потоках поиска деталей и внешних заданий.
|
|
|
При создании уникального индекса для столбца VIZSERVERJOBID параметры, специфичные для индекса, являются необязательными. Рекомендуется использовать настройки по умолчанию сервера производственной базы данных. Выполняется только основной запрос на создание индекса вместе с соответствующим именем табличной области.
|
Сконфигурируйте хранилище клиента
В следующем разделе описываются шаги конфигурирования для каждого поддерживаемого варианта хранилища - хранилища BLOB-объектов Microsoft Azure и контейнера Amazon S3.
Для локальных конфигураций сервера Windchill подключаемый модуль AI Part Rationalization поддерживает только аутентификацию SECURITY_CREDENTIALS при соединении с хранилищем BLOB-объектов Microsoft Azure и контейнерами Amazon S3.
Вся конфиденциальная информация, предоставленная во время конфигурирования хранилища, безопасно сохраняется с помощью хранилища ключей. Это обеспечивает шифрование учетных данных и защиту от несанкционированного доступа для сохранения конфиденциальности и целостности данных.
Дополнительные сведения см. в разделе
Configuring Customer Storage.
• Хранилище Azure
◦ Имя учетной записи - имя учетной записи хранилища Azure.
◦ Ключ учетной записи - секретный ключ, используемый для аутентификации доступа.
◦ Наименование контейнера - наименование существующего или вновь созданного контейнера.
|
|
Имя учетной записи хранилища и ключи доступа можно найти на странице "Хранилище Azure" в разделе "Безопасность + сеть".
Если у вас уже есть учетная запись хранилища Azure, рекомендуется создать дополнительную учетную запись, чтобы повысить безопасность и лучше организовать хранилище. Вы можете найти существующее имя учетной записи в разделе > .
Хранилище Azure должно быть общедоступным для использования VCS. Установите флажок Enabled from all networks в разделе > > > > .
|
• Amazon S3
◦ Наименование контейнера - наименование контейнера S3.
◦ ИД ключа доступа - ваш идентификатор ключа доступа AWS.
◦ Секретный ключ доступа - секретный ключ для аутентификации.
◦ Регион - регион AWS, в котором размещен контейнер.
|
|
Приведенные выше сведения можно найти в Консоли AWS:
• Наименование контейнера S3 - перейдите к сервису S3 в консоли AWS. Наименования контейнеров перечислены в столбце Имя контейнера на главной инструментальной панели S3. В настоящее время подключаемый модуль AI Parts Rationalization не поддерживает структуру папок в контейнере Amazon S3.
• ИД ключа доступа - перейдите на вкладку > > > , чтобы просмотреть или создать свой идентификатор ключа доступа.
• Секретный ключ доступа - секретный ключ доступа можно найти, только создав новый ключ доступа в папке > > > . Она отображается один раз и не может просматриваться в дальнейшем.
• Регион - перейдите к сервису S3 в консоли AWS. В списке контейнеров регион отображается в столбце Регион AWS рядом с наименованием каждого контейнера.
• Определите политику в контейнере Amazon S3. Ниже приведен пример снимка политики, определенной в контейнере 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/*" ] } ] }
Политика может быть настроена на основе требований безопасности клиента. Убедитесь, что для контейнера Amazon S3 предоставлены права на чтение и запись, а также на выполнение команд List, Delete и Exists.
|
Вы можете видеть и заполнять только поля, относящиеся к выбранному типу хранилища.
Сведения об учетной записи хранилища требуются при конфигурировании подключаемого модуля. Дополнительные сведения см. в разделе
Настройка подключаемого модуля AI Parts Rationalization.
Сконфигурируйте пользователя индексирования
По умолчанию поле "Пользователь индексирования" в интерфейсе пользователя конфигурации подключаемого модуля является пустым. Чтобы включить индексирование, необходимо настроить действительного пользователя индексирования.
Если администратор сайта настроен как пользователь индексирования, при индексировании будут учитываться все данные сайта. Администратору сайта не требуется настраивать новое правило управления доступом.
Администратор сайта отвечает за создание и конфигурирование пользователя индексирования в системе Windchill. Пользователь индексирования должен не быть администратором и назначаться специально для инициирования операций индексирования.
При наличии соответствующих средств управления доступом на уровне контекста пользователь индексирования может включать в индексирование или исключать из него конкретное содержимое изделия.
|
|
• Предоставьте пользователю индексирования доступ как на уровне сайта, так и на уровне контекста.
• Если пользователь индексирования создан и конфигурация добавлена, но для пользователя не определены правила администрирования политики и не предоставлен доступ к контексту, то данные не индексируются.
• Добавьте пользователя индексирования в одну из базовых лицензий через группу исключения лицензий. Дополнительные сведения см. в разделе Группа исключения из лицензии.
|
Чтобы сконфигурировать пользователя индексирования, выполните следующие шаги.
1. Конфигурирование средств управления доступом на уровне сайта.
a. Перейдите к разделу > в Windchill.
b. Выберите > .
Имя пользователя индексирования (IndexUser) определяется пользователем во время конфигурации.
2. Конфигурирование управления доступом на уровне контекста.
a. Перейдите к разделу > в Windchill.
b. Выберите Все контексты. В таблице выберите > > . Задайте эти элементы управления доступом для контекстов Изделие, детали в которых требуется индексировать.
c. Создайте новые правила управления доступом со следующими конфигурациями:
|
Тип
|
Пользователь
|
Управление доступом
|
|
Деталь
|
IndexUser
|
Чтение
|
|
Производное изображение
|
IndexUser
|
Чтение, загрузка
|
Пользователь индексирования должен иметь доступ для загрузки типа "Производное изображение". Это разрешение может наследоваться из контекста уровня сайта или явно добавляться к конкретному контексту.
|
|
При конфигурировании пользователя индексирования рекомендуется предоставить пользователю индексирования доступ к конкретным контекстам, таким как сайт, изделие, библиотека, проект или организация. Если в конкретном контексте требуется индексировать только некоторые данные, необходимо убедиться, что в этом контексте должным образом предоставлены разрешения для типов "Деталь" и "Производное изображение". Если доступ не ограничен, все детали в базе данных Windchill будут индексироваться, что может оказаться ненужным и значительно увеличит время, необходимое для индексирования.
Выбирайте объекты для индексирования с осторожностью, поскольку лицензия использует кредиты AI. Ненужное индексирование потребляет эти кредиты, что может привести к дополнительным расходам на покупку дополнительных кредитов в дальнейшем. Тщательное конфигурирование разрешений помогает управлять индексированием и предотвращает ненужное потребление ресурсов.
|
4. Чтобы сконфигурировать пользователя индексирования для контекстов Проект и Библиотека, необходимо войти в систему как автор Проекта или Библиотеки.
◦ Для контекста проекта перейдите в раздел > > .
◦ Для контекста библиотеки перейдите в раздел > >
5. Задайте ту же политику доступа, которая была настроена в контексте PDM, как описано в шаге 2c.
| При изменении пользователя индексирования или связанных с ним разрешений для контекста индексированные данные остаются в индексе вектора, даже если впоследствии удалить эти разрешения. Другими словами, после завершения индексирования удаление разрешений для контекста не приведет к удалению соответствующих записей из индекса. Например, если у пользователя индексирования есть разрешение для двух контекстов и индексирование завершено для обоих. В дальнейшем удаление разрешения для одного из этих контекстов не приведет к удалению его встраиваний. Индекс по-прежнему будет сохранять записи для этого контекста, даже если разрешение было удалено. |