https://cormachogan.com/2020/09/18/cns-csi-2-1-and-vsphere-7-0u1-whats-new/

Cormac Hogan

이 글에서는 쿠버네티스 vSphere CSI 드라이버의 새로운 릴리스에 포함된 내용과 vSphere 인프라에서 CSI 요청을 처리하는 Cloud Native Storage (CNS)의 향상된 기능에 대해 알아본다. CSI 개선 사항은 드라이버 버전 2.1에서 제공되며, CNS 구성 요소는 vSphere 7.0U1의 일부가 될 것이다. 여기에서 논의되는 두 가지 기능 모두 필요하다. 본 릴리즈의 주요 목표는 (a) 바닐라 쿠버네티스와 함께 사용할 수 있는 CNS-CSI 기능과 유사한 사양을 갖도록 쿠버네티스와 함께 vSphere에 CNS-CSI 기능을 추가하는 것과 (b) 원래의 VCP (vSphere Cloud Provider)를 계속 사용하는 쿠베르네츠 배포에 CSI 마이그레이션 기능을 도입하는 것 두 가지다.vSphere 스토리지에서 영구 볼륨을 프로비저닝하기 위한 버전. 이것들 각각을 차례대로 살펴보자.

CNS-CSI 2.1 Kubernetes를 사용한 vSphere 개선

이 버전의 CNS-CSI 드라이버에는 몇 가지 개선 사항이 있다.

볼륨 건강

이 기능은 vSphere 스토리지에 배포된 볼륨의 상태를 보고하며 PersistentVolumeClaim 세부 정보에서 쿼리할 수 있다. 이 기능은 vSphere 7.0U1의 Kubernetes Supervisor Cluster 및 TKG(Tanzu Kubernetes Grid) “게스트” 클러스터와 함께 vSphere에서 사용할 수 있다.

chogan@chogan-a01 ~ % kubectl get pvc
NAME            STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS                  AGE
demo-pvc-vsan   Bound    pvc-d347c2ed-fcc6-4e3a-9fd2-a293fa568835   2Gi        RWO            vsan-default-storage-policy   36m


chogan@chogan-a01 ~ % kubectl describe pvc | grep volumehealth
               volumehealth.storage.kubernetes.io/health: accessible

볼륨 상태에 대한 자세한 내용은 여기에서 확인할 수 있다.

볼륨 배치 관찰성

또 다른 좋은 기능은 물리적 볼륨 배치 세부 정보를 vSphere Client의 컨테이너 볼륨 보기에서 직접 볼 수 있다는 점이다.

감시자와 TKG 클러스터 모두에서 정적 PV 지원

또한 이 릴리스에서는 Tanzu Kubernetes Grid 클러스터뿐만 아니라 Kubernetes Supervisor 클러스터가 있는 vSphere에서 정적 영구 볼륨 지원 기능도 볼 수 있다. 정적 PV의 주요 사용 사례 중 하나는 기존 PV를 재사용할 수 있고, 이를 사용하도록 새로운 Pod 또는 Pods를 예약할 수 있는 것이다. 이는 이전에 구축된 애플리케이션에서 발생하거나 백업에서 복원된 PV에서 발생할 수 있다. 정적 영구 볼륨 프로비저닝에 대한 자세한 내용은 여기에서 확인할 수 있다.

오프라인 볼륨 증가

이는 당시 베타 기능이었지만 바닐라 쿠버네티스용 vSphere 7.0 CNS-CSI 릴리즈에서 소개된 기능이었다. 이 글에서 자세히 이야기했다. 이 7.0에서U1 릴리즈, Tanzu Kubernetes Grid 클러스터에 동일한 기능을 추가했다. 그것은 여전히 오프라인 작업으로, PV의 크기가 증가된 후에 포드를 예약하지 않고 다시 예약해야 한다는 것을 의미한다. 오프라인 볼륨 증가 작업을 수행하는 방법에 대한 자세한 내용은 여기를 참조하기 바란다.

CNS-CSI 2.1 바닐라 쿠베르네테스 개선

우리가 바닐라 쿠버네티스 CSI 드라이버에 대해 크게 개선한 것이 있다.

CSI 마이그레이션

Velero를 사용하여 VCP와 CSI 간에 스테이트-풀 애플리케이션을 오프라인으로 마이그레이션할 수 있지만 실시간 마이그레이션 기능을 통해 원활하게 마이그레이션이 수행되도록 해야 하는 요구사항이 있다. CSI 마이그레이션은 쿠버네티스 1.19 릴리스에서 사용할 수 있다. 초기 트리 내 VCP에서 vSphere의 CSI로 볼륨을 마이그레이션하려면 vSphere 7.0U1 및 CSI 드라이버 버전 2.1도 필요하다. VCP와 함께 Kubernetes 클러스터에서 실행되는 영구 볼륨(PV) 작업은 트리 외 CSI 드라이버로 원활하게 리디렉션된다.

이전 버전의 트리 내 VCP와 최신 vSphere CSI 드라이버 간의 마이그레이션은 VCP가 영구 볼륨 수명 주기 작업을 위해 VMDK 경로를 사용하는 반면, CSI 드라이버는 퍼스트 클래스 디스크 ID를 사용하므로 복잡하다. 마이그레이션 워크플로우에 필요한 API(VMDK와 FCD, 그리고 그 반대의 경우)가 vSphere 7.0U1에 추가되었다.

자세한 내용은 배포 중인 고객이나 현재 사용 중인 오래된 인트리 vSphere Cloud Provider(VCP)를 사용하는 애플리케이션을 사용하는 고객에게 도움이 될 것이 확실하며, 이는 인-트리 VCP가 어느 시점에서는 더 이상 사용되지 않고 쿠베르네츠 배포에서 제거될 것이기 때문이다.

0 Shares:
댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다

You May Also Like