ESXi에서 NFS 스토리지를 사용하는 경우 NFS 서버 구성, 네트워킹, NFS 데이터스토어 등과 관련된 특정 지침을 따라야 합니다.

NFS 서버 구성

ESXi와 함께 사용하도록 NFS 서버를 구성하는 경우에는 스토리지 벤더의 권장 사항을 따릅니다. 이러한 일반적인 권장 사항 외에 vSphere 환경에서 NFS에 적용되는 특정 지침을 사용합니다.

지침에는 다음 항목이 포함됩니다.

  • 사용하는 NAS 서버가 "VMware HCL" 에 나열되어 있는지 확인합니다. 서버 펌웨어의 올바른 버전을 사용합니다.
  • NFS 볼륨이 TCP를 통한 NFS를 사용하여 내보내지는지 확인합니다.
  • NAS 서버가 특정 공유를 NFS 3 또는 NFS 4.1로 내보내는지 확인합니다. NAS 서버는 동일한 공유에 대해 두 프로토콜 버전을 모두 제공해서는 안 됩니다. ESXi는 서로 다른 NFS 버전을 통해 동일한 공유를 마운트하는 것을 방지하지 않기 때문에 NAS 서버가 이 정책을 적용해야 합니다.
  • NFS 3 및 비Kerberos(AUTH_SYS) NFS 4.1은 루트가 아닌 인증서를 사용하여 NFS 볼륨에 액세스할 수 있도록 지원하는 대리 사용자 기능을 지원하지 않습니다. NFS 3 또는 비Kerberos NFS 4.1을 사용하는 경우 각 호스트에 볼륨에 대한 루트 액세스 권한이 있는지 확인합니다. 스토리지 벤더마다 이 기능을 사용하도록 설정하는 방법이 다르지만 일반적으로 NAS 서버에서는 no_root_squash 옵션을 사용합니다. NAS 서버가 루트 액세스 권한을 부여하지 않더라도 호스트에 NFS 데이터스토어를 마운트할 수 있습니다. 그러나 데이터스토어에 가상 시스템을 생성할 수는 없습니다.
  • 기본 NFS 볼륨이 읽기 전용인 경우에는 NFS 서버에서 해당 볼륨을 읽기 전용 공유로 내보내야 합니다. 또는 볼륨을 ESXi 호스트에 읽기 전용 데이터스토어로 마운트합니다. 그러지 않으면 호스트에서는 해당 데이터스토어를 읽기/쓰기용으로 간주하며 파일을 열지 못할 수도 있습니다.

NFS 네트워킹

ESXi 호스트는 TCP/IP 네트워크 연결을 사용하여 원격 NAS 서버에 액세스합니다. NFS 스토리지를 사용하는 경우에는 네트워킹을 구성할 때 참조할 수 있는 특정 지침과 모범 사례가 있습니다.

자세한 내용은 "vSphere 네트워킹" 설명서를 참조하십시오.

  • 네트워크 연결의 경우 ESXi 호스트의 표준 네트워크 어댑터를 사용합니다.
  • ESXi는 계층 2 및 계층 3 네트워크 스위치를 지원합니다. 계층 3 스위치를 사용하는 경우 ESXi 호스트와 NFS 스토리지 어레이가 다른 서브넷에 있어야 하며 네트워크 스위치가 라우팅 정보를 처리해야 합니다.
  • NFS 스토리지에 대한 VMkernel 포트 그룹을 구성합니다. IP 스토리지에 대한 VMkernel 포트 그룹은 기존 가상 스위치(vSwitch) 또는 새 vSwitch에 생성할 수 있습니다. vSwitch는 VSS(vSphere 표준 스위치) 또는 VDS(vSphere Distributed Switch)일 수 있습니다.
  • NFS 트래픽에 대한 여러 포트를 사용하는 경우 가상 스위치와 물리적 스위치를 올바르게 구성해야 합니다.
  • NFS 3 및 NFS 4.1은 IPv6을 지원합니다.
  • nconnect 옵션을 사용하여 여러 개의 연결로 NFS 스토리지를 구성할 수 있습니다. NFS 4.1의 경우 세션당 여러 연결을 생성할 수 있습니다. NFS 3의 경우 여러 연결을 사용하여 데이터스토어를 마운트할 수 있습니다. 기본적으로 NFS 데이터스토어당 최대 4개의 연결을 설정할 수 있습니다. 하지만 고급 NFS 옵션을 사용하면 최대 8개까지 늘릴 수 있습니다. 마운트된 모든 NFS 데이터스토어의 총 연결 수가 256개를 초과하지 않는지 확인합니다. NFS에 대해 여러 TCP 연결 구성의 내용을 참조하십시오.
  • NFS 트래픽을 특정 VMkernel 어댑터로 격리할 수 있습니다. 바인딩 없이 ESXi가 NFS 트래픽에 사용하는 VMkernel 어댑터가 실패하면 네트워크 인프라가 트래픽을 대체 경로로 리디렉션합니다. 그 결과 NFS 트래픽이 의도하지 않게 임의 VMkernel 어댑터를 통과할 수 있습니다. NFS 데이터스토어에 대한 VMkernel 포트 바인딩을 사용하면 NFS 볼륨을 특정 VMkernel 어댑터에 바인딩하여 NFS 서버에 연결할 수 있습니다. NFS 데이터스토어에 대한 VMkernel 바인딩 구성의 내용을 참조하십시오.

NFS 파일 잠금

파일 잠금 메커니즘은 서버에 저장되어 있는 데이터를 한 번에 사용자 한 명 또는 프로세스 하나만 액세스할 수 있도록 제한하는 데 사용됩니다. 두 가지 NFS 버전의 잠금 메커니즘은 호환되지 않습니다. NFS 3은 독점 잠금을 사용하고 NFS 4.1은 기본 프로토콜 지정 잠금을 사용합니다.

ESXi에서 NFS 3 잠금은 NLM(Network Lock Manager) 프로토콜을 사용하지 않습니다. 대신 VMware는 자체 잠금 프로토콜을 제공합니다. NFS 서버에서 잠금 파일을 생성하면 NFS 3 잠금이 구현됩니다. 잠금 파일의 이름은 .lck-file_id.입니다.

NFS 4.1은 공유 예약을 잠금 메커니즘으로 사용합니다.

NFS 3 및 NFS 4.1 클라이언트는 동일한 잠금 프로토콜을 사용하지 않기 때문에 서로 다른 NFS 버전을 사용하여 동일한 데이터스토어를 여러 호스트에 마운트할 수 없습니다. 호환되지 않는 두 클라이언트에서 동일한 가상 디스크에 액세스할 경우 잘못된 동작이 발생하고 데이터 손상이 발생할 수 있습니다.

NFS 보안

NFS 3 및 NFS 4.1을 사용할 경우 ESXi는 .AUTH_SYS 보안을 지원합니다. 또한 NFS 4.1의 경우에는 Kerberos 보안 메커니즘이 지원됩니다.

NFS 3은 AUTH_SYS 보안 메커니즘을 지원합니다. 이 메커니즘을 사용하면 스토리지 트래픽이 암호화되지 않은 형식으로 LAN에서 전송됩니다. 이 제한된 보안으로 인해 신뢰하는 네트워크에서만 NFS 스토리지를 사용하고 트래픽을 별도의 물리적 스위치에서 분리합니다. 전용 VLAN을 사용할 수도 있습니다.

NFS 4.1은 NFS 서버와의 통신을 보호하기 위해 Kerberos 인증 프로토콜을 지원합니다. 루트가 아닌 사용자는 Kerberos가 사용되는 경우에 파일에 액세스할 수 있습니다. 자세한 내용은 ESXi에서 NFS 4.1에 Kerberos 사용의 내용을 참조하십시오.

NFS 4.1은 Kerberos 외에 AUTH_SYS 보안을 사용하는 기존의 비Kerberos 마운트를 지원합니다. 이 경우 NFS 버전 3에 대한 루트 액세스 지침을 사용합니다.
참고: 여러 호스트가 공유하는 동일한 NFS 4.1 데이터스토어에 대해 2개의 보안 메커니즘인 AUTH_SYS와 Kerberos를 사용할 수 없습니다.

NFS 다중 경로 지정

NFS 4.1은 프로토콜 규격에 따라 다중 경로 지정을 지원합니다. NFS 3 다중 경로 지정은 적용할 수 없습니다.

NFS 3은 I/O를 위해 하나의 TCP 연결을 사용합니다. 따라서 ESXi는 NFS 서버의 IP 주소 또는 호스트 이름 하나에 대해서만 I/O를 지원하고 다중 경로를 지원하지 않습니다. 네트워크 인프라 및 구성에 따라 네트워크 스택을 사용하여 스토리지 대상에 여러 개의 연결을 구성할 수 있습니다. 이 경우 데이터스토어가 여러 개 있어야 하며 각 데이터스토어는 호스트와 스토리지 간에 별도의 네트워크 연결을 사용해야 합니다.

NFS 4.1은 세션 트렁킹을 지원하는 서버에 대해 다중 경로 지정을 제공합니다. 트렁킹을 사용할 수 있는 경우 여러 IP 주소를 사용하여 단일 NFS 볼륨에 액세스할 수 있습니다. 클라이언트 ID 트렁킹은 지원되지 않습니다.

NFS 및 하드웨어 가속

NFS 데이터스토어에 생성된 가상 디스크는 기본적으로 씬 프로비저닝됩니다. 씩 프로비저닝된 가상 디스크를 생성할 수 있으려면 공간 예약 작업을 지원하는 하드웨어 가속을 사용해야 합니다.

NFS 3 및 NFS 4.1은 호스트가 NAS 디바이스와 통합하고 NAS 스토리지가 제공하는 몇 가지 하드웨어 작업을 사용할 수 있도록 하는 하드웨어 가속을 지원합니다. 자세한 내용은 NAS 디바이스의 vSphere 하드웨어 가속를 참조하십시오.

NFS 데이터스토어

NFS 데이터스토어를 생성할 때는 특정 지침을 따라야 합니다.

NFS 데이터스토어 지침 및 모범 사례에는 다음 항목이 포함됩니다. NFS 데이터스토어를 생성하려면 vSphere 환경에서 NFS 데이터스토어 생성 항목을 참조하십시오.
  • 다른 NFS 버전을 사용하여 동일한 데이터스토어를 서로 다른 호스트에 마운트할 수 없습니다. NFS 3 및 NFS 4.1 클라이언트는 호환되지 않으며 동일한 잠금 프로토콜을 사용하지 않습니다. 따라서 호환되지 않는 두 클라이언트에서 동일한 가상 디스크에 액세스할 경우 잘못된 동작이 발생하고 데이터 손상이 발생할 수 있습니다.
  • NFS 3 및 NFS 4.1 데이터스토어는 동일한 호스트에서 공존할 수 있습니다.
  • ESXi에서는 NFS 버전 3을 버전 4.1로 자동 업그레이드할 수 없지만 다른 변환 방법을 사용할 수 있습니다. 자세한 내용은 NFS 업그레이드 항목을 참조하십시오.
  • 다른 호스트에 동일한 NFS 3 볼륨을 마운트할 때에는 서버와 폴더 이름이 호스트에서 동일해야 합니다. 이름이 일치하지 않으면 호스트에서는 이 동일한 NFS 버전 3 볼륨을 서로 다른 2개의 데이터스토어로 표시합니다. 이 오류로 인해 vMotion 같은 기능에서 오류가 발생할 수 있습니다. 예를 들어 서버 이름을 한 호스트에는 filer로 입력하고 다른 호스트에는 filer.domain.com으로 입력하는 경우에 이러한 불일치가 발생할 수 있습니다. 이 지침은 NFS 버전 4.1에는 적용되지 않습니다.
  • ASCII가 아닌 문자를 사용하여 데이터스토어 및 가상 시스템의 이름을 지정할 경우에는 기본 NFS 서버가 국제화 지원을 제공하는지 확인합니다. 서버가 국제 문자를 지원하지 않을 경우에는 ASCII 문자만 사용해야 하며, 그렇지 않을 경우 예측할 수 없는 오류가 발생할 수 있습니다.

ESXi에서 계층 3 라우팅된 연결을 사용하여 NFS 스토리지에 액세스

L3(계층 3) 라우팅된 연결을 사용하여 NFS 스토리지에 액세스하는 경우 특정 요구 사항과 제한 사항을 고려해야 합니다.

환경이 다음 요구 사항을 충족하는지 확인합니다.
  • IP 라우터에서 Cisco의 HSRP(Hot Standby Router Protocol)를 사용합니다. Cisco 라우터가 아닌 다른 라우터를 사용하는 경우 대신 VRRP(Virtual Router Redundancy Protocol)를 사용합니다.
  • 대역폭이 제한된 네트워크 또는 정체가 발생하는 네트워크에서 NFS L3 트래픽의 우선 순위를 지정하려면 QoS(서비스 품질)를 사용합니다. 자세한 내용은 라우터 설명서를 참조하십시오.
  • 스토리지 벤더에서 제공하는 라우팅 NFS L3 권장 사항을 따릅니다. 자세한 내용은 스토리지 벤더에 문의하십시오.
  • NetIORM(Network I/O Resource Management)을 비활성화합니다.
  • 랙형 스위치 또는 스위치 종속 I/O 디바이스 파티셔닝을 사용하는 시스템을 사용하려는 경우 시스템 벤더에 호환성 및 지원 여부를 문의하십시오.
L3 환경에서는 다음 제한 사항이 적용됩니다.
  • 이 환경에서는 VMware Site Recovery Manager를 지원하지 않습니다.
  • 이 환경에서는 NFS 프로토콜만 지원합니다. 동일한 물리적 네트워크에서 FCoE와 같은 다른 스토리지 프로토콜을 사용하지 마십시오.
  • 이 환경의 NFS 트래픽은 IPv6을 지원하지 않습니다.
  • 이 환경의 NFS 트래픽은 LAN을 통해서만 라우팅될 수 있습니다. WAN과 같은 다른 환경은 지원되지 않습니다.

ESXi에서 NFS 스토리지에 대한 방화벽 구성

NFS 데이터스토어 버전 3 또는 4.1을 마운트할 때 ESXi가 생성하는 방화벽 규칙 집합 파일 nfsClientnfs41client에 대해 알아봅니다.

방화벽 구성에 대한 일반 정보는 "vSphere 보안" 설명서에서 ESXi 방화벽 구성을 참조하십시오.

NFS 클라이언트 방화벽 동작

NFS 클라이언트 방화벽 규칙 집합은 다른 ESXi 방화벽 규칙 집합과는 다르게 동작합니다. ESXi에서는 NFS 데이터스토어를 마운트하거나 마운트 해제할 때 NFS 클라이언트 설정을 구성합니다. 동작은 NFS의 버전별로 다릅니다.

NFS 데이터스토어를 추가, 마운트 또는 마운트 해제할 때 결과 동작은 NFS의 버전에 따라 다릅니다.

NFS v3 방화벽 동작

NFS v3 데이터스토어를 추가하거나 마운트할 때 ESXi에서는 NFS 클라이언트(nfsClient) 방화벽 규칙 집합의 상태를 확인합니다.

  • nfsClient 규칙 집합이 비활성화된 경우 ESXi에서는 해당 규칙 집합을 활성화하고 allowedAll 플래그를 FALSE로 설정하여 모든 IP 주소 허용 정책을 비활성화합니다. NFS 서버의 IP 주소는 허용된 송신 IP 주소 목록에 추가됩니다.
  • nfsClient 규칙 집합이 활성화된 경우 이 규칙 집합의 상태와 허용된 IP 주소 정책은 변경되지 않습니다. NFS 서버의 IP 주소는 허용된 송신 IP 주소 목록에 추가됩니다.
참고: NFS v3 데이터스토어를 시스템에 추가하기 전 또는 그 후에 nfsClient 규칙 집합을 수동으로 활성화하거나 모든 IP 주소 허용 정책을 수동으로 설정하면 마지막 NFS v3 데이터스토어가 마운트 해제될 때 설정이 재정의됩니다. 모든 NFS v3 데이터스토어가 마운트 해제되면 nfsClient 규칙 집합은 비활성화됩니다.

NFS v3 데이터스토어를 제거하거나 마운트 해제할 때 ESXi에서는 다음 작업 중 하나를 수행합니다.

  • 나머지 NFS v3 데이터스토어 중에서 마운트 해제되는 데이터스토어 서버에서 마운트된 데이터스토어가 없으면 ESXi에서는 송신 IP 주소의 목록에서 서버의 IP 주소를 제거합니다.
  • 마운트 해제 작업 후 마운트된 NFS v3 데이터스토어가 남아 있지 않으면 ESXi에서는 nfsClient 방화벽 규칙 집합을 비활성화합니다.

NFS v4.1 방화벽 동작

첫 번째 NFS v4.1 데이터스토어를 마운트하면 ESXi에서는 nfs41client 규칙 집합을 활성화하고 allowedAll 플래그를 TRUE로 설정합니다. 이 작업은 모든 IP 주소에 대해 포트 2049를 엽니다. NFS v4.1 데이터스토어 마운트 해제는 방화벽 상태에 영향을 주지 않습니다. 즉, 첫 번째 NFS v4.1 마운트는 포트 2049를 열고 해당 포트는 명시적으로 닫지 않는 한 활성화된 상태로 유지됩니다.

NFS 클라이언트에 대한 방화벽 포트 확인

NFS 스토리지에 대한 액세스를 사용하도록 설정하려면 NFS 데이터스토어를 마운트할 때 ESXi가 NFS 클라이언트에 대한 방화벽 포트를 자동으로 엽니다. 문제를 해결하기 위해 포트가 열려 있는지 확인해야 합니다.

프로시저

  1. vSphere Client에서 ESXi 호스트로 이동합니다.
  2. 구성 탭을 클릭합니다.
  3. 시스템에서 방화벽을 클릭하고 편집을 클릭합니다.
  4. 아래로 스크롤하여 적절한 버전의 NFS를 찾은 다음 포트가 열려 있는지 확인합니다.