La risposta è stata eseguire blockdev --setra
in uno script di avvio. Ogni volta che il sistema si riavvia, i valori read-ahead tornano ai valori predefiniti.
Nel mio caso ho appena capito quali fossero le mie unità logiche con blockdev --report
, quindi eseguo blockdev --setra
su ogni unità nella sezione "start" dello script di avvio di MongoDB in init.d.
Spero che questo aiuti chiunque altro abbia problemi simili.
Puoi farlo:
echo 'ACTION=="add", KERNEL=="xvdb", ATTR{bdi/read_ahead_kb}="64"' | sudo tee -a /etc/udev/rules.d/85-ebs.rules
echo 'ACTION=="add", KERNEL=="xvdc", ATTR{bdi/read_ahead_kb}="64"' | sudo tee -a /etc/udev/rules.d/85-ebs.rules
echo 'ACTION=="add", KERNEL=="xvdd", ATTR{bdi/read_ahead_kb}="64"' | sudo tee -a /etc/udev/rules.d/85-ebs.rules
echo 'ACTION=="add", KERNEL=="xvde", ATTR{bdi/read_ahead_kb}="64"' | sudo tee -a /etc/udev/rules.d/85-ebs.rules
echo 'ACTION=="add", KERNEL=="dm-0", ATTR{bdi/read_ahead_kb}="64"' | sudo tee -a /etc/udev/rules.d/85-ebs.rules
echo 'ACTION=="add", KERNEL=="dm-1", ATTR{bdi/read_ahead_kb}="64"' | sudo tee -a /etc/udev/rules.d/85-ebs.rules
echo 'ACTION=="add", KERNEL=="dm-2", ATTR{bdi/read_ahead_kb}="64"' | sudo tee -a /etc/udev/rules.d/85-ebs.rules
echo 'ACTION=="add", KERNEL=="md127", ATTR{bdi/read_ahead_kb}="64"' | sudo tee -a /etc/udev/rules.d/85-ebs.rules
dove KERNEL=="" è il tuo dispositivo HDD
quindi al riavvio tutto sarà impostato correttamente
rw 256 512 4096 0 42949672960 /dev/xvda1
rw 128 512 4096 0 214748364800 /dev/xvdc
rw 128 512 4096 0 214748364800 /dev/xvde
rw 128 512 4096 0 214748364800 /dev/xvdd
rw 128 512 4096 0 214748364800 /dev/xvdb
rw 128 512 4096 0 429227769856 /dev/md127
rw 128 512 4096 0 343379279872 /dev/dm-0
rw 128 512 4096 0 42920312832 /dev/dm-1
rw 128 512 4096 0 42920312832 /dev/dm-2