OpenShift_Registry_Storage > PaaS

본문 바로가기
사이트 내 전체검색

PaaS

OpenShift_Registry_Storage

페이지 정보

profile_image
작성자 PaaSM
댓글 0건 조회 80회 작성일 21-02-04 14:38

본문

안녕하세요.

OKD에는 OCR(OpenSHift Container Registry)라는 통합 컨테이너 레지스트리가 존재합니다.
통합 레지스트리는 새 이미지가 푸시 될 때마다 네임스페이스 이름 및 이미지 메타 데이터와 같은 데이터를 OKD에 전달하고 OKD는 새 이미지에 반응해 빌드 및 배포를 합니다.

OCR은 초기 설치 시 자동으로 배치 되는데, Volume 형식이 emptyDir로 되어있어 노드에서 파드가 제거되면 데이터가 영구적으로 삭제됩니다.
OCR에 기존 데이터를 백업하고 데이터를 영구 저장하기 위해 PV(Persistent Volume)을 붙여 복원하는 테스트 결과를 공유하려고 합니다.

* Platform Version : OpenShift 3.9

# oc -n default get dc/docker-registry -o yaml
...
        volumeMounts:
        - mountPath: /registry
          name: registry-storage
        - mountPath: /etc/secrets
          name: registry-certificates
...
      volumes:
      - emptyDir: {}
        name: registry-storage
...

=== registry data backup ===
# oc rsync <docker-registry pod-name>:/registry ./<destination-dir-name>

=== pv 및 pvc 생성 ===
# oc -n default create -f pv.yml
apiVersion: v1
kind: PersistentVolume
metadata:
  creationTimestamp: null
  finalizers:
  - kubernetes.io/pv-protection
  labels:
    deploymentconfig: docker-registry
  name: registry-1
  namespace: "default"
spec:
  accessModes:
  - ReadWriteOnce
  capacity:
    storage: 30Gi
  nfs:
    path: /exports/registry
    server: 192.168.211.147
  persistentVolumeReclaimPolicy: Retain
status: {}

# oc -n default create -f pvc.yml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  annotations:
    pv.kubernetes.io/bind-completed: "yes"
    pv.kubernetes.io/bound-by-controller: "yes"
  creationTimestamp: null
  finalizers:
  - kubernetes.io/pvc-protection
  labels:
    deploymentconfig: docker-registry
  name: registry
  namespace: "default"
spec:
  accessModes:
  - ReadWriteOnce
  resources:
    requests:
      storage: 30Gi
    selector:
      matchLabels:
        project: default
  volumeName: registry-1
status: {}

=== Registry scale down 후 Volume 수정 ===
# oc -n default scale dc/docker-registry --replicas=0

# oc -n default edit dc/docker-registry

...
      - name: registry-storage
        persistentVolumeClaim:
          claimName: <pvc-name>
...

=== Registry scale up ===
# oc -n default scale dc/docker-registry --replicas=1

=== 기존 데이터 복원 ===
# oc -n default rsync registry/docker <docker-registry pod-name>:/registr

참고 URL
https://docs.okd.io/3.9/dev_guide/volumes.html#adding-volumes
https://docs.okd.io/3.9/dev_guide/volumes.html#removing-volumes

댓글목록

등록된 댓글이 없습니다.

회원로그인

회원가입

사이트 정보

회사명 : (주)리눅스데이타시스템 / 대표 : 정정모
서울본사 : 서울특별시 강남구 봉은사로 114길 40 홍선빌딩 2층 / tel : 02-6207-1160
대전지사 : 대전광역시 유성구 노은로174 도원프라자 5층 / tel : 042-331-1161

접속자집계

오늘
242
어제
240
최대
680
전체
28,264
Copyright © www.linuxdata.org All rights reserved.