Tanzu Kubernetes Grid 클러스터는 감독자 네임스페이스에서 실행되는 일부 다른 구성 요소 및 워크로드와 마찬가지로 영구 스토리지가 필요합니다.

Tanzu Kubernetes Grid 클러스터에 대한 스토리지 정책

Tanzu Kubernetes Grid 클러스터에 영구 스토리지 리소스를 제공하기 위해 vSphere 관리자는 다양한 스토리지 요구 사항을 설명하는 스토리지 정책을 구성합니다. 그런 다음 관리자는 스토리지 정책을 Tanzu Kubernetes Grid 클러스터가 배포된 네임스페이스에 추가합니다. 네임스페이스에 표시되는 스토리지 정책은 네임스페이스가 영구 스토리지에 대해 액세스하고 사용할 수 있는 데이터스토어를 결정합니다. 또한 클러스터 노드 및 워크로드가 vSphere 스토리지 환경에 배치되는 방식을 지정합니다.

네임스페이스에 할당된 스토리지 정책을 기반으로 vSphere IaaS control plane는 일치하는 Kubernetes 스토리지 클래스를 생성하고 이는 네임스페이스에 자동으로 나타납니다. 또한 이 네임스페이스의 Tanzu Kubernetes Grid 클러스터에도 전파됩니다.

Tanzu Kubernetes Grid 클러스터에서 스토리지 클래스는 두 가지 버전(하나는 Immediate, 다른 하나는 WaitForFirstConsumer 바인딩 모드)으로 나타납니다. DevOps 팀이 선택하는 버전은 요구 사항에 따라 다릅니다.

Tanzu Kubernetes Grid 클러스터의 스토리지 클래스에 대한 자세한 내용은 영구 볼륨에 대한 스토리지 클래스 사용을 참조하십시오.

Tanzu Kubernetes Grid 클러스터가 vSphere 스토리지와 통합되는 방식

감독자 및 vSphere 스토리지와 통합하기 위해 Tanzu Kubernetes Grid 클러스터는 pvCSI(반가상화 CSI)를 사용합니다.

pvCSI는 Tanzu Kubernetes Grid 클러스터에 대해 수정된 vSphere CNS-CSI 드라이버의 버전입니다. pvCSI는 Tanzu Kubernetes Grid 클러스터에 상주하며 Tanzu Kubernetes Grid 클러스터에서 시작되는 모든 스토리지 관련 요청을 담당합니다. 요청은 CNS-CSI로 전달된 다음 vCenter Server의 CNS로 전파됩니다. 결과적으로 pvCSI는 CNS 구성 요소와 직접적으로 통신하지 않지만 대신 CNS-CSI를 통해 모든 스토리지 프로비저닝 작업을 수행합니다. CNS-CSI와 달리 pvCSI에는 인프라 자격 증명이 필요하지 않습니다. pvCSI는 네임스페이스의 서비스 계정으로 구성됩니다.

pvCSI는 TKG 클러스터의 구성 요소이고 CNS-CSI는 감독자 구성 요소이고 CNS는 vCenter Server 구성 요소입니다.

vSphere 스토리지와 통합하는 데 사용되는 감독자 구성 요소에 대한 자세한 내용은 워크로드에 대한 영구 스토리지 항목을 참조하십시오.

영구 볼륨이 생성되는 방식

다음은 DevOps 엔지니어가 Tanzu Kubernetes Grid 클러스터 내에서 스토리지 관련 작업을 수행할 때 서로 다른 구성 요소가 어떤 방식으로 상호 작용하는지 보여 줍니다. 예를 들어 PVC(영구 볼륨 할당)가 생성됩니다.

DevOps 엔지니어가 Tanzu Kubernetes Grid 클러스터에서 명령줄을 사용하여 PVC를 생성합니다. 이 작업을 수행하면 감독자에서 일치하는 PVC가 생성되고 CNS-CSI가 트리거됩니다. CNS-CSI는 CNS 볼륨 생성 API를 호출합니다.

세 구성 요소가 상호 작용하여 영구 볼륨을 생성합니다.

볼륨 생성이 완료되면 작업이 감독자를 통해 Tanzu Kubernetes Grid 클러스터로 다시 전파됩니다. 이 전파의 결과로 사용자는 감독자에서 바인딩된 상태의 영구 볼륨과 영구 볼륨 할당을 볼 수 있습니다. 또한 Tanzu Kubernetes Grid 클러스터에서 바인딩된 상태의 영구 볼륨과 영구 볼륨 할당을 볼 수 있습니다.

pvCSI에서 지원되는 기능

Tanzu Kubernetes Grid 클러스터에서 실행되는 pvCSI 구성 요소는 여러 vSphere 및 Kubernetes 스토리지 기능을 지원합니다.

지원되는 기능 Tanzu Kubernetes Grid 클러스터가 있는 pvCSI
vSphere Client의 CNS 지원
vSphere Client의 향상된 개체 상태 예(vSAN만)
동적 블록 영구 볼륨(ReadWriteOnce 액세스 모드)
동적 파일 영구 볼륨(ReadWriteMany 액세스 모드) 예(vSAN 파일 서비스 사용)
vSphere 데이터스토어 VMFS/NFS/vSAN/vVols
정적 영구 볼륨
암호화 아니요
오프라인 볼륨 확장
온라인 볼륨 확장
볼륨 토폴로지 및 영역
Kubernetes 다중 제어부 인스턴스
WaitForFirstConsumer
VolumeHealth
영구 볼륨이 있는 Storage vMotion 아니요