Linux에 NFS Azure 파일 공유 탑재

Azure 파일 공유는 SMB(서버 메시지 블록) 프로토콜 또는 NFS(네트워크 파일 시스템) 프로토콜을 사용하여 Linux 배포에 탑재할 수 있습니다. 이 문서는 NFS를 사용하여 탑재하는 데 중점을 줍니다. SMB Azure 파일 공유 탑재에 대한 자세한 내용은 Linux에서 Azure Files 사용을 참조하세요. 각 프로토콜에 대한 자세한 내용은 Azure 파일 공유 프로토콜을 참조하세요.

적용 대상

파일 공유 유형 SMB NFS
표준 파일 공유(GPv2), LRS/ZRS No No
표준 파일 공유(GPv2), GRS/GZRS No No
프리미엄 파일 공유(FileStorage), LRS/ZRS No Yes

지원

현재 NFS 버전 4.1만 지원됩니다. NFS 4.1 공유는 FileStorage 스토리지 계정 유형 내에서만 지원됩니다(프리미엄 파일 공유만 해당).

NFS Azure 파일 공유는 4.1 프로토콜 사양의 대부분의 기능을 지원합니다. 모든 종류의 위임 및 콜백, Kerberos 인증, 전송 중 암호화와 같은 일부 기능은 지원되지 않습니다.

국가별 가용성

Azure NFS 파일 공유는 프리미엄 파일 스토리지를 지원하는 모든 지역에서 지원됩니다.

최신 목록은 지역별로 사용 가능한 Azure 제품 페이지에서 Premium Files Storage 엔터티를 참조하세요.

필수 조건

보안 전송을 사용하지 않도록 설정

  1. Azure Portal에 로그인한 다음 앞에서 만든 NFS 공유를 포함하는 스토리지 계정에 액세스합니다.

  2. 구성을 선택합니다.

  3. 보안 전송 필요사용 안 함을 선택합니다.

  4. 저장을 선택합니다.

    Screenshot of storage account configuration screen with secure transfer disabled.

탑재 옵션

NFS Azure 파일 공유를 탑재할 때 권장되거나 필요한 탑재 옵션은 다음과 같습니다.

탑재 옵션 권장되는 값 설명
vers 4 필수입니다. 사용할 NFS 프로토콜의 버전을 지정합니다. Azure Files는 NFS v4.1만 지원합니다.
minorversion 1 필수입니다. NFS 프로토콜의 부 버전을 지정합니다. 일부 Linux 배포판은 vers 매개 변수에서 부 버전을 인식하지 못합니다. 따라서 vers=4.1 대신 vers=4,minorversion=1을 사용합니다.
sec sys 필수입니다. NFS 연결을 인증할 때 사용할 보안 유형을 지정합니다. sec=sys를 설정하면 AUTH_SYS를 사용하여 NFS 작업을 인증하는 로컬 UNIX UID 및 GID를 사용합니다.
rsize 1048576 권장. 단일 NFS 읽기 작업에서 전송할 최대 바이트 수를 설정합니다. 1048576 바이트의 최대 수준을 지정하면 일반적으로 최상의 성능을 얻을 수 있습니다.
wsize 1048576 권장. 단일 NFS 쓰기 작업에서 전송할 최대 바이트 수를 설정합니다. 1048576 바이트의 최대 수준을 지정하면 일반적으로 최상의 성능을 얻을 수 있습니다.
noresvport 해당 없음 권장. 탑재 지점의 NFS 서버와 통신할 때 권한이 없는 원본 포트를 사용하도록 NFS 클라이언트에 지시합니다. noresvport 탑재 옵션을 사용하면 다시 연결한 후 NFS 공유의 가용성이 중단되지 않도록 할 수 있습니다. 고가용성을 달성하려면 이 옵션을 사용하는 것이 좋습니다.
actimeo 30~60 권장. actimeo를 지정하면 acregmin, acregmax, acdirminacdirmax가 모두 동일한 값으로 설정됩니다. 파일 및 디렉터리에 대한 특성 캐시가 너무 빨리 만료되므로 30초 미만의 값을 사용하면 성능이 저하될 수 있습니다. actimeo를 30~60초 사이로 설정하는 것이 좋습니다.

Azure Portal을 사용하여 NFS 공유 탑재

참고 항목

nconnect Linux 탑재 옵션을 사용하여 NFS Azure 파일 공유의 성능을 대규모로 향상시킬 수 있습니다. 자세한 내용은 NFS Azure 파일 공유 성능 향상을 참조하세요.

  1. 파일 공유를 만든 후에 해당 공유를 선택하고 Linux에서 연결을 선택합니다.

  2. 사용하려는 탑재 경로를 입력한 다음 스크립트를 복사합니다.

  3. 클라이언트 연결하고, 제공된 탑재 스크립트를 사용합니다. 스크립트에는 필수 탑재 옵션만 포함되어 있지만 다른 권장 탑재 옵션을 추가할 수 있습니다.

    Screenshot of file share connect blade.

이제 NFS 공유가 탑재되었습니다.

/etc/fstab을 사용하여 NFS 공유 탑재

Linux 서버 또는 VM이 부팅할 때마다 NFS 파일 공유가 자동으로 탑재되도록 하려면 Azure 파일 공유에 대한 /etc/fstab 파일에 레코드를 만듭니다. YourStorageAccountNameFileShareName을 사용자 정보로 바꿉니다.

<YourStorageAccountName>.file.core.windows.net:/<YourStorageAccountName>/<FileShareName> /media/<YourStorageAccountName>/<FileShareName> nfs vers=4,minorversion=1,_netdev,nofail,sec=sys 0 0

자세한 내용을 보려면 Linux 명령줄에서 man fstab 명령을 입력합니다.

연결 유효성 검사

탑재에 실패한 경우 프라이빗 엔드포인트가 올바르게 설정되지 않았거나 액세스할 수 없을 수 있습니다. 연결 확인에 대한 자세한 내용은 연결 확인을 참조하세요.

NFS 파일 공유 스냅샷

NFS Azure 파일 공유를 사용하는 고객은 NFS Azure 파일 공유 스냅샷을 만들고 나열하고 삭제할 수 있습니다. 이 기능을 사용하면 사용자가 전체 파일 시스템을 롤백할 수 있고 실수로 삭제되거나 손상된 파일을 복구할 수도 있습니다.

Important

스냅샷을 만들기 전에 파일 공유를 탑재해야 합니다. 새 NFS 파일 공유를 만들고 공유를 탑재하기 전에 스냅샷을 만드는 경우 공유에 대한 스냅샷을 나열하려고 하면 빈 목록이 반환됩니다. 첫 번째 탑재 전에 만든 스냅샷을 삭제하고 공유를 탑재한 후 스냅샷을 다시 만드는 것이 좋습니다.

제한 사항

NFS Azure 파일 공유 스냅샷에는 파일 관리 API(AzRmStorageShare)만 지원됩니다. 파일 데이터 평면 API(AzStorageShare)는 지원되지 않습니다.

Azure Backup은 현재 NFS 파일 공유에 대해 지원되지 않습니다.

AzCopy는 현재 NFS 파일 공유에 대해 지원되지 않습니다. NFS Azure 파일 공유에서 데이터를 복사하거나 스냅샷을 공유하려면 rsync 또는 fpsync와 같은 파일 시스템 복사 도구를 사용합니다.

NFS Azure 파일 공유 스냅샷은 모든 Azure 퍼블릭 클라우드 지역에서 사용할 수 있습니다.

스냅샷 만들기

Azure Portal, Azure PowerShell 또는 Azure CLI를 사용하여 NFS Azure 파일 공유의 스냅샷을 만들 수 있습니다. 공유는 최대 200개까지 공유 스냅샷 만들기를 지원할 수 있습니다.

기존 파일 공유의 스냅샷을 만들려면 Azure Portal에 로그인하고 다음 단계를 수행합니다.

  1. Azure Portal의 맨 위에 있는 검색 상자에 ‘스토리지 계정’을 입력하고 선택합니다.

  2. 스냅샷을 만들 NFS Azure 파일 공유가 포함된 FileStorage 스토리지 계정을 선택합니다.

  3. 데이터 스토리지>파일 공유를 차례로 선택합니다.

  4. 스냅샷을 만들 파일 공유를 선택한 다음, 작업>스냅샷을 선택합니다.

  5. + 스냅샷 추가를 선택합니다. 선택적 설명을 추가하고 확인을 선택합니다.

Screenshot of adding a file share snapshot.

파일 공유 스냅샷 나열

Azure Portal, Azure PowerShell 또는 Azure CLI를 사용하여 파일 공유의 모든 스냅샷을 나열할 수 있습니다.

기존 파일 공유의 모든 스냅샷을 나열하려면 Azure Portal에 로그인하고 다음 단계를 수행합니다.

  1. Azure Portal의 맨 위에 있는 검색 상자에 ‘스토리지 계정’을 입력하고 선택합니다.

  2. 스냅샷을 나열하려는 NFS Azure 파일 공유가 포함된 FileStorage 스토리지 계정을 선택합니다.

  3. 데이터 스토리지>파일 공유를 차례로 선택합니다.

  4. 스냅샷을 나열할 파일 공유를 선택합니다.

  5. 작업>스냅샷을 선택하면 파일 공유의 기존 스냅샷이 나열됩니다.

스냅샷 삭제

기존 공유 스냅샷은 덮어쓰여지지 않습니다. 명시적으로 삭제해야 합니다. Azure Portal, Azure PowerShell 또는 Azure CLI를 사용하여 공유 스냅샷을 삭제할 수 있습니다.

기존 파일 공유의 스냅샷을 삭제하려면 Azure Portal에 로그인하고 다음 단계를 수행합니다.

  1. Azure Portal의 맨 위에 있는 검색 상자에 ‘스토리지 계정’을 입력하고 선택합니다.

  2. 스냅샷을 삭제하려는 NFS Azure 파일 공유가 포함된 FileStorage 스토리지 계정을 선택합니다.

  3. 데이터 스토리지>파일 공유를 차례로 선택합니다.

  4. 하나 이상의 스냅샷을 삭제할 파일 공유를 선택한 다음, 작업>스냅샷을 선택합니다. 해당 파일 공유의 기존 스냅샷이 모두 나열됩니다.

  5. 삭제할 스냅샷을 선택한 다음 삭제를 선택합니다.

Screenshot of deleting file share snapshots.

NFS Azure 파일 공유 스냅샷 탑재

NFS Azure 파일 공유 스냅샷을 Linux VM(NFS 클라이언트)에 탑재하고 파일을 복원하려면 다음 단계를 수행합니다.

  1. 콘솔에서 다음 명령을 실행합니다. 다른 권장 탑재 옵션은 탑재 옵션을 참조하세요. 복사 성능을 향상시키려면 nconnect로 스냅샷을 탑재하여 여러 TCP 채널을 사용합니다.

    sudo mount -o vers=4,minorversion=1,proto=tcp,sec=sys $server:/nfs4account/share /media/nfs
    
  2. 사용 가능한 스냅샷을 볼 수 있도록 디렉터리를 /media/nfs/.snapshots로 변경합니다. .snapshots 디렉터리는 기본적으로 숨겨지지만 모든 디렉터리처럼 액세스하고 읽을 수 있습니다.

    cd /media/nfs/.snapshots
    
  3. .snapshots 폴더의 내용을 나열합니다.

    ls
    
  4. 각 스냅샷에는 복구 지점 역할을 하는 자체 디렉터리가 있습니다. 파일을 복원하려는 스냅샷 디렉터리로 변경합니다.

    cd <snapshot-name>
    
  5. 디렉터리의 내용을 나열하여 복구할 수 있는 파일 및 디렉터리 목록을 봅니다.

    ls
    
  6. 스냅샷의 모든 파일 및 디렉터리를 ‘복원’ 디렉터리로 복사하여 복원을 완료합니다.

    cp -r <snapshot-name> ../restore
    

이제 스냅샷의 파일 및 디렉터리를 /media/nfs/restore 디렉터리에서 사용할 수 있습니다.

다음 단계