대부분의 사람들은 어떤 ZFS 풀, vdev 및 데이터 세트 속성을 사용해야 합니까?

대부분의 사람들은 어떤 ZFS 풀, vdev 및 데이터 세트 속성을 사용해야 합니까?

ZFS에는 구성 가능한 다양한 등록 정보가 있습니다.수영장용,vdev를 위한그리고데이터 세트의 경우. 이들 중 다수는 언제든지 변경할 수 있지만 일부는 생성 시에만 설정할 수 있습니다(또는 나중에 작성된 데이터에만 영향을 미침).~해야 한다실제로는 생성 시 설정됩니다).

멍청한 놈으로서 저는 다양한 질문을 검색했고 많이 설정하도록 제안된 여러 속성을 발견했습니다.

분명히 각 사용 사례에는 어떤 속성이 적합한지에 대해 약간의 차이가 있지만 대부분의 zfs 사용자가 사용해야 하는 공통 속성 세트가 있는 것 같습니다. 나는 적극적인 이유가 있어야 하는 속성에 대해 생각하고 있습니다.~ 아니다그들을 사용합니다. 그것들은 무엇이며 그 이유는 무엇입니까?

답변1

(면책조항: ZFS 초보자로서 이것은 지금까지의 나의 이해일 뿐이며 다른 사람들로부터 보다 완전하고 신뢰할 수 있는 정보를 얻을 수 있는 원동력이 됩니다.)

풀 속성

데이터세트 속성

이는 루트 파일 시스템의 스위치를 사용 zfs create -o하거나 스위치를 통해 지정할 수 있습니다 (기본적으로 다른 파일 시스템에 상속됨).-Ozpool create

  • xattr=sa

    이는 실질적인 단점 없이 xattr의 성능을 크게 향상시킵니다. (Linux에서만 사용 가능지금은).

  • dnodesize=auto

    이 속성은 을 사용할 때 사용해야 합니다 xattr=sa. 이것을 사용하지 않는 주된 이유는필수 ZFS 기능을 지원하지 않는 시스템과 상호 작용.

  • relatime=on

    읽기 전용 상호 작용에서도 파일 액세스 시간을 추적하는 데는 비용이 매우 많이 들 수 있습니다. 속성 relatime의 덜 정확한 정보를 희생하여 이러한 업데이트의 세분성/빈도를 크게 줄입니다 atime(일부 일반적으로 필요한 불변성을 유지하면서). 이것은 오랫동안 Linux의 거의 모든 파일 시스템에 대한 기본값입니다. 정확한 정보가 필요한 경우에는 atime이 기능을 켜지 마십시오. 그것이 atime결코 필요하지 않다는 것을 안다면 atime=off더 나은 성능을 제공합니다.

  • normalization=formD

    이렇게 하면 파일 이름이 항상 동일한 방식으로 정규화됩니다. 주요 부작용으로 이는 파일 시스템이 파일 이름을 UTF-8 인코딩으로 처리하고 다른 파일 시스템이 허용하는 특정 "깨진" 이름을 가진 파일 이름을 더 이상 저장할 수 없음을 의미합니다. 이것이 바람직하지 않다면, 이것을 생략하세요.

  • compression=lz4

    현대 하드웨어에서는 압축 비용이 너무 낮아 사실상 장점만 있다는 것이 합의된 것 같습니다. 이미 과도하게 압축된 데이터를 주로 저장하는 데이터 세트에서는 이 기능을 끄는 것이 좋습니다.

  • 아니요recordsize

    기본 레코드 크기는 많은 사용 사례에서 좋은 중간 지점인 것처럼 보이지만 데이터베이스와 같은 일부 사용 사례에서는 특정 값이 도움이 될 수 있습니다.

출처

관련 정보