天天看點

QiYuAdmin-Centos安裝和配置FastDFS簡介結語

簡介

今天周末,女兒睡覺了,家務活也忙完了,下午沒事,正好把fastdfs給弄了。在我的阿裡雲伺服器我已經試驗成功了,其實也是按照網上的一些資料來配置的。接下來就把步驟給整理了一下。

  • FastDFS安裝包收集
  • FastDFS安裝
  • FastDFS配置
  • 給storage安裝nginx并配置
  • 給tracker安裝nginx并配置

FastDFS安裝包收集

  1. FastDFS_v5.05.tar.gz
  2. fastdfs-nginx-module_v1.16.tar.gz
  3. libfastcommon-1.0.7.zip
  4. nginx-1.7.8.tar.gz

FastDFS安裝包下載下傳

有些系統環境可以用yum線上安裝,下文會提到。

FastDFS安裝

  1. 在centos下的opt目錄下建立3個檔案夾:

    1)配置tracker所需的base_path:

    mkdir /opt/fastdfs/fastdfs_tracker

    2) 配置storage所需的日志目錄:

    mkdir /opt/fastdfs /fastdfs_storage_info

    3)配置storage所需的存儲檔案目錄:

    mkdir /opt/fastdfs/fastdfs_storage_data

  2. 将壓縮包libfastcommon-1.0.7.zip和fastdfs-5.05.tar.gz上傳到遠端伺服器的/home/install下,從本地上傳到Linux伺服器可以用scp命名,指令如下:

    scp 本地檔案的位址 遠端伺服器使用者名@遠端伺服器位址:遠端伺服器上傳的目錄

    例子:

    scp c:/software/xxx.zip [email protected]:/home/install

  3. 在/home/install下解壓縮libfastcommon-1.0.7.zip

    unzip libfastcommon-1.0.7.zip

    進入到解壓後的檔案夾libfastcommon-1.0.7進行安裝

    ./make.sh

    ./make.sh insatll

  4. 上述安裝的路徑在/usr/lib64/,但是FastDFS主程式設定的lib目錄是/usr/local/lib,是以需要建立軟連接配接如下:

    ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so

    ln -s /usr/lib64/libfastcommon.so /usr/lib/libfastcommon.so

    ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so

    ln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so

    如果報錯了可能是因為目錄之間的空格。有可能少了一個空格,有可能多了一個空格。

  5. 解壓縮:FastDFS-5.05.tar.gz并安裝

    tar –zxvf FastDFS-5.05.tar.gz

    ./make.sh

    ./make.sh install

  6. 打開 /etc/fdfs目錄發現有以下三個配置檔案存在,說明安裝成功

    mod_fastdfs.conf.sample

    storage.conf.sample

    tracker.conf.sample

FastDFS的配置

  1. 配置tracker:

    進入/etc/fdfs檔案夾,執行指令:

    cp tracker.conf.sample tracker.conf

    vim tracker.conf

    a. disabled=false #啟用配置檔案,我配置的時候預設就是false,最好檢查一下

    b. port=22122 #設定tracker的端口号,一般采用22122這個預設端口

    c. base_path=/opt/fastdfs/fastdfs_tracker #設定tracker的資料檔案和日志目錄,這個目錄是一開始建立的,需要與之對應起來

    啟動tracker:/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart

    啟動完畢後,可以通過以下兩個方法檢視tracker是否啟動成功:

    a. netstat -unltp|grep fdfs,檢視22122端口監聽情況

    b. 通過以下指令檢視tracker的啟動日志,看是否有錯誤: tail -100f /opt/fastdfs_tracker/logs/trackerd.log

  2. 配置storage:

    進入/etc/fdfs檔案夾,執行指令:

    cp storage.conf.sample storage.conf

    vim storage.conf,對以下幾個選項進行編輯:

    a. disabled=false #啟用配置檔案

    b. group_name=group1 #組名,根據實際情況修改

    c. port=23000 #設定storage的端口号,預設是23000,同一個組的storage端口号必須一緻

    d. base_path=/opt/fastdfs/fastdfs_storage_info #設定storage的日志目錄(需預先建立)

    e. store_path_count=1 #存儲路徑個數,需要和store_path個數比對

    f. store_path0=/opt/fastdfs/fastdfs_storage_data #存儲路徑

    g. tracker_server=192.168.1.14:22122 #tracker伺服器的IP位址和端口号

    啟動storage,執行如下指令:

    /usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart

    啟動完畢後,可以通過以下兩個方法檢視storage是否啟動成功:

    a. netstat -unltp|grep fdfs,檢視23000端口監聽情況

    b. 通過以下指令檢視storage的啟動日志,看是否有錯誤: tail -100f /opt/fastdfs_storage_info/logs/storaged.log

    若成功,可将storage的啟動添加到開機啟動中:

    vi /etc/rc.d/rc.local

    将/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart添加到檔案中

  3. 配置client:

    一、 打開 /etc/fdfs 檔案夾,執行如下指令:

    cp client.conf.sample client.conf

    vim client.conf

    修改以下項目:

    a. base_path=/opt/fastdfs/fastdfs_tracker #存放路徑

    b. tracker_server=192.168.1.14:22122 #tracker伺服器IP位址和端口号

    二、 模拟上傳檔案,執行如下指令: /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /opt/1.txt(上傳檔案的目錄)

    然後你就可以在/opt/fastdfs/fastdfs_storage_data/data/M00/00/00下就可以看見你上傳的檔案了。

給storage安裝nginx并配置

安裝nginx的目的主要是給fastdfs提供http通路的服務,現在的fastdfs不安裝Nginx是通路不了的,必須安裝Nginx。

将nginx-1.7.8.tar.gz和fastdfs-nginx-module_v1.16.tar.gz上傳到/home/install目錄下.

1. 解壓nginx-1.8.0.tar.gz和fastdfs-nginx-module_v1.16.tar.gz

tar zxvf fastdfs-nginx-module_v1.16.tar.gz

tar zxvf nginx-1.7.8.tar.gz

2. 建立兩個檔案夾作為Nginx的安裝路徑

mkdir /opt/fastdfs/nginx

mkdir /opt/fastdfs/nginx2

說明:storage和tracker都需要安裝Nginx,是以需要建立兩個Nginx檔案夾

3. 為Nginx添加fastdfs-nginx-module子產品

cd nginx-1.7.8/

./configure –prefix=/opt/fastdfs/nginx –add-module=/home/install/fastdfs-nginx-module/src

若執行不成功,需要執行

yum -y install pcre-devel

yum install openssl來安裝一些Nginx的準備檔案

有可能會出現本機沒有zlib庫,需要安裝。安裝zlib庫需要下載下傳zlib檔案的,具體安裝zlib的連結如下:

zlib在centos下安裝

相關的環境安裝好之後,在執行

make

make install

make 時如果報錯,執行如下指令:

ln -sv /usr/include/fastcommon /usr/local/include/fastcommon

ln -sv /usr/include/fastdfs /usr/local/include/fastdfs

然後在執行make和make install,這個時候執行的非常快。安裝成功之後

拷貝相關檔案到/etc/fdfs目錄下:

cp /home/install/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/

cp /home/install/FastDFS/conf/mime.types /etc/fdfs/

cp /home/install/FastDFS/conf/http.conf /etc/fdfs/

cp /home/install/FastDFS/conf/anti-steal.jpg /etc/fdfs/

以上命名一定要注意目錄之間的空格,如果報錯可能就是你少了空格,或者中間多了空格。

4. 修改nginx.conf的配置(這裡指的是在/opt/fastdfs/nginx下的配置檔案):

user root;

listen 80;

server_name 192.168.1.14;

location ~/group[1-3]/M00 {

root /opt/fastdfs/fastdfs_storage_data/data;

ngx_fastdfs_module;:

}

5. 修改/etc/fdfs/mod_fastdfs.conf的配置:

base_path=/opt/fastdfs/fastdfs_storage_info #儲存日志目錄

tracker_server=192.168.1.14:22122 #tracker 伺服器的 IP 位址以及端口号

url_have_group_name = true #檔案 url 中是否有 group 名

store_path0=/opt/fastdfs/fastdfs_storage_data # 存儲路徑

http.need_find_content_type=true # 從檔案擴充名查找檔案類型 (nginx 時 為true)

group_count = 3 #設定組的個數,事實上這次隻使用了group1

在檔案末添加如下内容:

[group1]

group_name=group1

storage_server_port=23000

store_path_count=1

store_path0=/opt/fastdfs/fastdfs_storage_data

[group2]

group_name=group2

storage_server_port=23000

store_path_count=1

store_path0=/opt/fastdfs/fastdfs_storage_data

[group3]

group_name=group3

storage_server_port=23000

store_path_count=1

store_path0=/opt/fastdfs/fastdfs_storage_data

建立 M00 至存儲目錄的符号連接配接:ln -s /opt/fastdfs/fastdfs_storage_data/data /opt/fastdfs/fastdfs_storage_data/data/M00

啟動nginx:

/opt/fastdfs/nginx/sbin/nginx

給tracker安裝nginx并配置

安裝路徑為:/opt/fastdfs/nginx2

cd nginx-1.7.8/

./configure –prefix=/opt/fastdfs/nginx2 –add-module=/home/install/fastdfs-nginx-module/src

make

make install

nginx.conf配置如下:

user root;

upstream fdfs_group1 {

server 192.168.1.14:22122;

}

server {

listen 81;

server_name 192.168.1.14;

location /group1/M00 {

proxy_pass http://fdfs_group1;

}

}

啟動nginx:

/opt/fastdfs/nginx2/sbin/nginx

配置用戶端檔案:

cd /etc/fdfs/

vim client.conf

修改内容如下:

http.tracker_server_port=6666 # tracker 伺服器的 http 端口号,必須和tracker的設定

http.server_port=6666對應起來

測試通路:192.168.1.14/group1/M00/00/00/檔案全名

結語

梳理了一下安裝步驟,把自己的安裝步驟記錄下來了,fastdfs安裝成功了,那麼接下來就是上傳和下載下傳圖檔了。下一篇部落格将會把fastdfs和咱們的QiYuAdmin項目裡面的頭像的上傳給結合起來。

繼續閱讀