FastDFS社區:http://bbs.chinaunix.net/forum-240-1.htmlhtml
配置參考:http://bbs.chinaunix.net/thread-1941456-1-1.htmlgit
參考PDF連接:http://pan.baidu.com/s/1c2iEudy 密碼: vfsmgithub
做者發佈在社區的FastDFS PPT文檔服務器
因爲開源社區下載PPT比較麻煩,本身轉存到百度網盤一份app
連接: http://pan.baidu.com/s/1i56QCZz 密碼: gjra負載均衡
1、FastDFS安裝,本文是安裝的當前最新版本FastDFS5.08測試
參考文章:http://www.cnblogs.com/hesiyi/archive/2016/05/30/5543717.html.net
一、安裝libfastcommon,該步驟須要git,也能夠經過https://codeload.github.com/happyfish100/libfastcommon/zip/master,這裏我是使用的gitunix
git clone https://github.com/happyfish100/libfastcommon.git日誌
cd libfastcommon/
./make.sh
./make.sh install
執行如上命令後,libfastcommon默認安裝在/usr/lib64/文件夾內
可經過以下命令查看
二、下載FastDFS並解壓
tar -zxvf FastDFS_v5.08.tar.gz
三、 進入解壓目錄 ,編譯安裝
cd FastDFS/
./make.sh
./make.sh install
安裝過程會產生一些文件:具體看下圖
四、修改基本配置使fastdfs能夠運行
(4.1)進入fastdfs生成在/etc/fdfs/目錄下
cd /etc/fdfs/
經過ls能夠看到有以下三個文件
去掉他們全部的.sample後綴,保留原始配置文件,方便測試
cp client.conf.sample client.conf
cp storage.conf.sample storage.conf
cp tracker.conf.sample tracker.conf
修改配置文件信息
(1)tracker.conf不用修改任何東西
(2)storage.conf中修改:
tracker_server=192.168.29.132:22122 #指定tracker服務器地址(是你Ubuntu的ip地址)
(3)client.conf中一樣要修改:
tracker_server=192.168.29.132:22122 #指定tracker服務器地址(是你Ubuntu的ip地址)
五、啓動tracker和storage
(1)、建立運行時目錄結構(存儲路徑)文件夾(名字有點彆扭,是參考做者的PPT),因爲沒有修改任何配置,下載下來的FastDFS默認路徑指向這個文件夾,能夠修改/etc/fdfs/下的配置文件,該目錄下的3個文件都須要修改
在22行能夠看見存在base_path信息,這裏我沒有作修改,直接使用默認配置
建立base_path文件夾
mkdir -p /home/yuqing/fastdfs/
關於啓動順序,本文通過我測試,發現不須要按照(2)、(3)、的順序啓動,由於若是事先啓動storage,它會每間隔15秒嘗試鏈接tracker(直至鏈接成功爲止),這裏的15秒我想應該是能夠配置吧,具體尚未研究,經過以下命令能夠查看日誌
tail -f /home/yuqing/fastdfs/logs/storaged.log
(2)、 啓動:Tracker Server:跟蹤服務器,主要作調度工做,在訪問上起負載均衡的做用。記錄storage server的狀態,是鏈接Client和Storage server的樞紐。
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start
(3)、啓動: Storage Server:存儲服務器,文件和meta data都保存到存儲服務器上
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf start
經過netstat -tunpl,能夠看到下圖,說明fastdfs已經啓動了
(4)、 中止:Tracker Server:跟蹤服務器
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf stop
(5)、 中止: Storage Server:存儲服務器
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf stop
六、補充,關於FastDFS安裝目錄結構
/etc/fdfs/:存放配置文件位置
/etc/init.d/:服務腳本文件位置
/usr/bin/:可執行命令文件位置
七、上傳
準備文件:/test/hello.txt,同時到 /home/yuqing/fastdfs/data/00/00 目錄下查看是否有文件,發現目前爲空目錄
執行上傳
/usr/bin/fdfs_upload_file /etc/fdfs/client.conf /test/hello.txt
到/home/yuqing/fastdfs/data/00/00目錄下查看文件,發現有一個wKgBZldajPmARf1oAAAAELNLRzU978.txt,至此上傳結束。
上傳成功,在上圖能夠看到返回結果,規則:group 名稱、虛擬磁盤路徑、數據兩級
目錄、file_id。
其中,組名:文件上傳後所在的存儲組的名稱,在文件上傳成功後由存儲服務器返回,須要客戶端自行保存
虛擬磁盤路徑:存儲服務器配置的虛擬路徑,與磁盤選項 store_path*參數對應(storage.conf配置文件中的store_path0=/home/yuqing/fastdfs)
數據兩級目錄:存儲服務器在每一個虛擬磁盤路徑下建立的兩級目錄,用於存儲數據文件
八、下載測試
/usr/bin/fdfs_download_file /etc/fdfs/client.conf group1/M00/00/00/wKgBZldajPmARf1oAAAAELNLRzU978.txt hello_download.txt