Назад | Перейти на главную страницу

Как вы синхронизируете наборы ipset на двух машинах?

Я хотел бы реплицировать наборы IPSet с одной машины (server01) на другую машину (server02), используя rsync или btsync или что-то подобное. Это возможно? Если да, то как мне это сделать?

Это мера резервирования на случай, если server01 недоступен.

Если бы вы могли записать его в файл на server01 с помощью ipset save, lsyncd позволит вам обновлять файл на server02 всякий раз, когда файл server01 изменяется (это похоже на выполнение rsync всякий раз, когда что-либо в указанном каталоге изменяется или обновляется), и inotify может запустить сценарий с ipset restore для обновления ipset server02, когда этот файл изменяется lsyncd, доставит вам большую часть пути.

Единственный элемент, который все еще отсутствует, - это что-то, что можно было бы сохранить при каждом изменении ваших IPSET на server01, если вы ищете эту функциональность. Ну, и ответ примерно 5 лет назад.

Ты можешь использовать ipset save и ipset restore чтобы скопировать текущее состояние ваших наборов IP.

Например (запустить от имени root на server01):

`ipset save | ssh server02 "ipset restore"`

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