%EC%9D%98%20%EB%A9%94%EB%AA%A8%EB%A6%AC%20%EC%9A%94%EA%B5%AC%20%EC%82%AC%ED%95%AD.png)
ZFS의 많은 자료에서는 기본적으로 더 많은 메모리를 사용할 수 있을수록 더 좋다고 언급합니다. 그러나 RAM이 16GB인 노트북에서 ZFS를 사용할 계획입니다. ZFS에는 충분하지만 다음과 같은 기능을 사용할 수 있기를 바랍니다.사용컴퓨터는 파일을 제공하지 않습니다. 즉, 나는 애플리케이션이 파일 시스템 구현이 아닌 해당 메모리(적어도 대부분)를 사용할 수 있기를 원합니다.
따라서 질문으로 표현하자면, 메모리 사용량이 많고 IO에 민감하지 않은 앱도 실행하는 컴퓨터에서 ZFS가 실행될 때 ZFS의 메모리 요구 사항을 어떻게 해석해야 합니까?
답변1
2GB 메모리가 필요합니다.Linux의 ZFS FAQ.
매개변수를 설정하여 메모리 요구 사항을 조정할 수도 있습니다 zfs_arc_max
.
# cat /etc/modprobe.d/zfs.conf
options zfs zfs_arc_max=4294967296
/sys
설정을 표시하는 매개변수가 있습니다 zfs
.
/sys/module/zfs/parameters/zfs_arc_max
/sys/module/zfs/parameters/zfs_arc_min
다음 설정 을 사용하여 캐시할 파일 시스템을 설정할 수도 있습니다 zfs primarycache
.
# zfs set primarycache=[all none metadata] zpool/fs
답변2
ZFS는 캐시에 유용하다고 생각되는 만큼의 메모리를 사용하지만 수요가 있을 경우 이를 응용 프로그램에 다시 제공합니다.
다른 파일 시스템도 캐시만큼 필요한 만큼의 메모리를 차지합니다. 주요 차이점은 애플리케이션에 메모리를 즉시 사용할 수 있다는 것입니다. ZFS를 사용하면 약간의 지연이 있지만 ZFS가 해제할 수 있는 것보다 더 빠르게 메모리를 사용하려는 응용 프로그램이 있거나 보고된 여유 메모리(+버퍼/캐시)를 고려하여 시작을 거부하지 않는 한 별 차이가 없습니다. 사용할 수 있는 것이 충분하지 않은 경우.
이러한 경우 애플리케이션에 필요한 메모리 공간을 미리 알고 있는 경우 아크 최대 크기 조정 값을 설정하여 일부 RAM을 예약할 수 있습니다.
답변3
저는 8GB RAM이 있는 내 서버의 Linux에서 zfs를 실행하고 있습니다. 문서에 따르면 대부분의 램을 소비합니다. 그러나 메모리를 많이 사용하는 응용 프로그램을 실행할 때 성능 차이는 발견되지 않았습니다. 메모리가 필요하면 zfs는 기꺼이 메모리 사용을 포기하는 것처럼 보입니다. 그래도 터무니없는 메모리 사용률을 보는 데 익숙해지세요.