제안된 시스템의 ARC 크기 제한

제안된 시스템의 ARC 크기 제한

5 x enterprise 12Gps SSD서버 의 내부 저장소로 사용하는 풀이 있습니다 proxmox. 이 풀은 VM과 컨테이너를 세우는 데 사용됩니다. 문제는 그것이 내 사용 가능한 RAM을 많이 잡아먹고 있다는 것입니다 192G. 요약은 다음과 같습니다. 여기에 이미지 설명을 입력하세요

보시다시피 Max size is 94.4GiB!!!

내 질문은: 이것에 대한 최적의 값은 무엇입니까? 어떻게 바꾸나요?

이것은 내 프로덕션 서버이며 프로세스를 100% 확신하고 싶습니다. (이미 봤어여기하지만 내 서버도 호 크기를 준수하지 않습니다. :()

어떤 도움이나 제안이라도 대단히 감사하겠습니다!

답변1

다음을 수행하여 ARC 크기를 지속적으로 줄일 수 있습니다.

다음 이름의 파일을 편집하거나 추가하세요.

/etc/modprobe.d/zfs.conf

다음과 같이 줄을 추가합니다. 이 예제 라인은 1GB의 메모리에 대한 것입니다. 따라서 크기를 조정하려는 공연 수를 숫자에 곱하십시오.

options zfs zfs_arc_max=1073741824

파일을 저장한 후 명령을 실행하십시오.

업데이트-initramfs -u -k 모두

그런 다음 재부팅하여 변경 사항을 적용하십시오.

답변2

기본적으로 ARC는 시스템 RAM의 최대 50%를 사용합니다. 그러나 ARC는 동적입니다. 시스템에 메모리 부족이 증가하면 자동으로 조정됩니다.

따라서 실제 시스템 문제가 발생하거나 RAM이 너무 커서 캐시가 너무 많아 실질적인 이점이 없는 시스템에서만 제한을 두는 것이 좋습니다.

즉, zfs_arc_max조정 가능 항목을 통해 ARC를 수동으로(그리고 동적으로) 제한할 수 있습니다. 그러나 단순히 현재 ARC 사용량 이하로 줄이면~ 아니다즉시 메모리를 해제합니다. 로부터매뉴얼 페이지:

zfs_arc_max는 몇 가지 주의 사항에 따라 동적으로 변경될 수 있습니다. 실행 중에는 다시 0으로 설정할 수 없으며 현재 ARC 크기 아래로 줄이면 메모리 압박으로 인해 축소가 발생하지 않고 ARC가 축소되지 않습니다.

ARC 메모리를 즉시 해제해야 하는 경우 위에서 조정 가능 항목을 설정한 다음 를 통해 수동으로 캐시를 삭제할 수 있습니다 echo 3 > /proc/sys/vm/drop_caches.

/etc/modprobe.d/zfs.conf또는 시스템을 통해 영구적으로 설정하고 재부팅할 수도 있습니다 .

관련 정보