Собственно когда у меня после апа вчера опять слетел на Альфе сервер - задолбался с выключением и включением приборов и решил озаботиться резервированием...
Исходные данные:
Сервер - машинка довольно мощная параметры не помню, но несколько ядер и куча памяти и диска. В связи с этим на ней висит сервер kvm (виртуальных машин).
Сервер мд-основной. Kvm машина.
Сервер Москита. Kvm отдельная от мд. Тупо чтобы не падали совсем уж вместе.
Сервер ZoneMindera - kvm.
Сервер Астериск (FreePBX) - kvm.
Сервер МД-резерв - малинка. На отдельном упсе вместе с Сяоми-бриджем. Как показала практика - может работать часами.
В сети все в основном на mqtt сидят. Исключение будет для аварийной системы.
Соответственно логика:
На малине есть режим "Резервирование" - включение будет по пропаданию пинга с основного сервера.
Выключение - когда основа начала пинговать нас по новой.
В методах Switch и TurnOn и Off простых устройств - проверка этого режима. Если мы в режиме резервирования - проходят команды на пу. Если нет - команды отрабатывает 'в уме'. Благодаря Сяоми - данные приходят на все сервера, а благодаря mqtt - управляем с любого.
Режим "Авария"
Резервный сервер МД
Модератор: immortal
-
- Сообщения: 186
- Зарегистрирован: Вс май 28, 2017 9:24 am
- Благодарил (а): 8 раз
- Поблагодарили: 22 раза
Резервный сервер МД
- За это сообщение автора TransMatrix поблагодарил:
- tarasfrompir (Вт окт 16, 2018 6:46 am)
- Рейтинг: 1.16%
-
- Сообщения: 172
- Зарегистрирован: Пт апр 06, 2018 9:40 am
- Благодарил (а): 93 раза
- Поблагодарили: 93 раза
Re: Резервный сервер МД
Я другой вариант вижу для твоего решения. 1 проблема твоего решения это физический сервер для kvm, если он ляжет то ты на резерве остаешься без mqtt, а у тебя описан он как основной протокол связи.
Предлагаю поднять сервер mqtt на основном kvm вместе с мажором, и на малине сделать так же. При падении основного сервера одной командой из мажора меняется ip на резервном сервере на ip основного и все работает дальше без сбоев. Астерикс поднять можно и на малине (конечно если не на реальном проводе работает, но можно к малине и модем подцепить gsm для звонков ), а вот зоне может и не потянуть, но там скорее всего и аппаратка не переключится если камеры не ip.
Переход на основной сервер только в ручном режиме ибо фиг его знает почему он завыделывался. Переход без проблем меняешь ip обратно командой на резервном и основной возвращается к работе.
Синхронизация баз и файлов не проблема сейчас.
Предлагаю поднять сервер mqtt на основном kvm вместе с мажором, и на малине сделать так же. При падении основного сервера одной командой из мажора меняется ip на резервном сервере на ip основного и все работает дальше без сбоев. Астерикс поднять можно и на малине (конечно если не на реальном проводе работает, но можно к малине и модем подцепить gsm для звонков ), а вот зоне может и не потянуть, но там скорее всего и аппаратка не переключится если камеры не ip.
Переход на основной сервер только в ручном режиме ибо фиг его знает почему он завыделывался. Переход без проблем меняешь ip обратно командой на резервном и основной возвращается к работе.
Синхронизация баз и файлов не проблема сейчас.
-
- Сообщения: 186
- Зарегистрирован: Вс май 28, 2017 9:24 am
- Благодарил (а): 8 раз
- Поблагодарили: 22 раза
Re: Резервный сервер МД
Основная цель выноса всего в виртуалки - тупо чтобы оно не влияло друг на друга. Если рухнул мажор - рухнул только он. Если при установке на Убунту у Зонера проблемы - поставим под Дебиан. И т.д.newz20
Реальные интерфейсы под kvm спокойно прокидываются и ЗонеМайндер спокойно видит две юсб камеры сервера. При этом "жирность" сервака реально спасает.
Малиновый дублер - ему не столь и нужно полностью заменять основу. Это именно дублер на время кризисов и отказов. Он не хранит инфу от датчиков, он может не управлять особо освещением: он именно аварийный.
Нет света, полетел основной сервак, затопило проводку - спасатели спешат на помощь.
Ну и фишечки класса "включить если что симулятор присутствия".
-
- Сообщения: 172
- Зарегистрирован: Пт апр 06, 2018 9:40 am
- Благодарил (а): 93 раза
- Поблагодарили: 93 раза
Re: Резервный сервер МД
Ну тут видишь у каждого свои тараканы и каждый их кормит по-своему. Я описал еще один вариант резервирования.
- Bagir
- Сообщения: 1613
- Зарегистрирован: Вт сен 17, 2013 6:46 pm
- Откуда: Ярославская область город Углич
- Благодарил (а): 212 раз
- Поблагодарили: 375 раз
Re: Резервный сервер МД
Как бы там ни было, но если серьезно опираться на свой умный дом, все дороги придут в эту тему. Рано или поздно, всё наше детище упадет, и резервные копии тоже не панацея. Железо не вечно, и ремонт может занять какое то время. На момент перехода с семерки на десятку, я перемещал сервер на ноутбук, и он прекрасно там работал.
Путей решения множество, и конечно же всё зависит от поставленной задачи. Пока что я вижу такой вариант:
Основные цели, которые я преследую:
Включить резервный сервер самому перед обновлением системы, либо перед написанием сложного кода. Он должен всё забекапить, и выключится сам.
Бекапы по времени, ну мало ли что, да и терять историю данных не хочется.
Резервный почти всегда выключен, что уменьшает риски его смерти например во время грозы.
Резервный проводит диагностику основного
Резервный сам подменит основной при аварии.
Возврат обратно действительно руками. Не с проста же...
Путей решения множество, и конечно же всё зависит от поставленной задачи. Пока что я вижу такой вариант:
- Резервный сервер включается по времени или "кнопочкой перед необходимостью". Ещё наверное каким либо сторожем при отказе основного.
При включении проверяет работу основного сервера
Если всё в полном порядке, то забирает с основного копию файлов и базы данных
Потом выключается.
Если основной в сети (пингуется ip), но по результатам проверки что то не нравится, то резервный сервер шлет нам сообщение что требуется участие.
Если основной вообще мертв, то резервный запускает Апачи, МД, берет его ip адрес и становится основным.
Основные цели, которые я преследую:
Включить резервный сервер самому перед обновлением системы, либо перед написанием сложного кода. Он должен всё забекапить, и выключится сам.
Бекапы по времени, ну мало ли что, да и терять историю данных не хочется.
Резервный почти всегда выключен, что уменьшает риски его смерти например во время грозы.
Резервный проводит диагностику основного
Резервный сам подменит основной при аварии.
Возврат обратно действительно руками. Не с проста же...