2017-09-16

在 Raspberry Pi 3 上以 Raspbian 架設 Hentai@Home 分散式運算系統

在前面一篇文章已經示範了用 Linux VPS 來運行 Hentai@Home ,而這次用被稱作樹莓派(官方名稱:Raspberry Pi )的開發用單板電腦來運行

或許很多人會想樹莓派跟一般電腦的架構完全不一樣( ARM 架構的 Broadcom BCM2837 之於一般電腦的 x86-64 處理器)怎麼可能跑這些東西,但其實只要是使用跨平台的方式去撰寫,比如用 Python 或是 Qt 模式去撰寫的軟體通常都可以在各種平台上運行,而 Hentai@Home 這種運行在 Java 架構上的軟體更不是問題

這篇省略了一些前面講過的東西,像是設定 DHCP 保留,將樹莓派的內部網路位址固定,以及設定 DHCP/NAT 的傳輸埠指定,將特定的傳輸埠開放到網路( WAN )上、並轉發給內部網路( LAN )的指定網路位址,以及申請 Hentai@Home 客戶端、網頁上設定客戶端的部分,請參閱前一篇文章

首先來講一下要運行 Hentai@Home,在樹莓派所運行的 Raspbian 上需要安裝的軟體與設定


接著硬體的部分,樹莓派是使用 MicroSD 記憶卡當作系統硬碟來運作,即使用大容量的記憶卡

考慮到頻繁的讀寫還是建議使用外接硬碟,畢竟跑 Hentai@Home 就是要越大的檔案快取空間( Files Served / Maximum Disk Cache Size )越好,弄顆有一定容量的外接硬碟是最佳解

手上有一顆小容量的固態硬碟,可以在讀取速度跟耗電量上取得不錯的平衡,畢竟樹莓派的 USB 埠最大輸出電流量只能到 1200 mAh


2017_10_05_010030
左邊是樹莓派跟它的風扇,右邊是中華電信光世代的數據機
2017_10_05_010044
快門速度的關係,讓風扇看起來像停轉
2017_10_05_010158
這條是自製的 USB 轉 3 Pin 風扇座
2017_10_05_010054
樹莓派跟自製風扇罩
2017_10_05_010104
用自製迷你轉接頭供電給自己的風扇,也供電給數據機冷卻風扇、
2017_10_05_010140
固態硬碟跟外接盒用 3M 魔鬼氈固定在櫃子頂部

接下來要把外接的固態硬碟掛載到樹莓派的系統,並能被運行的 Raspbian 系統存取使用

也就是說要把外接硬碟內部資料清空、刪除原先的分隔表、建立新的分割表與分割區,因此請確定這顆硬碟裡面沒有你需要的資料


依照上面的操作,重新開機後外接硬碟應該就會掛載到指定資料夾下了

接著我們來跟前面一篇文章一樣,下載並安裝 Hentai@Home


填入客戶端編號與金鑰後,沒意外的話 Hentai@Home 已經開始順利執行了



在 E-hentai 可以看到樹莓派上的客戶端已經連線,兩個客戶端 6000 KBps 大約是亞洲區的百分之二運算力

接著就是等著 Gallery Points 跟 Hath 入袋了

通常樹莓派都是以 Headless computer (沒有外接螢幕與鍵盤滑鼠)的方式運作,因此可以用一些自動化腳本來監控並在發生異常時提醒你去處理,當然樹莓派內建的硬體看門狗也是必須的,詳細請參考這篇文章

而我也額外寫了一些基於 Python 的小程式來監控,並使用 Crontab 來達成自動化運作,並在異常時通知我,我把撰寫好的程式放在 GitHub 上了



使用 Crontab 來自動化運作,定時回報處理器溫度與在 Hentai@Home 異常時回報

4 則留言:

  1. 大大您使用的Raspbian是lite版(340MB) 還是 完整版(1.6GB)?

    回覆刪除
    回覆
    1. Lite, 如果沒有必要用圖形介面(X Window)跟那些預載軟體的話,Lite 就好,多一些空間給記憶卡

      刪除
  2. 請問用一定要用3代嗎?可不可以用2B?

    回覆刪除
    回覆
    1. 主要是處理器 SoC 瓶頸的問題,就算你外接硬碟夠大,卡在網路卡跟 USB 3.0 打架搶頻寬

      上傳性能跟傳輸率不好也沒辦法把 Hit rate 跟 Hath rate 衝高

      刪除