Я работаю над автоматическим развертыванием HCL Connections 6.5 с использованием Ansible в CentOS 7. Он уже включает в себя IBM IM, WAS (Dmgr + Node), DB2 и непосредственно Connections. HTTP-сервер (IHS) установлен, но теперь мне нужно его настроить. Мне нужно настроить плагин WebSphere с помощью WCT.
В образовательных целях я делал это раньше на другом тест-сервере, используя режим GUI, например:
cd /opt/IBM/WebSphere/Toolbox/WCT
./wct.sh
Теперь у нас есть мастер с несколькими шагами, который запрашивает местоположение плагина, имя определения веб-сервера, порт HTTP-сервера и т. Д.
Автоматизация мастера
Я нашел wctcmd . sh как CLI эквивалент wtc.sh
для автоматической настройки веб-серверов. Поэтому я создал следующий файл ответов
configType=remote
enableAdminServerSupport=true
enableUserAndPass=true
enableWinService=false
ihsAdminCreateUserAndGroup=true
ihsAdminPassword=password
ihsAdminPort=8008
ihsAdminUnixUserGroup=ihsadmin
ihsAdminUnixUserID=ihsadmin
mapWebServerToApplications=true
wasMachineHostname=cnx65.internal
webServerConfigFile1=/opt/IBM/HTTPServer/conf/httpd.conf
webServerDefinition=webserver1
webServerHostName=cnx65.internal
webServerOS=operating_system_value
webServerPortNumber=80
webServerSelected=ihs
и запустил wctcmd.sh
следующим образом:
cd /opt/IBM/WebSphere/Toolbox/WCT
./wctcmd.sh -tool pct -createDefinition -defLocPathname /opt/IBM/WebSphere/Plugins -response resp-file
Он говорит, что инструмент был успешно выполнен. Но когда я открываю конфигурацию веб-сервера /opt/IBM/HTTPServer/conf/httpd.conf
, он добавляет следующие две строки:
LoadModule was_ap22_module ${WAS_PLUGIN_DRIVER}
WebSpherePluginConfig /opt/IBM/WebSphere/Plugins/config/webserver1/plugin-cfg.xml
Эта переменная не определена и выдает ошибку при запуске веб-сервера:
# /opt/IBM/HTTPServer/bin/apachectl start
httpd: Syntax error on line 915 of /opt/IBM/HTTPServer/conf/httpd.conf: Cannot load ${WAS_PLUGIN_DRIVER} into server: ${WAS_PLUGIN_DRIVER}: cannot open shared object file: No such file or directory
Я предполагаю, что наличие ${WAS_PLUGIN_DRIVER}
указывает на то, что что-то пошло не так с wctcmd.sh
, потому что я смотрел на другой тестовый сервер с Connections 6, установленным вручную (с GUI), и на установленном вручную сервере нет никакой переменной:
LoadModule was_ap22_module /opt/IBM/WebSphere/Plugins/bin/64bits/mod_was_ap22_http.so
WebSpherePluginConfig /opt/IBM/WebSphere/Plugins/config/webserver1/plugin-cfg.xml
Консультант с более чем 10-летним опытом работы в WebSphere / Connections подтвердил, что LoadModule was_ap22_module /opt/IBM/WebSphere/Plugins/bin/64bits/mod_was_ap22_http.so
правильно, когда все работает правильно, поэтому не должно быть никаких переменных.
Вопросы
- Почему инструмент помещает переменную
${WAS_PLUGIN_DRIVER}
в мою конфигурацию http без их разрешения? - Что я делаю неправильно, если это происходит?