Если правильно понял вашу задачу и не ошибаюсь в том что скажу, то вам вроде достаточно на secondary-сервере короткого периода регистрации клиентов (defaultexpiry), по истечении которого те снова будут вынуждены (где-то) регаться.
Если ошибаюсь, и при этом клтенты будут регаться снова на secondary, сам он, проверяя периодически доступность primary-сервера, может делать редирект на основной (когда тот будет восстановлен) средствами самого SIP-протокола, без использования сторонних сервисов.
Проверять доступность основного secondary-серв может так-же по SIP - проверяя именно доступность VoIP, без прочих сервисов...
единственное до чего додумался - это держать оба поднятыми и соединить их по iax и правила перезвона настроить соответственно
tim77 (Sep 9 '13)editМне чисто для себя, а что за клиенты используете?
godlike (Sep 9 '13)editда разные железяки - telco 211, draytek 2110, dlink-и еще какие то
tim77 (Sep 9 '13)editDNS не катит - НУ будет 2 IP и что? DNS ресолвит адреса рандомно. То есть в 50% случаев он выдаст не рабочий IP
tim77 (Sep 9 '13)editВиртуальный IP тоже не катит. Сервера стоят в совершенно разных сегментах интернета
tim77 (Sep 9 '13)editне профи но первое что приходит на ум - Heartbeat (Linux-HA) через OpenVPN плюс динамический DNS (например связка Bind+Mysql) с минимальным TTL далее меняем IPшник для A record или SRV когда надо. пиров регим по домену. Это при учете что DNS сервера не лягут. HA умеет мониторить в т.ч. SIP и запускать скрипт на slave когда master лежит автоматом и наоборот. при этом придется накидать скрипт который править записи DNS и поднимает Астер на слейве. Еще на телефонах желательно ставить минимальную регистрацию (пиры реплицируются в базах - у меня это RealTime PgSQL + Slony). возможная проблема - рассинхронизация баз - базу бэкапного SIP сервера надо делать рид полюбому или поднимать master-master что тот еще гимморой.. синхронизировать мастер-мастер можно теоретические отдельные таблицы - например логи, если база умеет а остальные ридонли. у меня был самый актуальный вопрос синхронизации лицевого счета, который к сожалению нельзя сделать рид онли ( это если конечно пользуется онлайн биллинг).
octopas (Sep 9 '13)editОбъясняю, почему ничего из того, что вы предлагаете не подходит. НА не подходит, т.к. разные сегменты. Вынести все на внешний VPS тоже не вариант, т.к. сервак юзают еще и офиные клиенты и они должны иметь возможность внутренней связи без интернета. Динамическая DNS запись через easydns, dyndns и прочие сервисы тоже не канает ибо она рассчитана на отказ всего сервака, а бывает что сервак работает, а виснет asterisk например. А городить OpenVPN и сверху него HA это совсем уж навороты. Гораздо проще в моем случае поднять второй рабочий сервак и надо его линковать с первым и правилами уже разруливать если доступен, то туда, если не доступен, то сюда итд. С синхронизацией баз вопрос не стоит, т.к. критична только таблица с SIP аккаунтами, а она довольно статична и меняется редко
tim77 (Sep 10 '13)editя говорил про ситуацию когда пользуем именно свои DNS сервера и в их конфигурации (RealTime) можно править скриптом в случае отказа Астера, что в сочетании с TTL=0 дает то что вам нужно... или в офисе нельзя службу DNS поднять? думаю bind настроить несложно на работу с базой...
octopas (Sep 10 '13)editПроблема в том, как мониторить сам астериск что он не упал?
tim77 (Sep 11 '13)editsipsak в скриптах
octopas (Sep 11 '13)editVPS: да просто всё решается - в офисе 2 линка на инет от разных провов и надежный роутер. Не мазохируйте)
Zavr2008 (Sep 11 '13)edit