일반 vSphere Kubernetes 환경에서 ReadWriteMany 영구 볼륨을 프로비저닝할 수 있도록, Kubernetes 노드에서 vSAN 파일 서비스 네트워크로 필요한 네트워크, 스위치 및 라우터를 구성합니다.
네트워크 설정
네트워크를 구성할 때 다음 요구 사항을 따르십시오.
- 모든 Kubernetes 노드에서 vSAN 파일 공유 트래픽에 전용 vNIC를 사용할 수 있습니다. 이 옵션은 파일 볼륨에 보안 데이터 트래픽 경로를 사용하려는 경우에만 필요합니다.
- 전용 vNIC를 사용하는 경우 전용 vNIC를 통과하는 트래픽을 하나 이상의 vSAN 파일 서비스 네트워크로 라우팅할 수 있도록 해야 합니다.
- 각 Kubernetes 노드의 게스트 운영 체제만 파일 공유 IP 주소를 통해 vSAN 파일 공유에 직접 액세스할 수 있도록 해야 합니다. 노드에 포함된 포드는 IP 주소로 vSAN 파일 공유에 ping하거나 액세스할 수 없습니다.
CNS CSI 드라이버는 게스트 운영 체제에 마운트 지점을 생성하여 CNS 파일 볼륨을 사용하도록 구성된 포드만 vSAN 파일 공유에 액세스할 수 있도록 보장합니다.
- 노드 VM과 vSAN 파일 공유 간에 IP 주소 충돌을 피하십시오.
다음 그림은 vSAN 파일 공유 서비스가 사용된 CNS 네트워크 구성의 예입니다.
그림의 샘플 네트워킹 구성은 다음과 같은 지침을 따릅니다.
- 이 구성은 CNS 환경에서 다른 항목에 대해 별도의 네트워크를 사용합니다.
네트워크 설명 vSphere 관리 네트워크 대개, 일반적인 Kubernetes 클러스터에서는 모든 노드가 이 네트워크에 액세스할 수 있습니다. 포드 또는 노드 네트워크 이 네트워크는 Kubernetes에서 노드 대 노드 또는 포드 대 포드 통신에 사용됩니다. 전용 파일 공유 네트워크 이 네트워크는 CNS 파일 볼륨 데이터 트래픽에 사용됩니다. vSAN 파일 공유 네트워크 vSAN 파일 공유가 사용되도록 설정되고 파일 공유를 사용할 수 있는 네트워크입니다. - 모든 Kubernetes 노드에는 파일 트래픽을 위한 전용 vNIC가 있습니다. 이 vNIC는 노드 대 노드 또는 포드 대 포드 통신에 사용되는 vNIC와는 별개입니다. 이 구성은 예제로만 사용되지만 필수는 아닙니다.
- CNS 파일 공유를 사용하도록 구성된 애플리케이션만 노드 게스트 운영 체제의 마운트 지점을 통해 vSAN 파일 공유에 액세스할 수 있습니다. 예를 들어 그림에서는 다음과 같은 작업이 수행됩니다.
- 애플리케이션-1 및 애플리케이션-2 포드는 파일 볼륨을 사용하도록 구성되고 CSI 드라이버가 생성한 마운트 지점을 통해 파일 공유에 액세스할 수 있습니다.
- 애플리케이션-3 및 애플리케이션-4는 파일 볼륨을 사용하도록 구성되지 않고 파일 공유에 액세스할 수 없습니다.
- vSAN 파일 공유는 ESXi 호스트의 vSAN 파일 공유 장치 VM에 컨테이너로 배포됩니다. Kubernetes 배포자란 Kubernetes 클러스터를 구성, 배포 및 관리할 수 있는 소프트웨어 또는 서비스를 말하며, 필요한 라우터와 스위치를 구성합니다. 그래야 Kubernetes 노드의 게스트 운영 체제가 vSAN 파일 공유에 액세스할 수 있습니다.
보안 제한 사항
전용 vNIC 덕분에 권한이 없는 포드는 파일 공유에 직접 액세스할 수 없지만, 특정한 보안 제한 사항이 있습니다.
- CNS 파일 기능은 CNS 파일 볼륨 ID가 있는 사용자를 볼륨에 대한 권한이 있는 사용자라고 가정합니다. CNS 파일 볼륨 ID가 있는 사용자는 볼륨에 저장된 데이터에 액세스할 수 있습니다.
- CNS 파일 볼륨은 AUTH_SYS 인증(사용자 ID 기반 인증)만 지원합니다. CNS 파일 볼륨에 있는 데이터에 대한 액세스를 보호하려면 CNS 파일 볼륨에 액세스하는 컨테이너에 적절한 사용자 ID를 사용해야 합니다.
- CNS 파일 볼륨을 참조하는 바인딩되지 않은 ReadWriteMany 영구 볼륨은 네임스페이스의 Kubernetes 사용자가 생성한 영구 볼륨 할당에 바인딩될 수 있습니다. 보안 문제를 피하기 위해, 권한이 있는 사용자만 Kubernetes에 액세스할 수 있도록 해야 합니다.
vSAN 파일 서비스 클러스터에 액세스하도록 CSI 드라이버 구성
구성에 따라 CSI 드라이버는 파일 서비스가 사용되도록 설정된 단일 vSAN 클러스터 또는 여러 vSAN 클러스터에 파일 볼륨을 프로비저닝할 수 있습니다.
파일 서비스가 사용되도록 설정된 특정 vSAN 클러스터에만 액세스할 수 있도록 제한할 수 있습니다. Kubernetes 클러스터를 배포할 때 특정 파일 서비스 vSAN 클러스터에 액세스할 수 있도록 CSI 드라이버를 구성합니다. 그러면 CSI 드라이버는 해당 vSAN 클러스터에만 파일 볼륨을 프로비저닝할 수 있습니다.
기본 구성에서 CSI 드라이버는 vCenter Server에서 사용할 수 있는 모든 파일 서비스 vSAN 클러스터를 파일 볼륨 프로비저닝에 사용합니다. CSI 드라이버는 파일 볼륨을 프로비저닝하는 동안 어떤 파일 서비스 vSAN 클러스터에 액세스할 수 있는지를 확인하지 않습니다.