2017-10-04 6 views
0

백업에서 내 젠킨 구성을 복원해야합니다 (AWS 스냅 샷). EC2 인스턴스가 있는데, 다음과 같이 업데이트하면 젠킨스 구성이 손실됩니다. 내 첫 번째 시도는 업데이트 전에 EC2 AMI를 복원하는 것이었지만 여전히 젠킨스 구성이 누락되었습니다.다른 파일 시스템에서 젠킨스 백업 복원

우리는 젠킨스의 야간 AWS 스냅 샷을 가져옵니다. 이것에서 나는 양을 창조하고 EC2 상자에 그것을 거치했다. 나는 그것을 /media/jenkins/에 마운트했고 젠킨스 데이터가 있다는 것을 알았습니다. 그것은 37Gb에서왔다. 인스턴스에 Jenkins를 다시 설치하고 심볼릭 링크를 시도했습니다 /media/jenkins/Too many levels of symbolic links

37GB 인 jenkins_home입니다. jenkins가 실행되는 EC2 인스턴스는 17GB 무료입니다 (40GB Box). 따라서 백업의 모든 데이터가 원래 상자에없는 것으로 가정합니다.

제 질문은 37GB 전체를/var/lib/jenkins /에 넣거나 brute force 접근 방식으로 보이거나 젠킨스를 복원하는 더 합리적인 방법입니다. 여기

내 빈 젠킨스 구성

[10:43][ip-10-0-33-8:/var/lib/jenkins[1]]$ ls -la 
total 8 
drwxr-xr-x 2 root root 4096 Oct 4 12:06 . 
drwxr-xr-x 27 root root 4096 Oct 4 11:04 .. 

하고 백업에

[10:43][ip-10-0-33-8:/media/jenkins[1]]$ ls -la 
total 12 
drwxr-xr-x 3 jenkins jenkins 4096 Oct 4 12:10 . 
drwxr-xr-x 3 root root 4096 Oct 4 10:42 .. 
drwxr-xr-x 40 jenkins jenkins 4096 Sep 29 16:12 jenkins_home 

를 탑재하고 jenkins_home

[10:26][ip-10-0-33-8:/media/jenkins/jenkins_home]$ ls -la 
total 476 
drwxr-xr-x 40 jenkins jenkins 4096 Sep 29 16:12 . 
drwxr-xr-x 3 jenkins jenkins 4096 Oct 4 12:10 .. 
drwxr-xr-x 2 jenkins jenkins 4096 Sep 28 14:35 .apex 
-rw------- 1 jenkins jenkins 2948 Aug 17 10:27 .bash_history 
drwxr-xr-x 3 jenkins jenkins 4096 Feb 9 2017 .bower 
drwxr-xr-x 3 jenkins jenkins 4096 Jan 28 2017 cache 
drwxr-xr-x 6 jenkins jenkins 4096 Jul 11 13:36 .cache 
drwxr-xr-x 9 jenkins jenkins 4096 Jun 21 15:08 caches 
-rw-r--r-- 1 jenkins jenkins 252 Aug 16 16:47 com.chikli.hudson.plugin.naginator.NaginatorPublisher.xml 
-rw-r--r-- 1 jenkins jenkins 120 Jan 29 2017 com.cloudbees.jenkins.GitHubPushTrigger.xml 
-rw-r--r-- 1 jenkins jenkins 337 Aug 16 16:47 com.smartcodeltd.jenkinsci.plugins.buildmonitor.BuildMonitorView.xml 
drwxr-xr-x 6 jenkins jenkins 4096 Aug 17 10:25 .config 
-rw-r--r-- 1 jenkins jenkins 14794 Sep 25 08:43 config.xml 
-rw-r--r-- 1 jenkins jenkins  0 Jan 29 2017 Connection Activity monitoring to slaves.log 
-rw-r--r-- 1 jenkins jenkins 1155 Aug 7 15:29 credentials-configuration.xml 
-rw-r--r-- 1 jenkins jenkins 4288 Jul 26 11:27 credentials.xml 
drwxr-xr-x 3 jenkins jenkins 4096 Jan 28 2017 docs 
-rw-r--r-- 1 jenkins jenkins  0 Jan 29 2017 Download metadata.log 
drwxr-xr-x 258 jenkins jenkins 4096 Jan 28 2017 fingerprints 
drwxr-xr-x 2 jenkins jenkins 4096 Jan 29 2017 .fontconfig 
-rw-r--r-- 1 jenkins jenkins 214 Aug 16 16:47 github-plugin-configuration.xml 
drwxr-xr-x 3 jenkins jenkins 4096 Jan 29 2017 .groovy 
-rw-r--r-- 1 jenkins jenkins 808 Aug 16 16:47 hudson.maven.MavenModuleSet.xml 
-rw-r--r-- 1 jenkins jenkins 159 Sep 25 08:42 hudson.model.UpdateCenter.xml 
-rw-r--r-- 1 jenkins jenkins 288 Aug 16 16:47 hudson.plugins.analysis.core.GlobalSettings.xml 
-rw-r--r-- 1 jenkins jenkins 1521 Aug 16 16:47 hudson.plugins.emailext.ExtendedEmailPublisher.xml 
-rw-r--r-- 1 jenkins jenkins 322 Aug 16 16:47 hudson.plugins.git.GitSCM.xml 
-rw-r--r-- 1 jenkins jenkins 370 May 15 16:04 hudson.plugins.git.GitTool.xml 
-rw-r--r-- 1 jenkins jenkins 688 Aug 16 16:47 hudson.plugins.throttleconcurrents.ThrottleJobProperty.xml 
-rw-r--r-- 1 jenkins jenkins 523 Aug 16 16:47 hudson.scm.CVSSCM.xml 
-rw-r--r-- 1 jenkins jenkins 388 Aug 16 16:47 hudson.scm.SubversionSCM.xml 
-rw-r--r-- 1 jenkins jenkins 145 May 15 16:04 hudson.tasks.Ant.xml 
-rw-r--r-- 1 jenkins jenkins 626 Aug 16 16:47 hudson.tasks.Mailer.xml 
-rw-r--r-- 1 jenkins jenkins 571 May 15 16:04 hudson.tasks.Maven.xml 
-rw-r--r-- 1 jenkins jenkins 76 Aug 16 16:47 hudson.tasks.Shell.xml 
-rw-r--r-- 1 jenkins jenkins 215 Aug 16 16:47 hudson.triggers.SCMTrigger.xml 
-rw------- 1 jenkins jenkins 1680 Jan 29 2017 identity.key.enc 
drwxr-xr-x 3 jenkins jenkins 4096 Jan 29 2017 .java 
drwxr-xr-x 3 jenkins jenkins 4096 Jan 30 2017 .jenkins 
-rw-r--r-- 1 jenkins jenkins 94 Jun 29 16:08 jenkins.CLI.xml 
drwxr-xr-x 2 jenkins jenkins 4096 Jan 28 2017 jenkins.diagnostics.ooom.OutOfOrderBuildMonitor 
-rw-r--r-- 1 jenkins jenkins  6 Jan 29 2017 jenkins.install.InstallUtil.lastExecVersion 
-rw-r--r-- 1 jenkins jenkins  6 Jan 29 2017 jenkins.install.UpgradeWizard.state 
-rw-r--r-- 1 jenkins jenkins 191 Aug 16 16:47 jenkins.metrics.api.MetricsAccessKey.xml 
-rw-r--r-- 1 jenkins jenkins 159 Aug 16 16:47 jenkins.model.ArtifactManagerConfiguration.xml 
-rw-r--r-- 1 jenkins jenkins 138 Jan 29 2017 jenkins.model.DownloadSettings.xml 
-rw-r--r-- 1 jenkins jenkins 236 Aug 16 16:47 jenkins.model.JenkinsLocationConfiguration.xml 
-rw-r--r-- 1 jenkins jenkins 247 May 15 16:04 jenkins.mvn.GlobalMavenConfig.xml 
-rw-r--r-- 1 jenkins jenkins 457 May 15 16:04 jenkins.plugins.shiningpanda.tools.PythonInstallation.xml 
-rw-r--r-- 1 jenkins jenkins 401 Aug 16 16:47 jenkins.plugins.slack.SlackNotifier.xml 
-rw-r--r-- 1 jenkins jenkins 310 Aug 16 16:47 jenkins.plugins.slack.webhook.GlobalConfig.xml 
-rw-r--r-- 1 jenkins jenkins 169 Jan 29 2017 jenkins.security.QueueItemAuthenticatorConfiguration.xml 
drwxr-xr-x 87 jenkins jenkins 4096 Sep 14 11:52 jobs 
drwxr-xr-x 3 jenkins jenkins 4096 Jan 31 2017 .local 
drwxr-xr-x 5 jenkins jenkins 4096 Jan 28 2017 logs 
drwxr-xr-x 3 jenkins jenkins 4096 Jan 30 2017 .m2 
drwxr-xr-x 5 jenkins jenkins 4096 Jul 14 14:31 .node-gyp 
-rw-r--r-- 1 jenkins jenkins 911 Sep 25 08:42 nodeMonitors.xml 
drwxr-xr-x 5 jenkins jenkins 4096 Sep 30 07:49 nodes 
drwxr-xr-x 938 jenkins jenkins 36864 Sep 4 13:57 .npm 
-rw-r--r-- 1 jenkins jenkins 241 Aug 16 16:47 org.codefirst.SimpleThemeDecorator.xml 
-rw-r--r-- 1 jenkins jenkins 298 May 15 16:04 org.jenkinsci.plugins.docker.commons.tools.DockerTool.xml 
-rw-r--r-- 1 jenkins jenkins 1830 Sep 25 08:43 org.jenkinsci.plugins.ghprb.GhprbTrigger.xml 
-rw-r--r-- 1 jenkins jenkins 255 May 15 16:04 org.jenkinsci.plugins.gitclient.JGitApacheTool.xml 
-rw-r--r-- 1 jenkins jenkins 243 May 15 16:04 org.jenkinsci.plugins.gitclient.JGitTool.xml 
-rw-r--r-- 1 jenkins jenkins 290 Aug 16 16:47 org.jenkinsci.plugins.pipeline.modeldefinition.config.GlobalConfig.xml 
-rw-r--r-- 1 jenkins jenkins 46 Sep 29 15:57 org.jenkinsci.plugins.workflow.flow.FlowExecutionList.xml 
-rw-r--r-- 1 jenkins jenkins 218 Aug 16 16:47 org.jenkinsci.plugins.workflow.libs.GlobalLibraries.xml 
-rw-r--r-- 1 jenkins jenkins 367 Aug 16 16:47 org.jenkinsci.plugins.zap.ZAPBuilder.xml 
-rw-r--r-- 1 jenkins jenkins 185 Aug 16 16:47 org.jvnet.hudson.plugins.SSHBuildWrapper.xml 
-rw-r--r-- 1 jenkins jenkins 2630 Jan 29 2017 Out of order build detection.log 
-rw-r--r-- 1 jenkins jenkins 46 Oct 1 00:35 .owner 
drwxr----- 3 jenkins jenkins 4096 Jan 30 2017 .pki 
drwxr-xr-x 2 jenkins jenkins 4096 Sep 14 14:45 .plotly 
drwxr-xr-x 141 jenkins jenkins 20480 Sep 6 13:11 plugins 
drwxr-xr-x 2 jenkins jenkins 4096 Aug 11 16:52 .pylint.d 
drwxr-xr-x 3 jenkins jenkins 4096 Mar 3 2017 .python-eggs 
-rw-r--r-- 1 jenkins jenkins 18064 Sep 25 08:42 queue.xml.bak 
drwxr-xr-x 3 jenkins jenkins 4096 Jan 30 2017 .qws 
-rw-r--r-- 1 jenkins jenkins 369 Jun 29 16:08 scriptApproval.xml 
-rw-r--r-- 1 jenkins jenkins 64 Jan 29 2017 secret.key 
-rw-r--r-- 1 jenkins jenkins  0 Jan 29 2017 secret.key.not-so-secret 
drwx------ 4 jenkins jenkins 4096 Jun 29 16:00 secrets 
drwx------ 2 jenkins jenkins 4096 Jul 3 14:51 .ssh 
drwxrwxrwx 522 jenkins jenkins 20480 Sep 28 12:43 temp 
drwxr-xr-x 3 jenkins jenkins 4096 Jan 28 2017 test 
drwxr-xr-x 16 jenkins jenkins 4096 Jan 28 2017 tmp 
drwxr-xr-x 3 jenkins jenkins 4096 Jan 28 2017 tools 
drwxr-xr-x 2 jenkins jenkins 4096 Sep 30 08:43 updates 
drwxr-xr-x 2 jenkins jenkins 4096 Jan 28 2017 userContent 
drwxr-xr-x 77 jenkins jenkins 4096 Sep 18 14:07 users 
-rw------- 1 jenkins jenkins 792 May 15 13:05 .viminfo 
drwxr-xr-x 2 jenkins jenkins 4096 Jan 28 2017 workflow-libs 
drwxr-xr-x 108 jenkins jenkins 12288 Sep 25 01:06 workspace 
drwxr-xr-x 2 jenkins jenkins 4096 Aug 16 16:55 .ZAP 
+0

이것은 Jenkins 또는 AWS와는 관계가 없으며 대신 디렉토리 트리가 어떻게 구성되어 있는지와 관련이 있습니다. 불행히도, 당신은 그것에 대해 아무런 정보도 제공하지 않지만, 나는 (1) symlink를하기 위해 사용했던 정확한 명령, 오류, 터미널 _에서 복사 한 것, 그리고 (2)'ls -al'의 '/ var/lib/jenkins'와'/ media/jenkins'를 사용합니다. – kdgregory

+0

@kdgregory는 symlink와 관련된 문제가 밝혀졌으며 상대 경로가 아닌 전체 경로를 사용하여 해결되었습니다. jenkins의 초기 새로 설치를 수행 한 다음'JENKINS_HOME' 변수를 전환해야하므로 여전히 문제가 해결되지 않습니다. – atomicfruitcake

+0

이것은 또한 DevOps와는 아무런 관련이 없습니다 :-) – StephenKing

답변

1

안에 당신이 모든 37기가바이트 이 복사한다고 생각합니다 시간. 하지만 다음에 37GB의 데이터가있는 이유를 이해하려고합니다. 마스터에 빌드 할 임시 파일 만 포함 된 작업 영역 폴더를 무시할 수 있습니다.

너무 많은 기록이 있고 파일을 보관하는 문제가있는 빌드가 있는지 확인하십시오. 어쩌면 데이터를 줄일 수 있습니다.

다른 옵션은 씬 백업 플러그인을 사용하는 것입니다. https://wiki.jenkins.io/display/JENKINS/thinBackup 모든 구성을 백업 할 수 있습니다.

다른 백업 옵션은 https://wiki.jenkins.io/display/JENKINS/SCM+Sync+configuration+plugin을 사용하는 것으로 모든 구성/기록을 Github 또는 다른 소스 컨트롤에 보관할 수 있습니다.