2015年12月14日 星期一

一些有關raid-check用的指令和參數

一些有關raid-check用的指令和參數

每秒觀看各CPU內核使用率
#watch -n1 mpstat -P ALL -u 1 10000

每秒觀看目前Raid的狀態
#watch -n1 cat /proc/mdstat

影響raid-check運行速度的參數
#sysctl dev.raid.speed_limit_min
#sysctl dev.raid.speed_limit_max

目前Software Raid的錯誤數 (Number)
#echo /sys/block/md1/md/mismatch_cnt
目前raid-check的動態 (Check/Idle)
#echo /sys/block/md1/md/sync_action

raid-check的設定檔
#vi /etc/sysconfig/raid-check
raid-check的執行檔 
#/usr/sbin/raid-check
raid-checkcronjob
/etc/cron.d/raid-check

改變目前speed_limit_max speed_limit_min
#echo 200000 > /proc/sys/dev/raid/speed_limit_max
#echo 5000 > /proc/sys/dev/raid/speed_limit_min
或是
#sysctl -w dev.raid.speed_limit_max=100000
#sysctl -w dev.raid.speed_limit_min=1000
但這個都是暫時性的,要永久性請修改 /etc/sysctl.conf,增加以下兩句
#vi /etc/sysctl.conf
增加
dev.raid.speed_limit_max = 100000
dev.raid.speed_limit_min = 50000
   

平時使用 #raid-check 執行檢查,又或是依照Cronjob設置的時間去做檢查。
又或者 #echo check > /sys/block/md1/md/sync_action 去啟動檢查

要停止時,可使用 #echo idle > /sys/block/md1/md/sync_action 去暫停。

可對raid-check進行一些參數上設置
#vi /etc/sysconfig/raid-check
範例
ENABLED=yes
CHECK=check
NICE=low
# To check devs /dev/md0 and /dev/md3, use "md0 md3"
CHECK_DEVS=""
REPAIR_DEVS=""
SKIP_DEVS=""

裡面有個NICE參數,和其他Linux指令的NICE參數一樣,可以設定IO讀寫時的Priority。預設值為low,最低級為Idle

結論:
raid-check所需要用到的CPURAM並不多,以R410作為實驗例子,以NICE=lowspeed_limit_max=5000000去運行,實際運作是230MB/sCPU最多用到99,但是只會用到其中一核。

注意#echo /sys/block/md1/md/mismatch_cntraid-check並不會主動修復一致性檢查中發現的不同步問題,要使用者自行修復。




Google