根據(jù)
分布式文件系統(tǒng) - FastDFS 在 CentOS 下配置安裝部署
和
分布式文件系統(tǒng) - FastDFS 配置 Nginx 模塊及上傳測試
一步一步搭建的沿侈,但還是碰到了版本太低银室,導致安裝報錯的問題眼刃。
費時間解決了問題之后,我將這個步驟和對應的版本記錄下載,有需要的小伙伴可以參考一下。
用這個步驟,我已經(jīng)在一部本機的虛擬機和一部阿里云服務器上分別搭建過掸茅,并且能上傳和下載圖片。
搭建單機服務器的還是比較簡單的舍扰。我分成了兩篇來進行記錄倦蚪。
FastDFS搭建單機圖片服務器(一)
- 主要是下載、安裝和配置FastDFS相關(guān)的組件边苹,實現(xiàn)圖片的上傳陵且。
FastDFS搭建單機圖片服務器(二)
FastDFS搭建單機圖片服務器(二)
- 主要是下載、安裝和配置nginx相關(guān)的組件个束,實現(xiàn)圖片的下載慕购。
一、目錄結(jié)構(gòu)
以我下載及安裝的路徑為例茬底,
下載及安裝路徑
/usr/local/
創(chuàng)建幾個后面能用到的目錄
mkdir /home/fastdfs/
mkdir /home/fastdfs/storage
mkdir /home/fastdfs/storage/storage-image
mkdir /home/fastdfs/tracker
mkdir /home/fastdfs/client
mkdir /home/fastdfs/fast-nginx
二沪悲、下載安裝 libfastcommon
1、進入目錄
cd /usr/local
2阱表、下載libfastcommon到/usr/local目錄下
wget https://github.com/happyfish100/libfastcommon/archive/master.zip
3殿如、解壓壓縮包
unzip master.zip
(如果沒有unzip贡珊,
執(zhí)行命令yum install unzip
或 apt-get install unzip
)
4、cd libfastcommon-master
5涉馁、編譯
./make.sh
6门岔、安裝
./make.sh install
三、下載安裝FastDFS
注意烤送!FastDFS版本必須 >= 5.11
不然在后期使用fastdfs-nginx-module模塊整合Nginx時候會出錯寒随,用了一個上午才明白的血淋淋的教訓。
1帮坚、進入目錄
cd /usr/local
2妻往、下載FastDFS到/usr/local目錄下
wget https://github.com/happyfish100/fastdfs/archive/V5.11.tar.gz
3、解壓 FastDFS 试和,命令:
tar -zxvf V5.11.tar.gz
4讯泣、進入fastfds-5.11目錄
cd fastdfs-5.11
5、編譯
./make.sh
如果報錯如果報錯
../storage/trunk_mgr/trunk_shared.c:435:undefined reference to ‘fc_safe_read’
檢查是否libfastcommon版本過低了阅悍,1.0.7的版本玩不起來判帮,我更新成最新版本libfastcommon-master,然后再安裝fastdfs溉箕,問題解決。
6悦昵、安裝
./make.sh install
四肴茄、配置 Tracker 服務
上述安裝成功后,在/etc/目錄下會有一個fdfs的目錄但指,進入它寡痰。會看到三個.sample后綴的文件,這是作者給我們的示例文件棋凳,我們需要把其中的tracker.conf.sample文件改為tracker.conf配置文件并修改它拦坠。
1、復制重命名配置文件
cd /etc/fdfs
cp tracker.conf.sample tracker.conf
2剩岳、打開
vim tracker.conf
主要修改兩個參數(shù)
base_path=/home/fastdfs/tracker
http.server_port=80
port=22122這個端口參數(shù)不建議修改贞滨,除非你已經(jīng)占用它了。
修改完成保存并退出 vim 拍棕,這時候我們可以使用
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start
來啟動 Tracker服務晓铆,但是這個命令不夠優(yōu)雅,怎么做呢绰播?
3骄噪、使用ln -s 建立軟鏈接:
ln -s /usr/bin/fdfs_trackerd /usr/local/bin
ln -s /usr/bin/stop.sh /usr/local/bin
ln -s /usr/bin/restart.sh /usr/local/bin
4、啟動tracker
使用
service fdfs_trackerd start
來優(yōu)雅地啟動 Tracker服務了蠢箩,比剛才帶目錄的命令好記太多了链蕊。你也可以啟動過服務看一下端口是否在監(jiān)聽事甜,命令:
啟動服務:service fdfs_trackerd start
查看監(jiān)聽:netstat -unltp|grep fdfs
在阿里云服務器上啟動service fdfs_trackerd start
報錯
Failed to start fdfs_storaged.service: Unit fdfs_storaged.service not found.
在阿里云上面使用
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start
啟動就是正常的。
重啟
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
看到22122端口正常被監(jiān)聽后滔韵, Tracker服務安裝成功啦逻谦!
五、配置 Storage 服務
現(xiàn)在開始配置 Storage 服務奏属,由于我這是單機器測試跨跨,你把 Storage 服務放在多臺服務器也是可以的,它有 Group(組)的概念囱皿,同一組內(nèi)服務器互備同步勇婴,這里不再演示。
1嘱腥、復制重命名配置文件
cd /etc/fdfs
會看到三個.sample后綴的文件耕渴,我們需要把其中的storage.conf.sample文件改為storage.conf配置文件并修改它
cp storage.conf.sample storage.conf
2、打開文件
vim storage.conf
修改幾個參數(shù)
group_name=group1
base_path=/home/fastdfs/storage/storage-image
store_path0=/home/fastdfs/storage/storage-image
tracker_server=192.168.86.131:22122
192.168.86.131改成你的本機ip齿兔。
如果部署的是阿里云ECS服務器橱脸,
tracker_server=公網(wǎng)ip:22122
stroage的port=23000這個端口參數(shù)也不建議修改,默認就好分苇,除非你已經(jīng)占用它了添诉。
修改完成保存并退出 vim ,這時候我們依然想優(yōu)雅地啟動 Storage服務医寿,帶目錄的命令不夠優(yōu)雅栏赴,這里還是使用ln -s 建立軟鏈接。
3靖秩、建立軟鏈接
ln -s /usr/bin/fdfs_storaged /usr/local/bin
4须眷、啟動storage
service fdfs_storaged start
在阿里云上面使用
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf start
啟動就是正常的。
注:在阿里云上進行配置沟突,storaged可能會啟動失敗花颗,需要配置云服務器實例安全組,添加安全組配置惠拭,打開22122和23000端口扩劝。
然后關(guān)閉系統(tǒng)防火墻:systemctl stop firewalld.service
啟動成功后可以配置開機自動啟動:
vim /etc/rc.local
在打開的文件中添加:
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
退出保存即可。
5职辅、查看是否正常啟動
netstat -unltp|grep fdfs
如果22122和23000端口都在監(jiān)聽今野,則啟動正常了。
六罐农、嘗試通信
到這一步已經(jīng)正常啟動了tracker和storage服務条霜。
指定命令嘗試兩者進行通信
/usr/bin/fdfs_monitor /etc/fdfs/storage.conf
啟動正常的話,就可上傳圖片了涵亏,但是目前還無法下載宰睡。
繼續(xù)完成下一篇的步驟
FastDFS搭建單機圖片服務器(二)
主要是下載蒲凶、安裝和配置nginx相關(guān)的組件,實現(xiàn)圖片的下載拆内。