Резервирование серверов

Стартовая страница Форумы Новые идеи Резервирование серверов

Помечено: 

Просмотр 15 сообщений - с 16 по 30 (из 33 всего)
  • Автор
    Сообщения
  • #23926
    Romiros
    Участник

    Вообще, непонятно как это будет работать. Типа два сервера параллельно опрашивают приборы? А как тогда быть с событиями и аварийными уставками? Квитирование по два раза? Да и трафик удваивается во внешние сети.

    #23927
    manjey73
    Участник

    Ну этот не столько резервирование, сколько возможность применения одной из scada в качестве шлюза в какую-то чужеродную.
    Вариант, когда одна опрашивает и передаёт на другую и в случае останова начинает работать другая тоже приемлимый, только что делать с накопленными данными при восстановлении первой?

    #23928
    a80808
    Участник

    Синхронизировать. Идеально — через отдельный канал. Вариант отказустойчивого кластера WinServer 2003. Там требовался (очень желательно!) отдельный сетевой интерфейс. Иначе может не успеть синхронизироваться.

    #23948
    Mikhail
    Модератор

    Вот убрать какой-то настройкой опрос до планового после старта?

    Его надо просто убрать без дополнительной настройки, по-моему.
    Если для чего-то нужен внеплановый опрос при старте линии, напишите, зачем.
    Имеется ввиду, если задано время и/или период опроса.

    А как тогда быть с событиями и аварийными уставками? Квитирование по два раза?

    Важный момент про квитирование. Квитировать один раз на оба сервера возможно только если идентификаторы событий совпадают. Если Коммуникатор отправляет данные на 2 сервера, то на каждом сервере будет свой ID одного и того же события. Значит синхронизация должна выполняться не Коммуникатором, а Быстрым шлюзом, который отправляет готовое событие со своим ID.
    Дополнил файл.

    что делать с накопленными данными при восстановлении первой?

    Забрать по команде оператора. Автоматический алгоритм, чтобы передать данные с Сервера 2 на Сервер 1 после восстановления пока не очень понятен. Какой-то сложный модуль нужен, который бы учитывал «рваные» промежутки времени, за которые надо передать данные.

    • Этот ответ был изменен 1 год, 9 месяцев назад от Mikhail.
    #23950
    manjey73
    Участник

    Михаил, я не знаю о каком внеплановом вы говорите, может мы о разных.

    Предположим я ставлю опрос каждые 5 минут (специально выбрал больший период для понимания). А сейчас по часам скажет 16:03 минуты и я перезапускаю линию связи.
    Так вот сейчас происходит опрос при запуске и когда часы дотикают до 16:05 произойдет очередной опрос, потом в 16:10 и так далее каждые 5 минут. Разве сейчас не так ?

    Так вот в случае двух опрашивающих серверов вот этот опрос при старте линии надо отключить, так как он может совпасть с периодическим опросом другого сервера и внести коллизию…

    Чем меньше времени в периоде, тем чаще опросы и в случае перезапуска линии это может мешать.

    • Этот ответ был изменен 1 год, 9 месяцев назад от manjey73.
    #23952
    Mikhail
    Модератор

    Я про то же самое, вроде. Считаю, что нужно исключить опрос в 16:03. Верно?

    #23953
    manjey73
    Участник

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

    #23954
    Romiros
    Участник

    Мне кажется, если делать резервирование, то службы второго экземпляра RapidScada должны быть остановлены(server, comm, web). Нужна отдельная служба синхронизации данных. В пятой версии был способ доступа к данным без сервера. Ну и в шестой он тоже есть. Так вот эта служба должна мониторить какой из серверов активен и сливать с него данные в резервный. У нас другая scada-система работает похожим способом.

    #23955
    Romiros
    Участник

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

    #23956
    Mikhail
    Модератор

    в настройках линии исключить опрос при старте, начинать с того времени, которое совпадает с периодом

    Предлагаю это сделать не в настройках, а по умолчанию.

    #23957
    Mikhail
    Модератор

    Мне кажется, если делать резервирование, то службы второго экземпляра RapidScada должны быть остановлены(server, comm, web)

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

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

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

    Т.к. 3-го сервера, который централизованно управляет синхронизацией, у нас нет (это было бы ещё одно звено, которое может сломаться), то дополнительный серверный модуль может определять пробелы в данных и запрашивать их с другого сервера. Алгоритм работы такого модуля — предмет разработки.

    #23958
    manjey73
    Участник

    Не, не надо по умолчанию отключать, а если у нас период с очень большим промежутком? Час, а то и сутки?
    Это нужно только при одновременной работе двух серверов при малом периоде опроса и только.

    Хотя если между серверами в линиях связи будет какой-то индикатор завершения опроса, чтобы следующий начал опрашивать, то линия может и в цикле выполнять опрос, даже при нескольких приборах на линии, а если на другом сервере перегружаем линию, то она ждёт от первого разрешающей команды.

    • Этот ответ был изменен 1 год, 9 месяцев назад от manjey73.
    #23962
    Romiros
    Участник

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

    Согласен, тем более клиентские браузеры не знают какой из серверов в работе. Всё-равно они должны обращаться к какому-то постоянному серверу, а потом уже переадресовываться.

    #23963
    a80808
    Участник

    Коллеги, вообще то все это сделано уже у компании РТ-Софт. Когда то вначале 200 мы с ними строили на одной из станций систему телемеханики по 603 приказу…
    Там отказоустойчивость была прописана в ТЗ. первый вариант — отказоустойчивый кластер на Windows server 2003. потом я уже отошел от этого (если честно то работал в другой, «конкурирующей» 🙂 структуре.) как раз было сделано два сервера и специальное устройство арбитр) которое регулировало работу серверов (актив/пассив). У нмх же был аппаратный переключатель RS-232 \485 (это пока шел МЭК-101, сейчас МЭК-104, стало неактуально) на активный узел..)

    #23968
    Mikhail
    Модератор

    Это нужно только при одновременной работе двух серверов при малом периоде опроса и только.

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

    Хотя если между серверами в линиях связи будет какой-то индикатор завершения опроса

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

Просмотр 15 сообщений - с 16 по 30 (из 33 всего)
  • Вы должны авторизироваться для ответа в этой теме.