2016-08-08 1 views
1

У меня есть git-сервер и планируется его резервное копирование для ситуации бедствия. Я пробовал его и получил несколько баллов, чтобы сделать это:Резервное копирование git-сервера для этапа управления бедствиями

  1. git clone repos и нажимать на новый сервер, если требуется, могут также использоваться локально.
  2. Создайте комплект git.

У меня есть друг, у которого есть аргумент, что мы должны скопировать всю файловую структуру сервера git-местоположения (содержащую всю файловую структуру приложения-сервера git) и всякий раз, когда это необходимо, настроить его на сервере.

Я хочу помочь вам. Как я могу продолжить, какой способ лучше?

+0

У вас также может быть файловая система raid1 или распределенная файловая система на нескольких компьютерах с каждым узлом, имеющим файловую систему raid1. – jibe

+0

выглядит слишком сложно, вы можете уточнить подробности? – chandil03

+0

Вам нужно сначала решить, какие резервные копии вам интересны. Вы упомянули, в частности, о аварийном восстановлении, которое обычно включает проблемы, связанные с пожарами, землетрясениями и т. Д., Которые могут повлиять на любые материалы на месте; а также опасения по поводу техногенных катастроф, таких как случайный или преднамеренный ущерб данным, т. е. аппаратное обеспечение в порядке, но нарушитель или сотрудник берсерка разрушает вещи. Затем вы можете перейти отсюда. Решите, интересуетесь ли вы только данными о клонированных репозиториях, а также о том, что вы также беспокоитесь о вспомогательных данных: журналы, перехваты и т. Д. – torek

ответ

2

Если вы исходите из точки зрения sysadmin, лучше всего предлагает ваш друг. Только резервная копия файловой системы, включая все разрешения и т. Д., Гарантирует, что восстановление после сбоя будет на 100% возможным, быстрым и может быть легко выполнено вашей обычной командой sysadmin, чья задача состоит в том, чтобы в первую очередь беспокоиться о резервном восстановлении.

(. Кроме того, убедитесь, чтобы отключить входящие толчки во время резервного копирования работает, конечно же, как обычно)

Да, вы можете также просто git clone, но не получит всю окружающую среду; т. е. если вы используете аутентификацию ssh (~/.ssh/authorized_keys), вам нужно получить это тоже (тем более, если вы используете другие серверы git, такие как GitLab или что-то еще). git-крючки автоматически не выбираются с помощью git clone и т. д., может быть и больше.

EDIT: в резервную копию файловой системы должно быть включено все, что удаленно (sic), связанное с git. I.e., полный /home/git (или любой другой пользовательский git работает под), /var/git_repos (или где бы вы не хранили ваши репозитории) и так далее. Достаточно, если вы настроите чисто установленную машину, вы можете вернуть все и запустить, восстановив эти каталоги.

0

git is is distributed version control system.

Это означает, что каждый раз кто-то клонов хранилище, он имеет всю историю, клонированную им.

Клонировать и вытаскивать ваши репозитории git часто, и вы не будете иметь никаких проблем при восстановлении в случае сбоя.

+0

Вы правы, но в организации должна быть стратегия для решения любых ситуаций. Я поднимаю тот же аргумент к моему лидерству, но он придерживается того же вопроса, который, к сожалению, действителен. – chandil03

+0

Это не на 100% правильное: система управления распределенной версией означает, что у кого-то есть свой * собственный клон, но это не гарантирует, что у каждого будет * идентичное * состояние. Важно регулярно резервировать «refs» сервера на случай, если кто-то/что-то сумеет его испортить. – JBert

+0

@JBert Что вы хотели бы предложить для резервного копирования здесь, резервное копирование отдельных репозиториев или файлов структуры каталога git-сервера (с помощью перехватчиков и т. Д.)? Моя цель - иметь резервную копию, даже если все компьютеры в любой организации недоступны (например, сжигаются, повреждены и т. Д.). (Я знаю, что пример болен, поскольку я все еще смеюсь над ним: D, но его действительная точка, я думаю). – chandil03

Смежные вопросы