GitHub Enterprise Manual/구축

GitHub Enterprise 백업 유틸 설치 및 설정

GitHubKorea 2019. 5. 2. 14:22

GHE 백업 유틸 설치 및 설정 메뉴얼

 

1.  유틸 다운로드 - https://github.com/github/backup-utils/releases : github-backup-utils-v2.16.1.tar.gz

-       참고로 2개버전 이내의 것 까지만 이용이 가능(2.162.13에서 사용 불가, 2.14에서 사용 가능)

 

2.     파일 경로 이동 후 $ tar -xzvf github-backup-utils-v2.16.1.tar.gz

 

3.     backup.config-example 파일을 backup.config  copy하고 에디터로 오픈

 

4.     GHE_HOSTNAME primary GitHub Enterprise 인스턴스의 hostname 또는 IP address로 설정

 

5.     GHE_DATA_DIR 값을 백업 스냅샷이 저장되기 원하는 디렉토리로 위치로 설정

 

 

6.     필수 프로그램 설치 (git, rsync, cron)

-       git 업그레이드

-       rsync 설치 후 Enable 값을 false à true 로 변경해줘야 백업 가능

-       sudo apt-get install -y cron

-        

7.     primary 인스턴스의 설정페이지(https://HOSTNAME/setup/settings)를 열고, 백업 호스트의 SSH key값을 authorized SSH keys 리스트에 추가. (For more information, see Accessing the administrative shell (SSH))

 

 

8.     아래 명령어를 실행하여 GitHub Enterprise Server 인스턴스와의 SSH connectivity를 검증 : ghe-host-check

위와 같은 에러 발생 시, 호스트 파일에 호스트 등록 필요(vi /etc/hosts)

 

9. 초기 전체 백업을 생성하기 위해 아래 명령어 실행 : ghe-backup

위와 같은 에러 발생 시, 문제가 발생한 것이 아니라 백업할 storage가 없다는 뜻이므로 Issue file attachments, release attachments, profile pictures, Git LFS files 중 하나를 추가하고 백업하면 됩니다.

 

10.   백업 스케쥴 설정

For more information, see the "Scheduling backups" section of the GitHub Enterprise Backup Utilities README.

9-1. cron 설정

-       crontab -e

-       1 /bin/nano 선택 후 스크립트 작성

-       분 시간 일 월 요일 커맨드

-       5 * * * * /home/…/ghe-backup //매시간 5분마다 실행

-       0 18 * * 0 /home/…/ghe-backup //매주 일요일 18시에 실행

-       0 18 * * 0,4 /home/…/ghe-backup //매주 일요일,목요일 18시에 실행

 

 

11.   백업 데이터 복원 - 백업 호스트의 SSH 키를 대상 GitHub Enterprise 어플라이언스에 인증된 SSH 키로 추가 필요

ghe-restore -c 복원할 인스턴스의 IP -s 복원할 버전의 백업 데이터 폴더명

 

 

 

단군소프트