Azure HPC Cache에서 파일 쓰기 백업 사용자 지정하기

HPC Cache 사용자는 flush_file.py 유틸리티를 사용하여 캐시가 요청 시 백 엔드 스토리지에 특정 개별 파일을 쓰도록 요청할 수 있습니다. 이 유틸리티는 Linux 클라이언트 머신에 설치하고 사용하는 별도로 다운로드된 소프트웨어 패키지입니다.

이 기능은 캐시를 탑재하지 않는 시스템에서 가능한 한 빨리 캐시된 파일의 변경 내용을 사용할 수 있게 하려는 상황에 맞게 설계되었습니다.

예를 들어 Azure HPC Cache를 사용하여 클라우드에서 컴퓨팅 작업의 크기를 조정할 수 있지만 데이터 집합을 온-프레미스 데이터 센터에 영구적으로 저장할 수 있습니다. Azure HPC Cache로 만든 변경 내용에 따라 데이터 센터에서 컴퓨팅 작업이 발생하는 경우 이 유틸리티를 사용하여 클라우드 태스크에서 생성된 출력 또는 변경 내용을 온-프레미스 NAS 스토리지로 다시 "푸시"할 수 있습니다. 이렇게 하면 온-프레미스 컴퓨팅 리소스에서 거의 즉시 새 파일을 사용할 수 있습니다.

사용자 지정 쓰기 저장 및 플러시 중에서 선택

Azure HPC Cache에 기본 제공되는 "스토리지 대상 플러시" 옵션을 사용하여 데이터를 다시 작성하도록 강제할 수 있지만 이 방법은 모든 상황에 적합하지 않을 수 있습니다.

  • 수정된 모든 파일을 스토리지 시스템에 다시 쓰는 데는 데이터의 양과 네트워크 링크의 속도에 따라 온-프레미스 시스템에 다시 연결하는 데 몇 분 또는 몇 시간이 걸릴 수 있습니다. 또한 작성할 완료한 파일만 선택할 수 없습니다. 현재 현재 수정 중인 파일은 이 계산에 포함됩니다.

  • 캐시는 플러시 프로세스 중에 해당 스토리지 대상에서 일부 요청을 처리하는 것을 차단할 수 있습니다. 동일한 스토리지 대상에 있는 파일을 사용하는 다른 컴퓨팅 클라이언트가 있는 경우 처리를 지연시킬 수 있습니다.

  • 이 작업을 트리거하려면 최종 사용자에게 없는 Azure Resource Manager에 대한 기여자 액세스 권한이 필요합니다.

예를 들어 동일한 HPC Cache 스토리지 대상에 있는 데이터를 사용하는 여러 병렬(겹치지 않는) 컴퓨팅 작업을 가질 수 있습니다. 한 작업이 완료되면 해당 작업의 출력을 캐시에서 백 엔드의 장기 스토리지로 즉시 작성하려고 합니다.

다음 세 가지 옵션이 있습니다.

  • 캐시된 파일이 캐시에서 자동으로 다시 기록될 때까지 기다리지만 파일이 완전히 다시 기록되기 전에 1시간 이상 캐시에 있을 수 있습니다. 타이밍은 네트워크 링크 성능 및 파일 크기와 같은 다른 요인과 함께 캐시 사용 모델의 쓰기 저장 지연에 따라 달라집니다. (쓰기 저장 지연에 대한 자세한 내용은 캐시 사용 모델 이해 )를 참조하세요.

  • 전체 스토리지 대상에 대해 캐시된 파일을 즉시 플러시하지만 이 스토리지 대상의 데이터를 사용하는 다른 컴퓨팅 작업이 중단됩니다.

  • 이 사용자 지정된 쓰기 저장 유틸리티를 사용하여 캐시에 특별한 NFS 요청을 보내 원하는 특정 파일만 다시 작성합니다. 이 시나리오는 다른 클라이언트에 대한 액세스를 방해하지 않으며 컴퓨팅 작업의 어느 시점에서든 트리거할 수 있습니다.

쓰기 저장 유틸리티 정보

쓰기 저장 유틸리티에는 캐시에서 장기 스토리지 시스템으로 쓸 개별 파일을 지정하는 데 사용할 수 있는 스크립트가 있습니다.

스크립트는 쓸 파일의 입력 스트림과 스토리지 대상 내보내기의 캐시 네임스페이스 경로 및 HPC Cache 탑재 IP 주소를 사용합니다.

스크립트는 특수 인수를 사용하도록 설정된 NFSv3 "커밋" 호출을 사용합니다. Linux nfs 공통 클라이언트는 이러한 인수를 적절하게 전달할 수 없으므로 flush_file.py 유틸리티는 Python 라이브러리의 NFS 클라이언트 에뮬레이터를 사용하여 HPC Cache NFS 서비스와 통신합니다. 라이브러리에는 컴퓨팅 클라이언트의 Linux 커널 기반 NFS 클라이언트에 있을 수 있는 모든 제한 사항을 무시하는 필요한 모든 항목이 포함되어 있습니다.

이 기능을 사용하려면 다음을 수행해야 합니다.

GitHub 리포지토리의 flush_file.py 스크립트 설치 및 사용에 대해 자세히 알아봅니다.