當一個磁盤fail或者從一個陣列中踢掉時,重建陣列需要花費相當的時間。在我的陣列上,重建一個磁盤就要5個小時。
有沒有辦法減少重建的時間?甚至只用5秒鐘?
可以使用bitmaps文件,默認情況下該選項非使能的。bitmap文件用於記錄陣列中需要同步和重建的信息。
這項功能非常好,在機器經常重啟時,磁盤無法被正常識別,陣列就降級了。而添加一個熱備盤到陣列並完成重建則需要5個小時以上的時間。
使用bitmap選項在重建陣列的時候將會快很多。
怎麼樣,這項功能很酷吧?
bitmap文件分為兩種類型
1、internal:存放在陣列內部
2、external:放在本陣列之外的磁盤上
internal bitmap放在集成在陣列上。更新bitmap可能會影響陣列的性能。然而我沒有感覺到性能的降低。
external bitmap文件必須存放在本陣列之外,可使用的文件系統是ext2, ext3。這就需要有一個額外的設備保存bitmap文件。
外部bitmap文件可能會減少對陣列性能的影響,但需要額外的維護。
開啟內部bitmap
mdadm --grow /dev/md5 --bitmap=internal
外部bitmap
mdadm --grow /dev/md5 --bitmap=/some/directory/somefile
這可能會有些性能損失,但在順序讀寫的時候似乎沒有什麼影響。
對大多數人來說,我建議使用內部bitmap,除非你確實知道必須使用外部bitmap。
本欄目更多精彩內容:http://www.bianceng.cn/OS/Linux/