Build code server的選擇? - Linux

Table of Contents

※ 引述《RouterHsieh (醉臥美人膝,醒掌天下權)》之銘言:
: 首先感謝以上幾位前輩的意見,
: 稍微總結一下,在預算有限(無限的話就直接call Dell/HP/IBM了囧)的情況下,
: 若是在CPU/RAM/HD之間要做取捨,後兩者的重要性會高於CPU之上對吧?
: 我把我完整的配備列一下好了:
: (其實在這po這個好像有點怪怪的,阿不過電蝦版那邊都在討論拿來打電動看影片用的0rz)
: [AMD版]
: CPU: X6-1100T(3.3 GHz)
: MB: ASUS M-5A88M
: RAM: A-DATA DDR3 4G X4
: SSD: Micron M4 64GB(掛根目錄和swap)
: HD: Hitachi 7K3000 2TB X4(掛家目錄,用softraid跑raid5)

之前的經驗是 softraid RAID 0/1 的 效能都不錯
但是 RAID 5 需要 XOR,用softraid會耗上 CPU 效能 ...

故 softraid 跑 RAID 5 不建議

但是是否一定要 HW RAID 呢?

長久來看,build code server的佈署不該是找一台貴森森的Server然後用很久,

買一台中上的PC,然後每隔1~2新增一台,是一個比較好的策略。

如此,投資比較多的金額在HW Raid上面,必要性要斟酌。

: [Intel版]
: CPU: i7-960(3.2G, 4C/8T)
: MB: ASROCK X58 Extreme3
: RAM: A-DATA DDR3 4G X6
: SSD: 同上
: HD: 7K3000 2TB X2(做RAID1)
: 上面列出來的最大的差別大概就在記憶體和硬碟吧囧
: 因為照各位前輩的說法,CPU姑且不論,RAM和HD比較容易會是瓶頸。
: 偏偏一般家用市場能上超過四隻RAM的目前我只看到X58晶片組的囧
: 可是如果採用Intel的方案的話,那買硬碟的錢就不夠了,只能跑RAID1而已XDDD
: 另外我想再請教一下,在linux上(目前預計是跑ubuntu 10.04)做softraid會不妥嗎?
: 當然我知道效能不可能跟真正的硬體raid相比,但會不會比較不安全容易炸掉這樣XD
: 另外除了使用者的家目錄會掛在普通的HD上以外,
: 整個根目錄和SWAP我都打算放在SSD想說應該會快一點,
: 但不知道這樣的配置妥當與否?還是說SSD需要換大一點容量的呢?

其實要思考一個點,當 online人數 > 10 之後,再怎麼強壯的主機也會開始承受不住,
用久了,有擔當(XD)的 RD 會開始受不了,自己用PC建自己的server...

其實可以考慮製作一個公版 virtual machine的 build server image,讓每個人
PC都可以build code,長久下來資源使用率一定高於 centerlized server
(前提是你們的PC都不會太老...)


倒是有一點提醒一下,比較有規模的開發團隊會用上三種Server

Build Code server:速度快,數量多

一開始都是統一建制的server多,但是後來會轉為個人用PC為主...

SVN/File server:資料保全第一,速度其次,數量少

除了 SVN之外,另一個用途是拿來當作NFS/rsync,用來保全每個人開發當中
的檔案。比較需要RAID 5守護。

Auto build server:

比較不是用作一般RD開發使用,而是拿來當作 per revision check之用。
con-current user 數量不會太高,但是平均loading是最高的...

如果這是貴單位第一台Server,用途就比較全面,但是之後應該會分化成為專業用途。


對了,如果記憶體夠大,把 /tmp改成tmpfs,等於是ramdisk,應該會愉悅一些~

--
突發奇想:在 Center Build server,使用修改過的build script,去呼叫buildbot
然後把每台PC都當作 build slave...前提是每次修改範圍不大,所以每次執行時
都是去 vcs update之後apply patch,更猛的話去用distcc,自組Borg Collective XD

--

All Comments

Lucy avatarLucy2011-11-02
感謝前輩的指點,小弟是已經有做build image給大家了
Doris avatarDoris2011-11-07
目前看來這台server將來變成auto build的機會蠻大的XD
Wallis avatarWallis2011-11-08
至於distcc也是有想過,不過可能要等將來電腦夠多XDDD