이번에 하드를 새로 구매해서 10TB 하드를 4개 보유하게 되었는데, 기본 레이드에서 RAID 5 변경을 시도했습니다
용량이 커서 그런지 모르겠는데 변환 작업이 1시간에 0.4% 오르는 걸 보고 이건 안되겠다 싶어 검색을 좀 해보니 방법이 있었네요
이 작업을 하고 나니 1시간에 0.4% 오르던 변환 작업이 8초에 0.1%씩 오릅니다
SSH로 접속해서 루트 권한을 먼저 획득합니다 (sudo -i)
cat /proc/mdstat
입력하여 현재 변환/검사 중인 md#을 확인하세요.
저 같은 경우에는 md4가 raid5 변환 작업을 하고 있는 것을 확인할 수 있고, finish=7712.8분인 것을 확인할 수 있습니다
cat /proc/sys/dev/raid/speed_limit_min
입력하여 어떤 숫자가 나오는지 확인하세요
저는 300,000이 나왔네요
echo 300000 > /proc/sys/dev/raid/speed_limit_min
1000K/sec는 1MB/s 입니다. 저는 현재 서버에서 레이드 변환 작업 외에 아무 작업도 하지 않기 때문에 300000으로 설정했습니다.
300000으로 설정한다는 의미는 레이드 변환 작업에 하드디스크 속도를 300MB/s 까지 사용할 수 있게 한다는 의미입니다
작업하는 하드가 많을 경우 (RAID 5 디스크 수리, 디스크 추가 등 여러 하드디스크를 사용하는 경우) 1000000까지 올리셔도 됩니다
현재 서버에서 다른 작업을 하고 있거나 누군가 접속해서 데이터를 읽어야 한다는 상황이라면 50000 (50MB/s)정도를 추천드립니다.
cat /proc/sys/dev/raid/speed_limit_min
이 명령어를 다시 입력하여 앞 단계에서 변경한 값이 정상 적용되었는지 확인합니다
echo 16384 > /sys/block/md4/md/stripe_cache_size
md4 부분은 처음에 확인했던 번호를 입력하세요. 틀린 번호를 입력한다면 No such file or directory 오류가 발생합니다
변환 작업에 더 많은 메모리를 사용할 수 있게 합니다
cat /proc/mdstat
이제 다시 처음 명령어를 실행해 봅니다
speed 값이 처음보다 증가했는지 확인합니다.
저는 12,114K/sec 에서 128,481K/sec으로 10배이상 증가했네요
시놀로지 작업 관리자에서도 하드디스크 사용량의 대부분을 레이드 변환 작업에 할당하는 것을 확인할 수 있습니다.
레이드 변경하는데 12MB/s 만을 사용하다가 명령어를 몇개 쳐주니 128MB/s를 사용하게 되었습니다
도움 되셨길 바랍니다. 혹시라도 문제가 있으시면 댓글 남겨주세요
߿ ũ ϴ°
iscsi ٴ Ҿ Ÿ ֽϴ.
ּȭ Ͽ ϰ Ǿִ° Ǯ Ͽ
ִ°,,
ó ̵ ȯ ӵ ̷ ƴϰ
ϸ ̵ ȯ ۾ ϵũ 뷮 ϰ Ǵµ,
echo 50000 > /proc/sys/dev/raid/speed_limit_min
ɾ ȯ ۾ ִ ִ ϵũ ӵ ָ ˴ϴ.
50000 ԷѴٸ 50000K/sec 50MB/s ̹Ƿ ȯ ۾ 50MB/s ̻ ʰ ˴ϴ
˱δ (̵5 ϵ-1) x ϵӵ ˰ ֽϴ
иƼ Ͽ ѹ ϹǷ ٰ Ƽ.
ó Ʈ ̵忡 ñϳ.
մϴ
DS918+
raid 5 SHR (ϵ Ͽ raid 5 )
Ǿ 5gpbs ī
SMB 4GB (12GB) ۼӵ Ʈ
raid 0 Raid 5 SHR ӵ ;)
ī 5Ⱑ ӵ 3.2Ⱑ (400MB/s) ɴϴ
raid 0 : ʹݿ ij÷ 400MB/s ٰ ij 350MB/s ϶
raid 5, SHR : ʹݿ ij÷ 400MB/s ٰ ij 350MB/s ϶
ϵ ӵ 170~180 MB/s ΰ
иƼ Ⱑ ߰Ǿ ӵ϶ ٰ
---------------------------------------------------------------------------------------------------------
echo "<before>"
echo "cat /proc/sys/dev/raid/speed_limit_max"
cat /proc/sys/dev/raid/speed_limit_max
echo "cat /proc/sys/dev/raid/speed_limit_min"
cat /proc/sys/dev/raid/speed_limit_min
echo "cat /sys/block/md2/md/stripe_cache_size"
cat /sys/block/md2/md/stripe_cache_size
echo "cat /sys/block/md2/queue/read_ahead_kb"
cat /sys/block/md2/queue/read_ahead_kb
echo " "
echo 1000000 > /proc/sys/dev/raid/speed_limit_max
echo 1000000 > /proc/sys/dev/raid/speed_limit_min
echo 32768 > /sys/block/md2/md/stripe_cache_size
echo 32768 > /sys/block/md2/queue/read_ahead_kb
echo "<after>"
echo "cat /proc/sys/dev/raid/speed_limit_max"
cat /proc/sys/dev/raid/speed_limit_max
echo "cat /proc/sys/dev/raid/speed_limit_min"
cat /proc/sys/dev/raid/speed_limit_min
echo "cat /sys/block/md2/md/stripe_cache_size"
cat /sys/block/md2/md/stripe_cache_size
echo "cat /sys/block/md2/queue/read_ahead_kb"
cat /sys/block/md2/queue/read_ahead_kb
cat /proc/mdstat