怎么在CentOS7中用nginx 搭建 FastDFS 分布式文件存儲(chǔ)系統(tǒng)
step 1 : 準(zhǔn)備資料
step 2: 裝置 fastdfscommon
2-1: 裝置所需求的依賴環(huán)境 yum -y install libevent
2-2: 解壓 fastdfscommon 壓縮包 tar -zxvf libfastcommon-1.0.7.tar.gz
2-3: 進(jìn)入剛解壓出來(lái)的 fastdfscommon 文件夾, 找到 make.sh 文件用它來(lái)進(jìn)行編
譯 ./make.sh
假如編譯出錯(cuò),解決方案如下:
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: 裝置后會(huì)裝置到目錄 /usr/lib64, 該目錄有很多文件,進(jìn)入此目錄檢查所有能夠使用以下指令 ll libfast*
2-6: 因 為 lib64 是 64 位 的 環(huán) 境 , 所 以 我 們 要 將 它 移 至 目
錄 /usr/lib, cp libfastcommon.so /usr/lib
step 3: 裝置 tracker 服務(wù)
3-1 : 找到 fastdfs-5.05.tar.gz 壓縮文件 ,然后解壓它, tar -zxvf fastdfs-5.05.tar.gz
3-2: 進(jìn)入剛解壓出來(lái)的 fastdfs-5.05.文件夾, 找到 make.sh 文件用它來(lái)進(jìn)行編 譯 ./make.sh
3-3: 裝置剛剛編譯的 fastdfscommon 文件 ./make.sh install
3-7: 將 上 面 所 有 文 件 全 部 拷 貝 到 目 錄 /etc/fdfs/ 中 去cp * /etc/fdfs/, 轉(zhuǎn) 到 目 錄 /etc/fdfs/, 查 看 此 目 錄 內(nèi) 容ll
3-8: 修正 tracker.conf 文件 vim tracker.conf , 找到 base_path 要害字符串(此途徑也便是日志的堅(jiān)持途徑, 這個(gè)隨意填寫(xiě))base_path=/fastdfs/tracker
3-9: 創(chuàng) 建 上 面 所 填 寫(xiě) 修 改 的 路 徑 , ( 上 面 是
/fastdfs/tracker) mkdir /fastdfs/tracker -p
3-10: 分 別 在 根 目 錄 / 創(chuàng) 建 storage , client 和 tmp , 為下面準(zhǔn)備 mkdir /fastdfs/storage -p, mkdir /fastdfs/client -p, mkdir /fastdfs/tmp -p進(jìn)入 cd /fastdfs 然后ll 檢查目錄結(jié)構(gòu):
3-11: ( 可 以 先 進(jìn) 入 cd /usr/bin 回 車(chē) , 查 看 ll fdfs*) 發(fā)動(dòng) tracker 服務(wù) /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf 按 下 回 車(chē) ( 重 啟 指令 /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart)
step 4: 裝置 storage 服務(wù)
4-1: 上面咱們已經(jīng)在根目錄的 fastdfs /fastdfs 創(chuàng)建了 client, storage 和 tracke 三個(gè)目錄 ll /fastdfs (如上圖所示)
4-2: 進(jìn)入 /etc/fdfs 目錄下 cd /etc/fdfs/, 然后修正 storage.conf 文件 vim storage.conf,找到 base_path 要害字然后修正此途徑(日志保存的途徑)
4-3: 再找 group name 要害字 (即主機(jī)的稱號(hào))wdz
4-4: 再找 store_path0 (文件存儲(chǔ)的途徑)
4-5: 再裝備與 tracker 相關(guān)起來(lái) , 裝備完后保存退出:wq
裝備 tracker 服務(wù)器的地址 192:168.1.103:22122 這里應(yīng)該是你自己 tracker 的地址.
4-6: 發(fā)動(dòng) storage 服務(wù), 目錄轉(zhuǎn)到/usr/bin/目錄下 ./fdfs_storaged /etc/fdfs/storage.conf 指令發(fā)動(dòng)服務(wù) (./fdfs_storaged /etc/fdfs/storage.conf restart) 重啟.
4-7: 能夠檢查服務(wù)有沒(méi)有發(fā)動(dòng)ps aux | grep storage
tep 5: 裝備 client 而且上傳測(cè)驗(yàn)圖片
5-1: 轉(zhuǎn)到 /etc/fdfs/ 目錄下, 然后修正 client.conf 文件vim client.conf, 找 到 base_path 要害字 (存儲(chǔ)日志的目錄) 與 裝備 tracker 服務(wù)器的地址
5-2: 目 錄 轉(zhuǎn) 到 /usr/bin 目 錄 下 , 會(huì) 有 個(gè) client_test 文 件 啟
動(dòng)/usr/bin/fdfs_test /etc/fdfs/client.conf upload /home/testPic.jpg
ps: /home/1.jpg 便是你要上傳測(cè)驗(yàn)的圖片地址
group_name =wdzl remote_filename 便是圖片的 url 地址,等下面裝備好 nginx 后能夠用它 (group_name + remote_filename)的地址來(lái)訪問(wèn)此圖片,就像 example file 所 顯現(xiàn)的那個(gè)地址 剛剛測(cè)驗(yàn)上傳的圖片文件 保存在 /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: 進(jìn)入解壓后的文件的 src 目錄下, 然后修正 config 文件 vim config , 替換下面的代碼,或許把 local 字樣去掉
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 上面的途徑要與之前的途徑對(duì)應(yīng),假如是依照上面裝備的話,能夠直接張貼
step 7: 裝置 nginx 和裝備
7-2: 找到之前上傳的 nginx 壓縮包 tar -zxvf nginx-1.12.0.tar.gz
7-3: 解壓后轉(zhuǎn)到該文件夾根目錄下, 如 (/home/nginx-1.12.0) ,最終復(fù)制張貼下面的代碼,修正–add-module 是指向你 fastdfs-nginx-module 的 src 文件所在途徑, 最終按下回車(chē)
7-4: 編譯并裝置 nginx, 在該文件夾根目錄下, 如 (/home/tar/nginx-1.15.0)輸入編譯指令make,然后裝置make install
-
7-10: 檢測(cè) nginx 轉(zhuǎn)到 nginx 裝置目錄下的 sbin 的目錄下 (發(fā)動(dòng)之前能夠
使用 ./nginx -t 檢測(cè)是否裝備正確)
問(wèn)題一:假如出現(xiàn)下圖問(wèn)題:
進(jìn)入 nginx 解壓后的目錄,刪去 Makefile 文件重新進(jìn)入 nginx 解壓后的目錄,如:cd /home/tar/nginx-1.15.2回車(chē),將下圖代碼進(jìn)行重新編譯:
回車(chē),然后進(jìn)入 nginx 解壓后的根目錄進(jìn)行編譯和裝置,輸入指令make && make install回車(chē)即可。再次進(jìn)入 nginx 裝置目錄下的 sbin 目錄,輸入指令./nginx -t,結(jié)果如下圖:
step 8 檢查上傳到 fsatdfs 圖片
-
8-1: 先關(guān)閉防火墻
重啟 track (cd /usr/bin # fdfs_trackerd /etc/fdfs/tracker.conf )
重啟 storage (cd/usr/bin # fdfs_storaged /etc/fdfs/storage.conf)服務(wù)器
最終重啟 ningx 服務(wù)器(cd /usr/local/nginx/sbin) ./nginx -s reload ,
無(wú)上述問(wèn)題,無(wú)需重啟 track、storage 服務(wù),接下來(lái)在瀏覽器輸入以下地址:http://192.168.1.103/wdzl/M00/00/00/圖片稱號(hào)
- 依照上述流程建立fastdfs 分布式文件存儲(chǔ)成功!