Скрипт интерфейса для установки произвольных файлов на все узлы в Websphere? - PullRequest
3 голосов
/ 12 июля 2011

Я довольно новичок в wsadmin и клиенте администрирования, доступном для Websphere.Мне было интересно, есть ли у кого-нибудь пример развертывания произвольных файлов на каждом узле в ячейке?В идеале я ищу решение, которое будет работать как с Websphere ND v7, так и с v6.1, и не будет прибегать к собственным методам передачи файлов (например, windows share / sftp), хотя, если есть конфигурация, которую можно обнаружить с помощью диспетчера развертыванияо том, какой собственный метод выбрать для развертывания файла, который может быть опцией.

Для некоторого фона я пытаюсь написать сценарий установки приложения для наших клиентов.В рамках этого мне нужно будет создать JDBC-провайдера и общую библиотеку вместе с моим Приложением.В документации IBM достаточно ясно описано, как создать общую библиотеку с определенным путем к классу , провайдером JDBC и переменными Websphere.Но я сталкиваюсь с проблемой того, как мне обеспечить, чтобы ресурсы, определенные на пути к классам настроенного поставщика и общей библиотеки, были доступны на каждом узле во время выполнения?

1 Ответ

2 голосов
/ 13 июля 2011

Произвольные файлы могут управляться централизованно с использованием объекта wsadmin AdminConfig. Этот подход помещает файлы в хранилище конфигурации WAS, которое отслеживается службой синхронизации узлов, и поэтому автоматически синхронизирует изменения файлов из главного хранилища с каждым хранилищем узлов. Существуют команды wsadmin, которые позволяют централизованно и удаленно добавлять, обновлять и удалять файлы.

Вот пример wsadmin jython кода, который будет загружать локальный файл (/temp/jdbc-driver.jar) в хранилище конфигурации (<WAS_PROFILE_ROOT>/config/test-app/jdbc-driver.jar). Синхронизация узла может быть вызвана явным образом, как показано в сценарии, или синхронизация будет выполняться автоматически, если включена автоматическая синхронизация.

file = "/temp/jdbc-driver.jar"
dest = "test-app/jdbc-driver.jar"
AdminConfig.createDocument(dest, file)
AdminNodeManagement.syncActiveNodes()

Следующий код wsadmin jython показывает, как обновить файл.

file = "/temp/jdbc-driver.jar"
dest = "test-app/jdbc-driver.jar"
digest = AdminConfig.extract(dest, file)
# update the file locally in /temp/jdbc-driver.jar
AdminConfig.checkin(dest, file, digest)
AdminNodeManagement.syncActiveNodes()
...