9장. FS-Cache 시작하기

FS-Cache는 파일 시스템이 네트워크를 통해 검색된 데이터를 가져와 로컬 디스크에 캐시하는 데 사용할 수 있는 영구적인 로컬 캐시입니다. 이를 통해 네트워크를 통해 마운트된 파일 시스템의 데이터에 액세스하는 사용자의 네트워크 트래픽을 최소화할 수 있습니다(예: NFS).

9.1. FS-Cache 개요

다음 다이어그램은 FS-Cache 작동 방법에 대한 간략한 설명입니다.

그림 9.1. FS-Cache 개요

FS-Cache 개요

FS-Cache는 시스템 관리자와 사용자에게 가능한 한 투명하도록 설계되었습니다. 솔라리스의 cachefs 와 달리 FS-Cache를 사용하면 과도한 마운트된 파일 시스템을 만들지 않고도 서버의 파일 시스템이 클라이언트의 로컬 캐시와 직접 상호 작용할 수 있습니다. NFS를 사용하면 마운트 옵션이 클라이언트에 FS-cache가 활성화된 NFS 공유를 마운트하도록 지시합니다. 마운트 지점을 사용하면 두 커널 모듈(fs cache 및 cachefiles ) 에 대한 자동 업로드가 발생합니다. cachefilesd 데몬은 커널 모듈과 통신하여 캐시를 구현합니다.

FS-Cache는 네트워크를 통해 작동하는 파일 시스템의 기본 작업을 변경하지 않으며, 이는 데이터를 캐시할 수 있는 영구 공간으로 파일 시스템을 제공하기만 하면 됩니다. 예를 들어 클라이언트는 FS-Cache가 활성화되어 있는지 여부에 관계없이 NFS 공유를 계속 마운트할 수 있습니다. 또한 캐시된 NFS는 파일이 부분적으로 캐시될 수 있으므로 캐시에 맞지 않는 파일을 처리할 수 있으며 완전히 읽을 필요가 없습니다. FS-Cache는 클라이언트 파일 시스템 드라이버에서 캐시에 발생하는 모든 I/O 오류도 숨깁니다.

캐싱 서비스를 제공하려면 FS-Cache에 캐시 백엔드 가 필요합니다. 캐시 백엔드는 캐시 파일인 캐싱 서비스를 제공하도록 구성된 스토리지 드라이버입니다. 이 경우 FS-Cache에는 bmap 및 확장 속성(예: ext3)을 캐시 백엔드로 지원하는 마운트된 블록 기반 파일 시스템이 필요합니다.

FS-Cache 캐시 백엔드에 필요한 기능을 지원하는 파일 시스템에는 다음 파일 시스템의 Red Hat Enterprise Linux 9 구현이 포함됩니다.

  • ext3 (Extended attributes enabled 포함)
  • ext4
  • XFS

FS-Cache는 네트워크를 통해 일반적으로 모든 파일 시스템을 캐시할 수 없습니다. 공유 파일 시스템의 드라이버는 FS-Cache, 데이터 스토리지/retrieval, 메타데이터 설정 및 유효성 검사와 상호 작용할 수 있도록 변경해야 합니다. FS-Cache는 지속성을 지원하기 위해 캐시된 파일 시스템의 인덱싱 키와 일관성 데이터를 필요로 합니다. 파일 시스템 개체와 일치하기 위한 인덱싱 키 및 일관성 데이터를 사용하여 캐시 오브젝트가 계속 유효한지 확인합니다.

참고

Red Hat Enterprise Linux 9에서 cachefilesd 패키지는 기본적으로 설치되지 않으므로 수동으로 설치해야 합니다.