身為一個程式魔人,在家裡跑個伺服器也是很合理滴~

thumbnail

最近玩了 ASP.NET Core、CentOS,驚喜發現 .NET Core 跨到 Linux 平台後硬體要求大降,1GB RAM 就跑得動,CPU 要求也不高,便有在家裡弄台伺服器跑家用小程式(像是救救菜英文)的衝動。在家裡架站的念頭想存在已久,但始終卡在耗電這關。依當年實測(參考:電器耗電知多少?),桌上型電腦耗電 110 瓦起跳(不含螢幕),筆電耗電約十分之一,但有鍵盤螢幕拿來當伺服器有點浪費,C/P 值不佳。此外,我不愛散熱風扇,長年 24 小時運轉,風扇要耗電有噪音會集塵容損壞,雖然都不是嚴重問題,但就跟手機螢幕刮痕一樣,其實不影響日常使用,純粹是奇蒙子問題。在 CPU 門檻降低之後,克服顧慮的理想選項出現了 - 無風扇的低耗電迷你電腦。

對迷你電腦的認識來自 Andrew 兩年前的文章 [敗家] 對岸的迷你 PC (i5-5250U), 當自用 server 的好選擇,在那之後我便有持續關注,經過一番評估,耗電只有 6W 的四核賽揚 - N3150 深得我心,其耗電跟電視機上盒相近,甚至不及一顆省電燈泡的用量,長期無風扇使用應沒問題。至於 N3150 迷你電腦,不含記憶體、SSD 及 WiFi,在淘寶台幣 2,600 元就能入手,最後我選了 4G RAM + 64G SSD + WiFi 組合,含集運費用約 4,600。這台在台灣網拍也找得到,但空機價就要 4000,自己淘寶還是便宜一些。註:迷你電腦沒有淘寶官方直送,走民間集運時要勾選特貨(包含電池、粉末),否則查到要罰錢。

Andrew 的敗家經驗踩到一些雷,我這回選套餐也是想避開前車之鑑,開箱插上電就能開機,還預先灌好簡體版 XP,好壞立曉,省事很多。檢查 CPU、記憶體、SSD、網路規格無誤,開始動手改造。

機體內部構造如下圖。1) 是 CPU 的鋁製散熱鰭片,上面加了一塊鋁塊,再與上蓋 2) 的導熱矽膠相貼,將熱導到鋁製底板。3) 是 SanDisk 64 GB SSD 4) 為 M.2 介面無線網卡 5) 是 4GB RAM,最大可擴充到 8GB,但應該不需再擴充。6) 附有 SATA 接頭,可再擴充 SATA 硬碟或 SSD。拆機是為了移除網卡,伺服器會走有線,二話不說把網卡連同天線座都拆了,省點電也少點輻射,還多兩個孔通風。

thumbnail

下一步是重灌作業系統,作業系統當然是 CentOS 囉~ 下載 CentOS Minimal ISO,用 Rufus 製作開機 USB 碟。沒做好功課,這裡試了幾次才成功,Partition scheme 要選 GPT、Target system 記得選 UEFI,不然 USB 碟雖然可開機,會卡在"/dev/root does not exist"。

順利裝好 CentOS,來做個壓測觀察耗電與溫度。作業系統我選擇最小安裝,需要一些額外手續將管理工具補齊:

一切就緒,開始壓力測試。無負載時 CPU 溫度約 41 - 42度,用 stress --vm 4 --vm-bytes 512M 開四條 Worker 各吃 512MB 記憶體,順利把四核的 CPU% 推到 95% 之上,CPU 溫度從 42 度上升到近 50 度,外殼 34 度,散熱鰭片 37 度。觀察十來分鐘,都沒超過 50 度,就此打住。評估散熱系統還有改善空間(換散熱膏、改銅製散熱器、加大導熱矽膠...),但依這溫度與設備價值,沒必要在上面多花功夫。

至於耗電量,無負載狀況耗電 6-7W,CPU 滿載時耗電不到 11W,若以 7W 經常用電 1000 度夏日費率級距計算,一天 24h 耗電 0.168 度,每月電費可控制在 30 元以下,還可以接受。

就醬,一台省錢又省電的家用伺服器誕生,可以寫些好玩的應用。 至於耐用性及可靠度如何,後面再跟大家報告,請持續觀注本部落格順手訂閱並按下旁邊的小鈴噹

Use mini pc as CentOS home server


Comments

# by 機房頹廢雜工

占美的n3150小主機嗎? 我已經讓他在線上不關機將近三年了

# by Jeffrey

to 機房頹廢雜工,正是,感謝經驗分享,讓我信心大增。

# by HiTeQ

關於 [CPU溫度] 有疑問 雖然,一般來說 CPU 負載很少會跑到 80% 以上, 可是,夏天室內溫度在沒開冷氣的情況下, 普遍來說應該是 35度 起跳跑不掉, 如此推測,屆時 CPU 運作溫度應該會比現在高一點, 會不會因此容易發生機器溫度過高的情況?

# by Jeffrey

to HiTeQ, 我認為不用擔心,主要有幾個考量點:1) 實測ASP.NET Core+Nginx耗用CPU極低,幾乎都在10%以下 2) 以本次CPU 滿載測試結果:氣溫25度核心50度外殼34度推算,即便室溫超過35,核心也很難超過60 3) N3150 承受上限為90度。由於CPU幾無滿載可能,就算滿載核心也難超越60,即使到了60也離CPU受極限有一大段距離。基於以上分析,我認為用來跑網站因溫度過高故障的機率微乎其微。

# by Deric

不怕Meltdown + Spectre?

# by Jeffrey

to Deric, 我手邊的PC筆電都是Intel CPU,怕也沒用,及時更新修補漏洞才是辦法。

# by Deric

他們不可能提供BIOS更新吧....

# by Jeffrey

to Deric, Meltdown + Spectre 要靠作業系統更新修補 https://support.microsoft.com/zh-tw/help/4073757/protect-your-windows-devices-against-spectre-meltdown 、 https://www.oschina.net/news/92159/centos-6-and-7-update

Post a comment


33 - 22 =