新服務器配置日記
現在好像發現自己還是沒有養成寫博客的習慣,導致幾個禮拜之前想好的幾篇文章,現在也沒心情去總結了。還要堅持...
轉回正題,前幾個禮拜社區(http://oss.lzu.edu.cn)新買了一台服務器,用於替換之前老的服務器。服務器上的存儲很給力,西數萬轉450G*2, 西數黑盤1T*6, 兩塊陣列卡(rocketRAID 2720,不要嘲笑,預算本來就不夠,好的raid卡太貴了,只能這樣了),那就把兩個450G的做成raid1,用於存儲系統關鍵數據,6塊1T的做成raid5,用於存儲其他數據。
在配這個服務器之前就知道這個系統不好裝,因為kernel不支持這個raid卡的驅動,需要手動打進去。不過那又能怎麼樣,硬著頭皮上呗!
首先做一個系統啟動盤(這裡是Centos 6.4 x86_64),啟動系統,點擊安裝,結果到分區的時候,兩個raid沒識別出來,好吧,猜到了。
首先到這裡下載官方驅動程序及安裝手冊:
http://www.highpoint-tech.com/USA_new/product_support_sas6.htm
剛開始按照官方給的安裝腳本去做,結果碰到一大堆問題。沒辦法,看了一下安裝腳本具體干的東西,於是開始手動安裝之旅。
下面是詳細步驟:
1.准備兩個U 盤,其中 A 盤為系統啟動鏡像(建議拿centos-mininal 來做) ,B 盤存儲驅動包。
2.把 A 盤和B 盤都插到服務器上,啟動服務器,按F8 進入啟動項選擇,選擇 A 盤,進入字符安裝界面。
3.在選完系統語言和鍵盤類型後,安裝程序進入圖形界面。這個時候請不要點下 一步,按Ctrl+Alt+F2 進入終端,掛載B 盤,這裡假設掛載在/drv 下。
4.解壓驅動包到當前目錄下:
tar -xvf ***.tgz
5.進入解壓後的目錄,運行以下命令:
gzip -dc modules.cgz |cpio -idum
6.然後,你會得到一個rr272x_1x.ko的驅動文件,然後運行以下命令,裝載這個驅動:
modprobe sd_mod
insmod rr272x_1x.ko
7.裝載驅動成功後,就可以切換回圖形安裝界面,正常安裝系統就ok。但是在 系統安裝完,提示你要重啟系統的時候,先不要重啟,按 Ctrl+Alt+F2 再次進入 終端。
8.把你之前解壓的驅動包全部復制到/mnt/sysimage/tmp 下,然後運行以下命 令:
chroot /mnt/sysimage
9.chroot後,運行如下命令:
mv /boot/initramfs-`uname -r`.img /boot/initramfs-`uname
-r`.img.save
cp rr272x_1x.ko /lib/modules/`uname -r`/kernel/driver/scsi/
depmod -a
dracut --add-drivers rr272x_1x.ko -f /boot/initramfs-`uname -r`.img
10.然後就可以umount 之前掛載的U 盤,然後重啟,這樣就可以正常識別陣列卡 了。
注意:這裡只是介紹安裝系統的時候,插入陣列卡的驅動。如果是升級內核, 還要按照上面的步驟再次把陣列卡驅動打到initramfs 文件裡。
最後,還需要注意的一點,是在進行分區時候,如果用了lvm,一定要把boot分區放到lvm之外,因為現有的grub不識別lvm,那麼系統也就無法起來了。google了一下,好像新版的grub是可以識別lvm的,但是我不敢在服務器上用,還是老實點為好。
好了,系統搭建好了,那麼給它做一個性能測試和壓力測試呗!
到http://ltp.sourceforge.net/下載ltp套件,同時我想監測服務器在進行壓力測試的時候的穩定變化,那就到http://www.lm-sensors.org/下載lm-sensors來獲取主板上的溫度。
但是我又不想每次手動去運行lm-sensors來獲取溫度,要知道壓力測試可是會持續一兩天的,那就寫個腳本呗,如下:
[plain]
while true
do
sleep 30
time=`date +%T`
tmp=`sensors |awk -F ":" '/temp/{print substr($2,index($2,"+")+1,7)}'`
for value in $tmp
do
time=$time","$value
done
echo $time
done
然後為了不讓我退出遠程會話的時候,同時把測試進程給干掉了,那就安裝一個screen就ok。
好了,萬事具備,開始跑:
先開啟溫度記錄腳本:
sh get_temp.sh &
然後開始運行ltp:
./runltp -c 100 -x 2 -D 100,1000,0,1 -m 100,1000,12000,0 -d /var -p -l result.log -g result.html
然後就可以等結果了,這裡不再講述ltp的用法,可以參考這裡http://ltp.sourceforge.net/documentation/how-to/ltp.php
測試結果還是挺滿意的,溫度變化不大。
如果想要測試硬盤讀寫小文件塊的性能,可以用dd:
dd if=/dev/zero of=/var/test bs=10k count=10240
如果需要,可以強制跳過硬盤cache,直接寫到硬盤,看其性能。可以在dd後加conv=fsync,當然看io等待率,肯定少不了sar啦,這裡就不再細說!