由于工作需要,我曾經多次安裝配置過一些開源的分布式檔案系統,涉及的節點也超過10台較好配置的實體機,并進行了性能測試。 涉及的分布式檔案系統有moosefs,glusterfs,ceph和最常見的HDFS,
從剛開始安裝配置的一頭霧水到現在 安裝配置相對比較熟練,這個過程中有些小感悟,希望對新手有些小幫助:
一,宏觀上的把握
在安裝系統前,首先要弄清楚這樣一個問題,我的分布式系統涉及哪些程序(元件)?基本功能是什麼?分别運作在哪些節點上?事前最好能夠寫個簡單的文檔描述一下拓撲圖。
二,依賴庫的問題
最好用源代碼安裝,源碼安裝有很多好處,例如,删除起來很容易,可以友善指定安裝位置。用哪些系統自帶的指令安裝經常會帶來混亂,第一是版本問題,第二會經常安裝一些多餘的東西。
三,庫的路徑問題
有時明明已經安裝某個依賴庫,但是編譯目标代碼是總是提示無法找到依賴庫。這時可以考慮從以下幾個方面查找問題:
(1)确定依賴庫應該是動态庫還是靜态庫?可以檢視目标代碼的編譯提示資訊,configure 時是否應該加上選項--enable-shared
(2)用PKG_CONFIG_PATH環境變量指定依賴庫路徑,
(3)在~/.profile 配置檔案中指定編譯時需要查找的額外頭檔案和依賴庫,
四,權限問題
在安裝的過程中,能夠不用root就不用root,根據目标程式需要而建立特定的使用者名,
五,配置問題
配置主要涉及:
a 主機名,IP位址,端口号
b 日志檔案的路徑,資料存儲的路徑,
c 一些timeout相關的參數,例如間隔多少時間幹一次啥
d 系統資源的使用,配置設定各某個元件的最大使用記憶體,最大打開檔案數,最大網絡連接配接數
e 最後最重要的權限問題,某個程序對IP和端口的過濾,對用戶端使用者通路權限的控制等。
六,關于troubleshooting
百度解決不了,找google,google不行就直接上目标分布式系統論壇查找,或mail 開發人員
七,後記
多加強基礎知識的學習,例如網絡,作業系統,腳本等,都會極大的幫助你解決困難