4.7. 프로젝트 백업
관련된 모든 데이터의 백업을 생성하려면 중요한 정보를 모두 내보낸 다음 새 프로젝트로 복원해야 합니다.
oc get all
명령은 특정 프로젝트 리소스만 반환하므로 아래 단계에 표시된 대로 PVC 및 보안을 비롯한 다른 리소스를 별도로 백업해야 합니다.
프로시저
백업할 프로젝트 데이터를 나열하십시오.
oc get all
$ oc get all
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 프로젝트 오브젝트를
project.yaml
파일로 내보냅니다.oc get -o yaml --export all > project.yaml
$ oc get -o yaml --export all > project.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 역할 바인딩, 시크릿, 서비스 계정 및 영구 볼륨 클레임과 같은 프로젝트의 다른 오브젝트를 내보냅니다.
다음 명령을 사용하여 프로젝트의 네임스페이스가 지정된 모든 오브젝트를 내보낼 수 있습니다.
for object in $(oc api-resources --namespaced=true -o name) do oc get -o yaml --export $object > $object.yaml done
$ for object in $(oc api-resources --namespaced=true -o name) do oc get -o yaml --export $object > $object.yaml done
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 일부 리소스는 내보낼 수 없으며
MethodNotAllowed
오류가 표시됩니다.내보낸 일부 오브젝트에 특정 메타데이터 또는 프로젝트의 고유 ID에 대한 참조가 필요할 수 있습니다. 이것은 재생성된 오브젝트의 유용성에 대한 제한 사항입니다.
imagestreams
를 사용하는 경우deploymentconfig
의image
매개변수가 복원된 환경에 존재하지 않는 내부 레지스트리에 있는 이미지의 특정sha
체크섬을 가리킬 수 있습니다. 예를 들어 샘플 "ruby-ex"를oc new-app centos/ruby-22-centos7~https://github.com/sclorg/ruby-ex.git
로 실행하면 내부 레지스트리에서 이미지를 호스팅하여imagestream
ruby-ex
가 생성됩니다.oc get dc ruby-ex -o jsonpath="{.spec.template.spec.containers[].image}"
$ oc get dc ruby-ex -o jsonpath="{.spec.template.spec.containers[].image}" 10.111.255.221:5000/myproject/ruby-ex@sha256:880c720b23c8d15a53b01db52f7abdcbb2280e03f686a5c8edfef1a2a7b21cee
Copy to Clipboard Copied! Toggle word wrap Toggle overflow deploymentconfig
를 가져오는 경우oc get --export
를 통해 내보냈으므로 이미지가 없으면 실패합니다.