JIRA Cloud의 데이터를 백업해서 다른 JIRA Cloud 에서 복원(restore) 하는 절차에 대해서 설명합니다.


Backup 하기

  1. admin 으로 로그인합니다.
  2. 설정  → 시스템  → "백업 관리자" 로 들어갑니다.
  3. "클라우드 백업 생성"  을 클릭합니다.
  4. export가 끝나면 "Cloud 백업 다운로드" 버튼이 활성화됩니다. 클릭하면jira-export.zip 이라는 파일이 다운로드됩니다.


복원하기

다운로드 받은 백업 데이타를 압축해제하면 다음과 같은 폴더 구조를 갖고 있습니다.

$ tree -L 2

.
├── activeobjects.xml
├── data
│   ├── attachments
│   └── avatars
├── entities.xml
└── logos
    ├── jira-logo-original.png
    └── jira-logo-scaled.png
BASH

activeobjects.xml 와  entities.xml 는 JIRA 프로젝트 데이터이고 data 폴더는 첨부 파일과 아바타 자료가 보관되어 있습니다.


첨부 파일 양이 많다면 복원시 많은 시간이 걸리고 timeout 에러로 인해 복원이 실패할 수 있으므로 데이터와 첨부 파일을 나눠서 복원해야 합니다.

데이타 복원

먼저 data file 만 남도록 백업 파일을 변경해야 합니다. 다운로드 받은 백업 파일을 복제해 둔 후에 원본에서 데이타 파일(activeobjects.xml, entities.xml)만 남기고 모든 파일을 삭제합니다.


JIRA 관리자로 로그인한 후에 설정  → 시스템  → "시스템 복원" 에 들어갑니다.


import type 에서 "데이타 가져오기" 를 선택한 후에 위에서 데이타 파일(activeobjects.xml, entities.xml) 만 있는 zip 파일을 선택합니다.


데이터를 덮어 쓴다는 경고창이 뜨는데 확인하고 Run import  를 클릭해 줍니다.


가져오기를 실행중이라는 창이 뜨고 import 가 진행됩니다. 

완료되면 아래와 창은 창이 뜹니다.


JIRA 프로젝트와 이슈가 제대로 복원되었는지 확인한 후에 첨부 파일과 아바타 데이터를 복원하기 위해 "import media" 를 클릭합니다.


미디어 파일 복원

media-only 라는 폴더를 생성한 후에 다운받은 백업 파일내의 data 폴더를 media-only 아래로 옮깁니다. 


즉 트리 구조로 보면 아래와 같이 구성되어야 합니다.


$ tree -d

media-only
└── data
    ├── attachments
    │   ├── BUG
    │   │   └── 10000
    │   │       └── BUG-2
    │   └── CK1
    │       └── 10000
    │           └── CK1-5
    └── avatars 
BASH

만약 첨부 파일 용량이 5GB 가 넘는 다면 2 - 5G 단위로 media-only-1,  media-only-2,  media-only-3 등 여러 개의 폴더로 나누어 둡니다.


첨부 파일이 들어가 있는 media-only 폴더를 압축한 후에 설정  → 시스템  → "시스템 복원" 에 들어가서 import type 에서 "미디어 가져오기" 를 선택한 후에 압축한 media-only.zip 파일을 선택합니다.


업로드가 끝나면 확인 창이 뜨는데 "Run import" 를 선택합니다.

Import 가 끝나면 완료 확인창이 뜹니다. import 할 파일이 더 있다면 "Import more" 를 선택하고 아니면 Done 을 선택합니다.



같이 보기

Ref