프로젝트

일반

사용자 정보

실행

태스크 #12951

여러 볼륨 그룹을 사용하는 경우 gluesys-csi 시나리오 검증

이 헌제님이 2달 전에 추가함. 약 2달 전에 수정됨.

상태:
해결
우선 순위:
보통
담당자:
목표 버전:
시작 시간:
2026/02/09
완료 기한:
2026/02/09 (약 2달 지연)
진척도:

100%

추정 시간:
5:00 시간
발견 버전:
반영 버전:
난이도:
쉬움
중요도:
조력자:
회사:
연락처:
점수:
0.00

설명

목표

  • 현재 gluesys-csi 은 단일 볼륨을 제어하는 방식으로 가이드하고 있다
  • 여러 볼륨 그룹을 사용하는 경우 storageclass 와 gluesys-csi 을 어떤 식으로 구성해야 가능한지 가이드를 만들고, 그에 따른 테스트를 진행하여 검증한다.

다중 gluesys-csi 설치

다중 설치 가능성

csi-driver-lvm을 여러 개 설치하여 VG를 나누는 방향으로 운영 가능합니다.

설치 방법 (namespace별)

# namespace 생성
kubectl create namespace storage-1
kubectl create namespace storage-2

# 내부 registry 로 테스트시 namespace 별 secret 생성
kubectl create secret docker-registry gitlab-regcred --docker-server=registry.gitlab.gluesys.com --docker-username=gitlab-runner --docker-password=gldt-f2kyALfrvGAbDnxsKoSJ --namespace storage-1
kubectl create secret docker-registry gitlab-regcred --docker-server=registry.gitlab.gluesys.com --docker-username=gitlab-runner --docker-password=gldt-f2kyALfrvGAbDnxsKoSJ --namespace storage-2

# Namespace 1 설치
helm install gluesys-csi-1 \
    --namespace storage-1 \
    --set lvm.storageVG='VG1' \
    --set storageClasses.thin.additionalAnnotations."gms\.io/thinpool"="csi-pool1"
    --set lvm.storageVIP='10.0.24.70' \
    --set lvm.driverName='lvm.csi.gms.io1' \
    --set lvm.storageClassStub='gluesys-csi-1' \
    --set lvm.volumeSnapshotClassStub='gluesys-csi-snapshot-1' \
    ./charts/gluesys-csi

# Namespace 2 설치
helm install gluesys-csi-2 \
    --namespace storage-2 \
    --set lvm.storageVG='VG2' \
    --set storageClasses.thin.additionalAnnotations."gms\.io/thinpool"="csi-pool2"
    --set lvm.storageVIP='10.0.24.71' \
    --set lvm.driverName='lvm.csi.gms.io2' \
    --set lvm.storageClassStub='gluesys-csi-2' \
    --set lvm.volumeSnapshotClassStub='gluesys-csi-snapshot-1' \
    ./charts/gluesys-csi

9.3 생성되는 StorageClass

항목 gluesys-csi-1 gluesys-csi-2
StorageClass 이름 gluesys-csi-1-thin gluesys-csi-2-thin
provisioner lvm.csi.gms.io1 lvm.csi.gms.io2
연결된 driver gluesys-csi-1 gluesys-csi-2
VG VG1 VG2
VIP 10.0.24.70 10.0.24.71

9.4 장점

장점 설명
용량 분산 VG별로 별도의 thinpool 관리 가능
장애 격리 한 VG에 장애 발생 시 다른 VG에 영향 없음
성능 분산 여러 AnyStor-E 노드에 부하 분산
애플리케이션 분리 앱/환경별로 별도 스토리지 할당 가능

9.5 제약사항

제약사항 내용
동일 StorageClass 공유 불가 다른 driver가 같은 StorageClass 이름을 사용할 수 없음
앱별 명확한 지정 앱이 사용할 StorageClass를 명확히 지정해야 함
Migration 불가 한 VG에서 다른 VG로 마이그레이션 불가
driverName 충돌 방지 각 csi-driver-lvm은 고유한 driverName 사용 필수
Kasten 백업 각 StorageClass별로 백업 정책 설정 필요

주의사항

항목 내용
Pod와 PVC 동일 namespace PVC가 생성된 namespace의 gluesys-csi만 사용 가능
Cross namespace 사용 불가 Namespace A에서 생성된 PVC는 Namespace A의 gluesys-csi만 접근 가능
StorageClass 지정 각 앱은 사용할 VG에 맞는 StorageClass를 명확히 지정해야 함
초기 단순화 초기에는 단일 gluesys-csi으로 시작하고 필요에 따라 확장 권장
실행 #1

이 헌제님이 2달 전에 변경

  • 완료 기한 항목을 지정했습니다. (2026/02/09)
  • 담당자 항목을 지정했습니다. (이 헌제)
  • 시작 시간 항목을 지정했습니다. (2026/02/09)
  • 추정 시간 항목을 지정했습니다. (5:00 시간)

난이도 및 추정시간

  • 단순 테스트라서 난이도는 쉬우나 구성이 복잡해서 추정시간 5시간
실행 #2

이 헌제님이 약 2달 전에 변경

  • 상태 항목을 변경했습니다 (검토 => 진행)
실행 #3

이 헌제님이 약 2달 전에 변경

실행 #4

이 헌제님이 약 2달 전에 변경

실행 #5

이 헌제님이 약 2달 전에 변경

실행 #6

이 헌제님이 약 2달 전에 변경

코드 수정 후 테스트

     vip_192.168.39.170 (ocf::heartbeat:IPaddr2):   Started ASE333-1
rsc_VG1 (ocf::heartbeat:LVM):   Started ASE333-1
rsc_VG2 (ocf::heartbeat:LVM):   Started ASE333-1
rsc_VG1_pvc-76a90b5d-5708-42b9-8784-981885858f44        (ocf::heartbeat:Filesystem):    Started ASE333-1
share_VG1_pvc-76a90b5d-5708-42b9-8784-981885858f44  (ocf::anystor-e:ShareCtl):  Started ASE333-1
rsc_VG2_pvc-8baae985-e98b-4b73-83ab-a16f76d8e0e0        (ocf::heartbeat:Filesystem):    Started ASE333-1
share_VG2_pvc-8baae985-e98b-4b73-83ab-a16f76d8e0e0  (ocf::anystor-e:ShareCtl):  Started ASE333-1
# kubectl get pods
NAME         READY   STATUS    RESTARTS   AGE
pod-thin-1   1/1     Running   0          9m7s
pod-thin-2   1/1     Running   0          6m42s
실행 #7

이 헌제님이 약 2달 전에 변경

  • 제목 항목을 변경했습니다 (여러 볼륨 그룹을 사용하는 경우 csi-driver-lvm 시나리오 검증 => 여러 볼륨 그룹을 사용하는 경우 gluesys-csi 시나리오 검증)
실행 #8

이 헌제님이 약 2달 전에 변경

실행 #9

이 헌제님이 약 2달 전에 변경

  • 상태 항목을 변경했습니다 (진행 => 해결)
  • 진척도 항목을 변경했습니다 (0 => 100)

https://gitlab.gluesys.com/dev3/gluesys-csi/-/merge_requests/10 에서 병합되어 일감을 해결처리함

실행

내보내기 Atom PDF

클립보드 이미지 추가 (최대 크기: 50 MB)