Получение ошибки при вызове проверки пользователя в кластерной среде сервера OpenText CS/AS

У меня есть кластерная установка OpenText Content Server 10.5 Update 2015-09 вместе с кластерным сервером архивации, работающим с Microsoft Cluster в Windows 2012R2.

Режим кластера активный/пассивный.

Конфигурация следующая:

Кластер MS Server: отвечает на адрес, оканчивающийся на .99

  • Узел 1: приложение OTCS ВКЛЮЧЕНО, отвечая на vip-адрес, оканчивающийся на .47
  • Узел 2: приложение OTCS ВЫКЛЮЧЕНО

Кластер MS Server: отвечает на адрес, оканчивающийся на .98

  • Узел 1: Приложение OTAS ВКЛЮЧЕНО, отвечая на vip-адрес, оканчивающийся на .48
  • Узел 2: приложение OTAS ВЫКЛЮЧЕНО

У меня есть приложение, которое вызывает веб-службы OT Java, настроенные так, чтобы они указывали непосредственно на адрес кластера, а не на отдельные серверы.

Шаг, который я выполнил:

  1. Аутентификация по OTDS, установленной сначала на сервере AS, с использованием клиента, созданного с использованием otdsws/services/Authentication wsdl. Это возвращает токен OTDSSO для пользователя.
  2. Проверка пользователя по CS с использованием метода ValidateUser и параметра OTDSSO в качестве параметра, созданного cws/Authentication.svc wsdl

Проблема в том, что когда приложение запускается, оно может правильно взаимодействовать с сервером CS, используя WS, но когда кластер переключается на другой узел, построение URL для вызова метода ValidateUser соответствует vip кластера MS (.99) вместо OTCS приложение вип (.47).

Пока эти приложения находятся на разных узлах, я получаю следующую ошибку:

Не удалось получить доступ к серверу. Не удалось установить соединение, так как целевая машина активно отказалась от него 172.30.136.99:2099 в OpenText.Livelink.Service.Core.ExceptionUtil.handleException(Exception ex) в OpenText.Livelink.Service.Core.Authentication.ValidateUser(String capToken) в OpenText.Livelink.Service.Core.Authentication_WCF.ValidateUser(запрос ValidateUserRequest) в SyncInvokeValidateUser(Object , Object[] , Object[] )
в System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(экземпляр объекта, Object[] входы, Object[]& outputs) в System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc) в System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc) в System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage4(MessageRpc& rpc) в System. .ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet) OpenText.Livelink.Service.Core.ServiceEx восприятие

Я выполнил тот же тест, используя SoapUI, и получил ту же ошибку. Мне интересно, почему вызов направляется на vip-приложение кластера, а не на vip-приложение OTCS.

Обновление 2015-12-15

Также проверил настройки конфигурации параметров безопасности, предложенные @Matthew Barben, но безуспешно. Кажется, что каждому IP-адресу разрешено вызывать систему OTCS по умолчанию, фактически читая со страницы справки:

Клиентские хосты сервера содержимого

Поле Content Server Client Hosts содержит IP-адреса серверов, от которых должны приниматься запросы. По умолчанию поле пусто, и все клиентские подключения принимаются.


person abarisone    schedule 11.12.2015    source источник


Ответы (2)


Проверьте файл web.xml (сторона Tomcat) или web.config (сторона IIS) для развернутой веб-службы CWS. В самых первых строках проверьте значение livelink.host и измените его, чтобы оно отражало конфигурацию вашей системы.

?xml version="1.0" encoding="utf-8"?> <configuration>   <appSettings>
    <add key="livelink.host" value="yourContentServerHost.yourdomain.com" />
    <add key="livelink.port" value="2099" />

Этот параметр управляет соединением между веб-сервисом и CS.

Перезапустите веб-службы и протестируйте собственное приложение.

person Fracassa79    schedule 22.12.2015
comment
Только что попробовал решение, которое вы предоставили, и оно работает. Он был неправильно настроен. Большой! - person abarisone; 22.12.2015

Есть ли у вас какие-либо записи, перечисленные в параметре хостов CGI в OTCS?

(Вы можете проверить, перейдя по адресу http://your_installation_hostname/otcs/cs.exe?func=admin.securityvars).

Если у вас есть в списке хосты CGI, вам нужно будет указать оба сервера 172.30.136.99 и 172.30.136.98.

person Matthew Barben    schedule 14.12.2015
comment
Здравствуйте, я просмотрел предложенную вами страницу, но не могу найти ни одного поля CGI Hosts. Где мне его найти? Вы случайно не ссылаетесь на поля «Надежные ссылающиеся веб-сайты»? - person abarisone; 14.12.2015
comment
Привет, он может быть указан как «клиентские хосты Content Server» (он указан как хосты CGI в opentext.ini) - person Matthew Barben; 15.12.2015