партнерский раздел
ФорумЭксплуатацияРучная синхронизация Орион сервера с контроллерами C2000-2

Эксплуатация » Ручная синхронизация Орион сервера с контроллерами C2000-2

Доброго времени суток.
Опишу ситуацию. 
Имеется:
"Центральный сервер Орион Про" версия 1.20.3.10778
Контроллеры  Bolid C2000-2

Каждую ночь, сервер, на котором расположен Орион - Перезагружается
После включенния сервера, скриптом, запускаются все зависимости.

Несколько раз возникала ситуация, что после перезагрузки, сервер и все зависимости штатно запустились и как-будто всё работало, но на самом деле сам сервер подвис, из-за чего данные о проходах не синхронизировались с контроллеров в сервер.
Т.е. на самих приборах (Контроллерах) данные о проходах есть, а в орион сервере их нет.
Проще говоря - Если бы на орионе был какой-то сбой, то при перезагрузке, данные с приборов подтянулись бы, но из-за того, что как-будто всё работало штатно - Данные на сервер не поступили и после перезагрузки не поступят.
Можно ли ориону какими-то средствами дать командну, что он получил данные с приборов за определённый период? 

1 год назад

avatar
Уточняющий вопрос - почему Орион перезагружается каждую ночь
 

Евдокимов А.В. 1 год назад

Есть такая необходимость. Ставим обновления Windows, и прочие отладки. В работу сервра orion вмешательств не происходит. Перезагрузка проихсодит штатным способом. 

Попов Никита Андреевич 1 год назад

из своего опыта
При перезагрузке могут слететь настройки портов, по которым идет опрос.
Могут измениться настройки портов в контролерах материнки (однажды пришлось заменить ПК сервера, RS232 пропадал периодически через 3 минуты и тут же восстанавливался )
Если к серверу подключены АРМ Монитор при обновлении сервера без обновления ПК мониторов они перестают работать.
 

Евдокимов А.В. 1 год назад

Обновление ПК с ОРИОНОМ не чаше 2 раз год при ТО ПК
Также был случай после обновления сменился IP адрес ПК
 

Евдокимов А.В. 1 год назад

На самом деле важнее понять не почему данные не загрузились, а возможно ли их любым способом скопировать с контроллеров на сервер орион. 

Попов Никита Андреевич 1 год назад

За весь обмен (практически весь, исключение - ПКарт) между компонентами ОрионПро отвечает Облочка shell.exe
Если ей поплохеет - ни чего не взлетит.
Дажен если сам сервер (CSO.exe + SQL-сервер) стартанёт,
Запустится оболочка - shell.exe (очень рекомендую запускать её с экспериментально определенной задержкой через планировщик заданий)
Оболочка запустит ядро опроса (Coreorion.exe),
Ядро опроса определит порты, которые прописаны в БД, соспоставит их с теми портами, которые определила/вспомнила винда (тут узкое место, порт может не сопоставиться, хотя по моей памяти, с таким давно не сталкивались, НО! - было, факт)
И тут ядро начинает ломиться к пультам (приборам, если они подключены напрямую) и вычитывает, что было, пока голова отдыхала... и отправлять всё это в сервер
именно в этот момент оболочка может уйти в себя...
почитайте непременно про опцию рабочего места - "Локальный кэш" в книгах "О системе", Оболочка и АБД 

Заварзин Сергей 1 год назад

Ну т.е., возвращаясь, к моему вопросу - Возможно ли как-то вручную, принудительно скопировать данные с контроллеров в Орион? 

Попов Никита Андреевич 1 год назад

мне такая возможность неизвестна

Заварзин Сергей 1 год назад

Для добавления сообщений на форуме вам необходимо зарегистрироваться и указать мобильный телефон в своем профиле (зачем?)

2 ответа

После включенния сервера, скриптом, запускаются все зависимости.

а нельзя пояснить эту фразу?
смущает ежедневная процедура, перезагрузки винды.
1 раз в месяц или полгода - норм
1 раз в неделю, если уж совсем делать нечего, но еженощно... обоснуйте, пожалуйста

1 год назад

avatar
Обновление политик, установка обновлений и прочие процедуры.
Если мы будем перезагружать раз в месяц и эта проблема всёравно произойдёт, то, в этом случае, решение как-то будет отличаться, если оно есть? 
Ну предположим, что мы перестанем перезагружать сервер, то всё равно остаётся вопрос - Как, допустим, загрузить на сервер данные о проходах за 27.04.2023? 

Попов Никита Андреевич 1 год назад

информационная безопасность, да, понимаю, она такая...
уберите сервак из корпоративной сети и не мучайте бюджет зарплатой этих ценных кадров
Процесс вычитывания событий из контроллеров доступа процесс не быстрый.
В момент старта ядра опроса его окончание можно проанализировать визуально по значению поля "Обмен" объекта порт - пока значение 1/1 идёт вычитка событий, как только увеличится, то всё, норм.
События вычитываются без подтверждения сервером о его получении и сохранении в логах
За 10 лет было всего пара случаев, когда умирала оболочка, а ядро опроса было без локального кэша и тупао теряла события отправляя их в зависшую оболочку.
Просто перезапустите оболочку и ядро опроса.
Запросить событие за конкретную дату не получится - контроллеры (и все остальные приборы) хранят их до тех пор пока его не вычитают "сверху" либо пультом либо компьютером (ядром опроса) по 485-му интерфейсу либо до тех пор, пока стэк памяти событий не переполнится и его не затрут более свежим фифа (FIFO).
то есть теоретически, при максимальной нагрузке (прибор с тактом событий 0,125сек) переполнится за пару часов - если сервак будет перезружаться 1ч8минут, но фсё пропало... но такого не может быть 
:)

Заварзин Сергей 1 год назад

Я Вас понял. Спасибо большое! Жаль конечно. 

Попов Никита Андреевич 1 год назад

По идее перезапуск ядра опраса должен инициировать выгрузку событий. Как я понимаю там происходит примерно так: стартует ядро; у приборов ядром запращивается последнее событие, которое отмечено не считанным; далее происходит обмен событиями (считывание) от последнего не считанного до конца буфера прибора(ов). Т.е. если по какой-то причине ядро не выгрузило события, то рестарт ядра должен исправить ситуацию. Однако, если после последнего сеанса обмена данными между ядром и приборами есть событие помеченное как "считано", то я сильно сомневаюсь, что будут переданы те события, что происходили ранее и которые пока не считаны. Хотя всё может быть совсем не так.

Налетов Константин 1 год назад

В том-то и соль, что речь идёт о данных, которые помечены как "Считано"

Попов Никита Андреевич 1 год назад

Что упало - то пропало!
Ранее в пультах был режим повторной печати журнала событий, т.е. это не штатный режим обмена в протоколе ОрионПро, а нечто иное. Может быть и есть у пультов скрытый режим, но я сильно сомневаюсь в этом.

Налетов Константин 1 год назад

Чисто технически под события в контроллере кольцевой буфер и два указателя, начало и конец событий. При отдаче контроллером событий в Орион сами события вряд ли стираются, меняются только указатели. Есть ли в системе команд способ перечитать буфер заново - не знаю. Сомневаюсь. Зачем? Не нужная команда. А вот считать память через i2c на контроллере - уже реальнее.

Андрей, Ростов на Дону 1 год назад

Для добавления сообщений на форуме вам необходимо зарегистрироваться и указать мобильный телефон в своем профиле (зачем?)

А разве оболочка при считывании событий не удаляет их сразу из контроллера? 

т.е. на самих приборах (Контроллерах) данные о проходах есть, а в орион сервере их нет.

Как это узнали?

1 год назад

avatar
Оболочка не работает с приборами, это делает ядро опроса, она вычитывает и удаляет события из локального кэша ядра (кажется это база данных в SQLite).
как Ядро опроса работает с событиями в самом приборе, не знаю. Могу предположить, что прибор просто изменяет признак "прочитан" в стэке FIFO с тех событий, которые он отправил на запрос ядра опроса типа "ну, что у тебя новенького?" (прибор сам управляет своей памятью).
 

Заварзин Сергей 11 месяцев 29 дней назад

ОписАлся. Хотел написать ядро опроса.

Рыбкин Евгений Сергеевич 11 месяцев 29 дней назад

Для добавления сообщений на форуме вам необходимо зарегистрироваться и указать мобильный телефон в своем профиле (зачем?)

Добавить ответ

Для добавления сообщений на форуме вам необходимо зарегистрироваться и указать мобильный телефон в своем профиле (зачем?)

ПОКАЗАН

1072 раза

ЗАДАН

1 год назад

По каждому вопросу/ответу можно добавлять комментарии. Комментарии предназначены для уточнения вопроса/ответа.