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

Зеркальное отображение svn репозитория

У меня есть репозиторий svn, и я хотел бы, чтобы он дублировался на нескольких машинах для обеспечения доступности. К настоящему времени, когда мой vps выходит из строя, я не могу подключиться к репозиторию, и это очень раздражает. Самое простое (и обширное) решение - установить две одинаковые машины и заставить их работать как клоны. Хотелось бы узнать, есть ли альтернатива (с участием 2 машин). В идеале у меня было бы два vps в разных дата-центрах, поэтому, если один выйдет из строя, я могу положиться на другой. Спасибо.

Мне зеркало нужно как для чтения, так и для записи не только для чтения.

Svn Repos основаны на berkley-db

Вы можете подумать хотя бы о некоторые другие решения ваших проблем (не заданный вопрос)

  1. По запросу, RO SVN-зеркало (1 экземпляр) вы можете построить с svnsync (Документ ASF для этого)
  2. Вы можете перестроить любое количество зеркал (возможно, даже RW) с помощью svnadmin (dump | load) | svnrdump - с большим количеством ручной работы
  3. Если ваш репозиторий - это FSFS, вы можете использовать любой инструмент для создания удаленной копии FS-дерева, которое формирует репозиторий (rsync - хороший выбор, возможно scp)
  4. Вы можете использовать локально SCM (DVCS), у которых есть SVN-мост и работать с локальным репозиторием, когда SVN отключен, и синхронизировать, когда он становится онлайн (Git + git-svn или Mercurial + hgsubversion)

Подробнее о решении 3

Из FS (FileSystem) -view SVN-репозиторий - это просто поддерево в файловой системе. Если вы создадите и запустите новый SVN-сервер в любом дополнительном месте (используя svnserve --root или Apache с SVNParentPath - не имеет значения) любые данные, которые появились внутри репо-корня и смотрят на структуру как на репозиторий, будут служить репозиторием. Вам нужно только найти способ передачи файлов из одного места в другое.

Вы можете проверить решение WANdisco Subversion, оно выполняет такое клонирование репозитория Subversion для целей HA / DR.