fastdfs 搭建

fastdfs是分佈式文本管理系統

搭建前的準備:fastDFS 軟件包,nginx,nginx-fastdfs-module 相關的軟

其中fastdfs-5.05.tar.gz 和fastdfs-nginx-module 可以在官網下載:可以參照該博客:https://www.cnblogs.com/fanjingfeng/p/9849697.html

nginx自己下載

還需要下載在fastdfs官網下載libfastcommon:https://sourceforge.net/projects/libfastcommon/files/      

然後將你的軟件都上傳到你的linux上,我用的是centos

 

linux一些依賴的準備工作

1:執行 

yum -y install libevent

2:  我們解壓libfastcommon 軟件,我們用libfastcommon-1.0.7.tar.gz爲例

tar -zxvf libfastcommon-1.0.7.tar.gz

然後

cd  libfastcommon-1.0.7 

然後執行編譯腳本

./make.sh

然後安裝

./make.sh install

安裝在 /usr/lib64:

cd  /usr/lib64

ll libfast*

會看到 有libfastcommon.so

然後我們需要將文件放到 /usr/lib 下,因爲 /usr/lib 是32位 、/usr/lib64 是64位

cp libfastcommon.so /usr/lib
cp libfdfsclient.so /usr/lib

3:解壓 fastdfs軟件包

tar -zxvf fastdfs-5.05.tar.gz

解壓完
cd fastdfs-5.05
./make.sh
./make.sh install

安裝在 /usr/bin目錄下

cd /usr/bin

ll fdfs*
可以看到很多fdfs相關文件


其中還有一部分配置文件放在 /etc/fdfs/

然後進入到我們的解壓的fastdfs文件夾目錄下
然後
cd /conf
然後將conf 夏目的配置文件複製到/etc/fdfs
cp * /etc/fdfs

4:配置tracker服務

cd /etc/fdfs
#修改tracker.conf
vim tracker.conf

我們會看到port=22122 我們不需要修改,以後配置nginx需要這個端口

找到base_paths是日誌的保存路徑,我們修改日誌路徑,可以根據自己需要自行配置位置

base_path=/fastdfs/tracker               
 
然後保存

然後在根目錄創建我們配置的文件夾,文件夾不存在一定要創建,否則啓動tracker會報錯
mkdir /fastdfs/tracker -p 

然後啓動tracker
步驟如下
cd /usr/bin
ll fdfs*
會看到可執行的命令
啓動執行:
fdfs_trackerd /etc/fdfs/tracker.conf   #如果需要重啓 fdfs_trackerd /etc/fdfs/tracker.conf  restart

5然後配置storage:

cd /etc/fdfs
#修改storage.conf
vim storage.conf

找到base_paths是日誌的保存路徑,我們修改日誌路徑,可以根據自己需要自行配置位置

base_path=/fastdfs/storage

我們在配置文件中可以看到一個group_name=作用是我們訪問一個圖片是的前綴,我們設置爲share
group_name=share
 

#然後配置storage_path0 是實際圖片的存儲路徑
storage_path0=/fastdfs/storage

然後配置 tracker_server,ip就是我們自動的tracker所在服務器的ip地址,端口號就是我tracker配置文件的端口號 
tracker_server=192.168.66.101:22122
然後保存

然後在根目錄創建我們配置的文件夾,文件夾不存在一定要創建,否則啓動tracker會報錯
mkdir /fastdfs/storage -p 

然後啓動storage 
步驟如下
cd /usr/bin
ll fdfs*
會看到可執行的命令
啓動執行:
fdfs_storaged /etc/fdfs/storage.conf   #如果需要重啓 fdfs_storaged /etc/fdfs/storage.conf  restart

ps -ef |grep tracker 

ps -ef |grep stroage 都可以查到相關進程

6:然後配置client

cd /etc/fdfs
#修改client.conf
vim client.conf

找到base_paths是日誌的保存路徑,我們修改日誌路徑,可以根據自己需要自行配置位置

base_path=/fastdfs/client

 

然後配置 tracker_server,ip就是我們自動的tracker所在服務器的ip地址,端口號就是我tracker配置文件的端口號 
tracker_server=192.168.66.101:22122
然後保存

然後在根目錄創建我們配置的文件夾,文件夾不存在一定要創建,否則啓動tracker會報錯
mkdir /fastdfs/client-p 

然後啓動client
步驟如下
cd /usr/bin
ll fdfs*
會看到可執行的命令
執行:
fdfs_test /etc/fdfs/client.conf upload  + 一張圖片的路徑  #這樣就可以上傳到倉庫

執行完會給你返回一個地址,我們可以訪問該圖片(現在尚未配置nginx 所有無法訪問圖片)

我們在倉庫也可以找到該圖片
cd /fastdfs/storage   #我們在storage的配置文件中配置的倉庫目錄
cd /data
一開始放在data 下的00 裏面的00,然後就發現相應文件

7:配置nginx

我們上傳過fastdfs-nginx-module的jar包,我們可以進行解壓

然後進入到 cd fastdfs-nginx-module

進入到src

然後pwd   查看在linux 的絕對路徑 (後面要用到)

然後在src文件夾下有配置文件

vim config

修改三個地方:把local刪掉

然後保存

 

然後我們需要給nginx進行配置,我們解壓完nignx ,我們還需有相應的庫

yum install gcc-c++

yum install pcre pcre-devel

yum install zlib zlib-devel 

yum install openssl oppenssl-devel

依賴都安裝完後

進入到傳解壓的nigxin 目錄下

然後複製下面內容

./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi \
--add-module=/usr/local/src/fastdfs-nginx-module/src 

# 注意這裏的路徑換成你的fastdfs-nginx-module的src的路徑,前面配置fastdfs-nginx-module 中我們講過要留意路徑



#注意上述命令 \ 都不能少,我就少了,結果找了一天才找到錯誤

複製完上述路徑後,直接在nginx的文件下,粘貼,然後回車(注意兩點:1. 上面的內容有個路徑換成你的 ,2.直接粘貼,直接粘貼,直接粘貼重要的是說三遍)就像下圖

然後執行make install

然後進入到

/usr/local/下就可以看到我們的nginx 

8:

然後進入到fastdfs-nginx-module 的解壓的目錄下,進入src

將mod_fastdfs.conf 複製到/etc/fdfs 下面

cp mod_fastdfs.conf /etc/fdfs/

然後

cd /etc/fdfs/
vim mod_fastdfs.conf

#找到base_path 修改爲
base_path=/fastdfs/tmp

#找到tracker_server,ip是你tracker的ip
tracker_server=192.168.66.101:22122 
#找到group_name ,這裏要和stroage的group_name一致
group_name=share

#找到url_have_group_name
url_have_group_name=true

然後保存

然後創建 tmp文件夾
cd /fastdfs
mkdir tmp

然後進入到
cd /etc/fdfs

9:配置nginx

cd /usr/local/nginx/conf
#可以看到nginx.conf
vim nginx.conf


#然後添加服務器

server {
    listen   88; #監聽的端口88
    server_name 192.168.66.101;
    
    location /share/M00 {  #share是我們配置的storage的group_name
        ngx_fastdfs_module;
        
    }
}

然後保存


cd /usr/local/nginx/sbin
./nginx -t #來檢測nginx配置是否配置
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章