天天看點

CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統

新版本的安裝教程參考這篇文章: https://blog.csdn.net/qq_32599479/article/details/105811627

step 1 : 準備材料

CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統

step 2: 安裝 fastdfscommon

2-1: 安裝所需要的依賴環境 yum -y install libevent

2-2: 解壓 fastdfscommon 壓縮包 tar -zxvf libfastcommon-1.0.7.tar.gz

2-3: 進入剛解壓出來的 fastdfscommon 檔案夾, 找到 make.sh 檔案用它來進行編

譯 ./make.sh

如果編譯出錯,解決方案如下:

yum install gcc-c++
yum install pcre pcre-devel
yum install zlib zlib-devel
yum install openssl openssl-devel
      

2-4: 安裝剛剛編譯的 fastdfscommon 檔案 ./make.sh install

2-5: 安裝後會安裝到目錄 /usr/lib64, 該目錄有很多檔案,進入此目錄檢視所有可以使用以下指令 ll libfast*

2-6: 因 為 lib64 是 64 位 的 環 境 , 所 以 我 們 要 将 它 移 至 目

錄 /usr/lib, cp libfastcommon.so /usr/lib

step 3: 安裝 tracker 服務

3-1 : 找到 fastdfs-5.05.tar.gz 壓縮檔案 ,然後解壓它, tar -zxvf fastdfs-5.05.tar.gz

3-2: 進入剛解壓出來的 fastdfs-5.05.檔案夾, 找到 make.sh 檔案用它來進行編 譯 ./make.sh

3-3: 安裝剛剛編譯的 fastdfscommon 檔案 ./make.sh install

CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統
CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統
CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統

3-7: 将 上 面 所 有 文 件 全 部 拷 貝 到 目 錄 /etc/fdfs/ 中 去 

cp * /etc/fdfs/

 , 轉 到 目 錄 /etc/fdfs/, 查 看 此 目 錄 内 容

ll

CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統

3-8: 修改 tracker.conf 檔案 vim tracker.conf , 找到 base_path 關鍵字元串(此路徑也就是日志的保持路徑, 這個随意填寫)base_path=/fastdfs/tracker

3-9: 創 建 上 面 所 填 寫 修 改 的 路 徑 , ( 上 面 是

/fastdfs/tracker) mkdir /fastdfs/tracker -p

3-10: 分 别 在 根 目 錄 / 創 建 storage , client 和 tmp , 為下面準備 mkdir /fastdfs/storage -p, mkdir /fastdfs/client -p, mkdir /fastdfs/tmp -p進入 cd /fastdfs 然後ll 檢視目錄結構:

CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統
CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統

3-11: ( 可 以 先 進 入 cd /usr/bin 回 車 , 查 看 ll fdfs*) 啟動 tracker 服務 /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf 按 下 回 車 ( 重 啟 指令 /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart)

step 4: 安裝 storage 服務

4-1: 上面我們已經在根目錄的 fastdfs /fastdfs 建立了 client, storage 和 tracke 三個目錄 ll /fastdfs (如上圖所示)

4-2: 進入 /etc/fdfs 目錄下 cd /etc/fdfs/, 然後修改 storage.conf 檔案 vim storage.conf,找到 base_path 關鍵字然後修改此路徑(日志儲存的路徑)

CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統
CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統

4-3: 再找 group name 關鍵字 (即主機的名稱)wdz

CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統

4-4: 再找 store_path0 (檔案存儲的路徑)

CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統

4-5: 再配置與 tracker 關聯起來 , 配置完後儲存退出 

:wq

CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統

配置 tracker 伺服器的位址 192:168.1.103:22122 這裡應該是你自己 tracker 的位址.

4-6: 啟動 storage 服務, 目錄轉到/usr/bin/目錄下 ./fdfs_storaged /etc/fdfs/storage.conf 指令啟動服務 (./fdfs_storaged /etc/fdfs/storage.conf restart) 重新開機.

CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統
CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統

4-7: 可以檢視服務有沒有啟動 

ps aux | grep storage

CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統

tep 5: 配置 client 并且上傳測試圖檔

5-1: 轉到 /etc/fdfs/ 目錄下, 然後修改 client.conf 檔案

vim client.conf

, 找 到 base_path 關鍵字 (存儲日志的目錄) 與 配置 tracker 伺服器的位址

CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統

5-2: 目 錄 轉 到 /usr/bin 目 錄 下 , 會 有 個 client_test 文 件 啟

動/usr/bin/fdfs_test /etc/fdfs/client.conf upload /home/testPic.jpg

ps: /home/1.jpg 就是你要上傳測試的圖檔位址

CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統
CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統

group_name =wdzl remote_filename 就是圖檔的 url 位址,等下面配置好 nginx 後可以用它 (group_name + remote_filename)的位址來通路此圖檔,就像 example file 所 顯示的那個位址 剛剛測試上傳的圖檔檔案 儲存在 /fastdfs/storage/data/00/00/ 目錄下

step 6: fastdfs 與 nginx 配置

6-1: 找到之前上傳的 fastdfs-nginx-module.tar.gz 壓縮封包件, 解壓它tar -zxvf fastdfs-nginx-module.tar.gz

6-2: 進入解壓後的檔案的 src 目錄下, 然後修改 config 檔案 vim config , 替換下面的代碼,或者把 local 字樣去掉

CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統
CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統

ngx_addon_name=ngx_http_fastdfs_module

HTTP_MODULES="$HTTP_MODULES ngx_http_fastdfs_module"

NGX_ADDON_SRCS="$NGX_ADDON_SRCS

$ngx_addon_dir/ngx_http_fastdfs_module.c"

CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon/"

CORE_LIBS="$CORE_LIBS -L/usr/lib -lfastcommon -lfdfsclient"

CFLAGS="$CFLAGS

D_FILE_OFFSET_BITS=64

DFDFS_OUTPUT_CHUNK_SIZE=‘256*1024’

DFDFS_MOD_CONF_FILENAME=’"/etc/fdfs/mod_fastdfs.conf"’"

ps 上面的路徑要與之前的路徑對應,如果是按照上面配置的話,可以直接粘貼

step 7: 安裝 nginx 和配置

CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統
CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統

7-2: 找到之前上傳的 nginx 壓縮包 tar -zxvf nginx-1.12.0.tar.gz

7-3: 解壓後轉到該檔案夾根目錄下, 如 (/home/nginx-1.12.0) ,最後複制粘貼下面的代碼,修改–add-module 是指向你 fastdfs-nginx-module 的 src 檔案所在路徑, 最後按下回車

CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統
CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統
CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統

7-4: 編譯并安裝 nginx, 在該檔案夾根目錄下, 如 (/home/tar/nginx-1.15.0)輸入編譯指令 

make

 ,然後安裝

make install

CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統
CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統
CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統
CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統
  • 7-10: 檢測 nginx 轉到 nginx 安裝目錄下的 sbin 的目錄下 (啟動之前可以

    使用 ./nginx -t 檢測是否配置正确)

問題一:如果出現下圖問題:

CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統

進入 nginx 解壓後的目錄,删除 Makefile 檔案重新進入 nginx 解壓後的目錄,如:

cd /home/tar/nginx-1.15.2

回車,将下圖代碼進行重新編譯:

CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統

回車,然後進入 nginx 解壓後的根目錄進行編譯和安裝,輸入指令 

make && make install

 回車即可。再次進入 nginx 安裝目錄下的 sbin 目錄,輸入指令

./nginx -t

,結果如下圖:

CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統
CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統

step 8 檢視上傳到 fsatdfs 圖檔

  • 8-1: 先關閉防火牆
CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統
CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統

重新開機 track (cd /usr/bin # fdfs_trackerd /etc/fdfs/tracker.conf )

重新開機 storage (cd/usr/bin # fdfs_storaged /etc/fdfs/storage.conf)伺服器

最後重新開機 ningx 伺服器(cd /usr/local/nginx/sbin) ./nginx -s reload ,

無上述問題,無需重新開機 track、storage 服務,接下來在浏覽器輸入以下位址:

http://192.168.1.103/wdzl/M00/00/00/

圖檔名稱

CentOS7中 nginx 搭建 FastDFS 分布式檔案存儲系統
  • 按照上述流程搭建fastdfs 分布式檔案存儲成功!

繼續閱讀