I am wondering whether the raid rebuild process will impact the system performance significantly or not. Will the server be able to respond with a reasonable delay during the rebuild process?

Another question came to my mind. Is there any way we can give priority to the disk rebuild process? For example, can we limit the rate at which the data is read/written? Of course, this may be risky because we may have another failure during the rebuild. Let us focus on the performance aspect and ignore this risk!

I am talking about Linux raid mdadm.


In my experience the system stays quite usable during the rebuild. Of course, this depends on your hardware and workload. Is it mostly read or is there usually lots of write activity? On the top of my hat I would say the rebuild slows things down around 20-30 percent.

You can tune the rebuild rate with dev.raid.speed_limit_{min,max} sysctl tunables. By default the minimum rebuild rate is 1000 kilobytes per second and the maximum 100 000 kilobytes per second. To tune them, use for example

sysctl -w dev.raid.speed_limit_max=10000

or to make changes permanent, use

echo dev.raid.speed_limit_max=10000 >>/etc/sysctl.conf and activate the changes with

sysctl -p

| improve this answer | |

It can impact it a lot of rebuild priority is high, 'reasonable' is subjective, it'll do best-efforts if set to high whereas if rebuild is set to low then it's the rebuild that gets best-efforts.

As for changing these priorities look at /proc/sys/dev/raid/speed_limit_max & /proc/sys/dev/raid/speed_limit_min.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.