2016-08-08 2 views
1

나는 git 서버를 가지고 있으며 재난 상황을 대비하여 백업하려고합니다. 내가 봤 거든 그렇게 몇 가지 포인트가 다음과 같습니다 :재난 관리 단계에서 git 서버 백업

  1. git clone repos 및 필요할 때마다 새 서버를 밀어 로컬로 또한 사용할 수 있습니다.
  2. git 번들을 만듭니다.

나는 우리가 자식 (자식 서버 응용 프로그램의 모든 파일 구조를 포함) 위치와 다시 서버에 필요한 때마다 구성을의 서버의 전체 파일 구조를 복사해야 인수를 데의 친구가 있습니다.

나는 당신의 도움을 원합니다. 계속 진행하려면 어떤 방법이 가장 좋습니까?

+0

각 노드에 raid1 하위 파일 시스템이있는 여러 컴퓨터에 raid1 파일 시스템 또는 분산 파일 시스템을 사용할 수도 있습니다. – jibe

+0

은 너무 복잡해 보입니다. 더 자세히 설명해 주실 수 있습니까? – chandil03

+0

먼저 어떤 종류의 백업이 중요한지 결정해야합니다. 귀하는 특히 재해 복구에 대해 언급했는데 이는 일반적으로 현장 및 모든 재료에 영향을 줄 수있는 화재, 지진 등에 대한 우려를 포함합니다. 사고 또는 고의적 인 데이터 손상과 같은 사람이 만든 재해에 대한 우려도 있습니다. 즉, 하드웨어는 괜찮지 만 외부 공격자 또는 광포 한 직원이 일을 망칩니다. 그런 다음 여기에서 계속할 수 있습니다. 클론 가능 저장소 데이터에만 관심이 있는지 또는 보조 데이터도 염려하는지 여부를 결정하십시오. 로그, 후크 등 – torek

답변

2

당신이 sysadmin 관점에서 오는 경우, 친구가 제안하는 것이 가장 좋습니다. 모든 권한 등을 포함하는 파일 시스템 백업만으로는 정전 후 100 %의 복구가 가능하고 일반 시스템 관리자 팀이 쉽게 수행 할 수 있습니다.이 작업은 처음에 백업 & 복구에 대해 걱정할 작업입니다.

(. 또한 백업은 물론, 실행되는 동안 평소와 같이 들어오는 푸시를 사용하지 않도록해야합니다)

예, 당신은 단순히 git clone도 할 수 있지만, 전체 환경을받지 않습니다; 즉, ssh 인증 (~/.ssh/authorized_keys)을 사용하고 있다면, GitLab 등의 다른 git 서버를 사용하는 경우에도 그렇게해야합니다. git 후크는 git clone 등으로 자동으로 가져 오지 않습니다.

EDIT : 파일 시스템 백업에는 물론 원격으로 (gic과 관련된) 어떤 것도 포함해야합니다. 즉, /home/git (또는 현재 실행중인 사용자), /var/git_repos (또는 저장소를 유지하고있는 곳) 등등. 당신이 깔끔하게 설치된 머신을 설치한다면, 그 디렉토리들을 복구함으로써 모든 것을 되찾고 실행할 수 있습니다.

0

자식은 distributed version control system입니다.

누군가가 클론 저장소마다 그는 그와 함께 복제 된 모든 기록을 가지고 있다는 것을 의미합니다.

자주 복제하고 git 리포지토리를 당겨서 충돌이 발생해도 복원에 아무런 문제가 없습니다.

+0

당신은 옳았 습니다만, 어떤 종류의 상황에도 대처할 전략이 있어야합니다. 나는 내 주장에 대해 같은 주장을 제기하지만 그는 불행히도 유효한 지적 인 같은 질문에 충실합니다. – chandil03

+0

이것은 100 % 정확하지 않습니다. 분산 버전 제어 시스템은 모든 사람이 * 자신의 * 복제본을 가지고 있음을 의미하지만 모든 사람이 * 동일한 * 상태를 가짐을 보장하지는 않습니다. 누군가/어떤 것이 그것을 변조 할 수있는 경우에 대비하여 서버의'refs '를 정기적으로 백업하는 것이 중요합니다. – JBert

+0

@JBert 여기에 백업을 제안 하시겠습니까? 개별 repos 또는 git server 디렉토리 구조 파일 (후크 등)을 백업 하시겠습니까? 내 목표는 어떤 조직의 모든 컴퓨터가 다운되었을 때 (예 : 불에 태우거나 부서지기 등)에도 백업을하는 것입니다. (예를 들어 내가보기에 여전히 웃음을 짓고있는 것처럼 병이 들었다. D,하지만 그 점은 내가 생각하기에). – chandil03