Давно я ничего не писал сюда .. буду исправляться :)
И Так …
В очередной раз столкнулся по работе с настройкой связи между платформами Wonderware Application Server и в частности с резервированием движков на онных платформах …. да и новый текноут по данной теме вышел Tech Note 825 Industrial Application Server Redundancy: Troubleshooting Guidelines. Попробую компактно и по русски все что там описано законспектировать, без картинок и скоментариями …. картинки в оригинале смотреть :)
(авторы оригинального текноута P. Karthikeyan and N. Khadikar)
И Так …
В очередной раз столкнулся по работе с настройкой связи между платформами Wonderware Application Server и в частности с резервированием движков на онных платформах …. да и новый текноут по данной теме вышел Tech Note 825 Industrial Application Server Redundancy: Troubleshooting Guidelines. Попробую компактно и по русски все что там описано законспектировать, без картинок и скоментариями …. картинки в оригинале смотреть :)
(авторы оригинального текноута P. Karthikeyan and N. Khadikar)
- Отключаем UAC (Tech Note 772 ,Tech Note 733)
- Убеждаемся что Фаервол везде выключен
- Убеждаемся что версия .NET Framework на всех машинах одинаковая
- Проверяем пингами связь между резервируемыми машинами и между этими машинами и Галактикой.
Пинговать по как по именам, так и по IP адресам.
IP адреса сверять с теми что в пингах по именам показывает и по ipconfig /all !
Имена и IP в hosts файле (если мы его вместо/вместе DNS используем C:\Windows\System32\drivers\etc\hosts) должны совпадать с именами и адресами на машинах (были случаи однако....) - Отключить IPv6 для используемых подключений (пишут что иногда помогает :) )
- Проверить порядок привязки сетевых карт в настройках Windows.
Основная сеть по которой платформы общаются обязательно первой, линк между резервными после основной или дальше.Tech Note 773 и Tech Note 368 - Проверяем настройки DCOM чтобы убедится что он включен :)
как это делать в Windows 2000 и 2003 читаем в Tech Note 461
В 7ке и 2008 порядок действий такой - открываем Component Services. (Control Panel\All Control Panel Items\Administrative Tools)
- Выбираем в дереве компьютор для которого собираемся настраивать DCOM (обычно он там 1 и называется My Computer) и правой кнопкой мышки по нему щелкаем :)
- в выпвшей меню выбераем Properties
- далее вкладку Default Properties
- если не установлена то ставим галочку Enable Distributed COM on the computer. Authentication Level = Connect. Impersonation Level = Identify. Остальные галочки “uncheck”....
- OK
- Проверяем разрешения для папок
C:\Program Files\ArchestrA\Framework\Bin\CheckPointer
C:\Program Files\ArchestrA\Framework\Bin\GalaxyData
C:\Program Files\ArchestrA\Framework\Bin\GlobalDataCache
Подробнее в Tech Note 461 (постараюсь описать развернуто позже) - Убеждаемся что simple file sharing выключен.
Проверить можно в любой папке через меню Folder Options → View tab → Advanced settings. В ХР убрать галочку Use simple file sharing (Recommended), в Vista|7 убрать Use Sharing Wizard (Recommended). - Версия Application Server должна быть одинаковая на обоих машинах используемых для резервирования.Тест: Первый деплой резервируемого движка не каскадом и с отмеченной галочкой Include Redundant Partner. Проверить резервирование и только после этого деплоить объекты.
- Проверяем конфигурацию платформы
- configuration → General → Network address используем имя ноды а не IP адрес
- configuration → General → Redundancy Message Channel IP address вписан собственный IP адрес RMC сети а не адрес второй машины (было и сам путал :) )
- Проверяем конфигурацию движка
- галочка Restart the engine when it fails должна быть убрана
- время скана - Scan Period выставляем болше стандартного и делаем его разным на разных движках для того чтобы они не падали одновременно
- Если платформы друг друга видят но есть проблеммы с резервированием рекомендуется увеличить значение configuration → Redundancy → Maximum time to discover partners до 30000
- После сохранения изменений проверьте разрешилась ли проблема … передеплойте :)
- При большом количестве объектов на движке (несколько сотен штук или сложных просто очень.... ) необходимо распределять нагрузку. Создайте новые движки и перенесите некоторые объекты на них для равномерного распределения нагрузки
- Используйте Object Viewer чтобы проверить работу резервирования. Проверяйте следующие атрибуты:
- Redundancy.Status
- Redundancy.PartnerStatus
- Redundancy.Identity
- Platform Engine.Objects (опционально но полезно)